From 8cd17b40df9c1ebbd23e75f607646ee628ab35bf Mon Sep 17 00:00:00 2001 From: Thomas Mühlbacher Date: Fri, 31 May 2024 14:44:15 +0200 Subject: build(nix): make package version more accurate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Would still be better to have commit rev included if applicable/available but still better than before. Signed-off-by: Thomas Mühlbacher --- flake.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 3cd44ec8..6c379313 100644 --- a/flake.nix +++ b/flake.nix @@ -57,21 +57,29 @@ ... }: let + inherit (builtins) readFile split; + inherit (lib.lists) findFirst; + inherit (lib.strings) hasPrefix removePrefix substring; + cargoToml = builtins.fromTOML (builtins.readFile ./Cargo.toml); rustfmtToml = builtins.fromTOML (builtins.readFile ./rustfmt.toml); craneLib = crane.mkLib pkgs; - commit = lib.strings.substring 0 7 (builtins.readFile ./.bcachefs_revision); + libbcachefsCommit = substring 0 7 (builtins.readFile ./.bcachefs_revision); + makefileVersion = removePrefix "VERSION=" ( + findFirst (line: hasPrefix "VERSION=" line) "VERSION=0.0.0" (split "\n" (readFile ./Makefile)) + ); + version = "${makefileVersion}+git-${libbcachefsCommit}"; commonArgs = { - version = "git-${commit}"; + inherit version; src = self; makeFlags = [ "DESTDIR=${placeholder "out"}" "PREFIX=" - "VERSION=${commit}" + "VERSION=${version}" ]; dontStrip = true; @@ -116,7 +124,7 @@ installCheckPhase = '' runHook preInstallCheck - test "$($out/bin/bcachefs version)" = "${commit}" + test "$($out/bin/bcachefs version)" = "${version}" runHook postInstallCheck ''; -- cgit v1.2.3