{
  self,
  ...
}:
let
  flakeRev = if (self ? shortRev) then self.shortRev else "dirty";
  flakeMod = if (self ? lastModifiedDate) then self.lastModifiedDate else "";
  flakeRevCount = if (self ? revCount) then builtins.toString self.revCount else "";
  tagGit = "rev:" + flakeRev + ":" + flakeRevCount;
  tagMod = "mod:" + flakeMod;
  label = flakeRevCount + "-" + flakeRev;
in
{
  system.nixos.tags = [
    tagGit
    tagMod
  ];
  system.nixos.label = label;
}