diff options
author | obadz <obadz-git@obadz.com> | 2016-05-24 23:34:28 +0100 |
---|---|---|
committer | obadz <obadz-git@obadz.com> | 2016-05-24 23:34:28 +0100 |
commit | 47950b53538471c1aff04b00790fadded7eca207 (patch) | |
tree | f9a3829ab9eb21f8b5f3922957445a2ed0b72bcb /nixos | |
parent | c726773f26373381331d32ed3521290c288438fc (diff) |
modules/misc/version.nix: populate nixosRevision based on <nixpkgs/.git> when possible (#15624)
Example: $ nixos-option system.nixosLabel Value: "16.09.git.4643ca1"
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/misc/version.nix | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix index f12ecc1b88ec4..fd7cadf76cc18 100644 --- a/nixos/modules/misc/version.nix +++ b/nixos/modules/misc/version.nix @@ -5,9 +5,11 @@ with lib; let cfg = config.system; - releaseFile = "${toString pkgs.path}/.version"; - suffixFile = "${toString pkgs.path}/.version-suffix"; + releaseFile = "${toString pkgs.path}/.version"; + suffixFile = "${toString pkgs.path}/.version-suffix"; revisionFile = "${toString pkgs.path}/.git-revision"; + gitRepo = "${toString pkgs.path}/.git"; + gitCommitId = lib.substring 0 7 (commitIdFromGitRepo gitRepo); in { @@ -102,6 +104,8 @@ in # changing them would not rebuild the manual nixosLabel = mkDefault (maybeEnv "NIXOS_LABEL" cfg.nixosVersion); nixosVersion = mkDefault (maybeEnv "NIXOS_VERSION" (cfg.nixosRelease + cfg.nixosVersionSuffix)); + nixosRevision = mkIf (pathExists gitRepo) (mkDefault gitCommitId); + nixosVersionSuffix = mkIf (pathExists gitRepo) (mkDefault (".git." + gitCommitId)); # Note: code names must only increase in alphabetical order. nixosCodeName = "Flounder"; |