From cf39adafac5ed1f5adc112ede325d6fcbfd7d2b7 Mon Sep 17 00:00:00 2001 From: Austin Seipp Date: Thu, 10 Aug 2023 21:25:48 -0500 Subject: [PATCH] nix: use a more detailed version for NIX_JJ_GIT_VERSION Summary: For Ilya's use. Signed-off-by: Austin Seipp Change-Id: I6f2c37ad20c5c16d2ff39ae9d746ded3 --- flake.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 49dcd9056..59b7bff6b 100644 --- a/flake.nix +++ b/flake.nix @@ -18,6 +18,13 @@ } // (flake-utils.lib.eachDefaultSystem (system: let + # NOTE (aseipp): dirtyRev and dirtyShortRev are part of Nix 2.17.x, so + # they're pretty recent and can't be relied on everywhere just yet. + gitRev = self.dirtyRev or self.rev or "dirty"; + gitShortRev = self.dirtyShortRev or self.shortRev or "dirty"; + gitDate = self.lastModifiedDate or self.lastModified or "19700101"; + buildVersion = "${builtins.substring 0 8 gitDate}|${gitRev}"; + pkgs = import nixpkgs { inherit system; overlays = [ @@ -47,7 +54,7 @@ packages = { jujutsu = ourRustPlatform.buildRustPackage rec { pname = "jujutsu"; - version = "unstable-${self.shortRev or "dirty"}"; + version = "unstable-${gitShortRev}"; buildNoDefaultFeatures = true; buildFeatures = [ "packaging" ]; cargoBuildFlags = ["--bin" "jj"]; # don't build and install the fake editors @@ -73,10 +80,10 @@ darwin.apple_sdk.frameworks.Security darwin.apple_sdk.frameworks.SystemConfiguration libiconv - ]; + ]; ZSTD_SYS_USE_PKG_CONFIG = "1"; LIBSSH2_SYS_USE_PKG_CONFIG = "1"; - NIX_JJ_GIT_HASH = self.rev or ""; + NIX_JJ_GIT_HASH = buildVersion; CARGO_INCREMENTAL = "0"; postInstall = '' $out/bin/jj util mangen > ./jj.1 @@ -134,6 +141,7 @@ export RUST_BACKTRACE=1 export ZSTD_SYS_USE_PKG_CONFIG=1 export LIBSSH2_SYS_USE_PKG_CONFIG=1 + export NIX_JJ_GIT_HASH="${buildVersion}" ''; }; }));