diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 5b001cea2327..a489871452c4 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -183,6 +183,20 @@ lib.makeExtensible ( # depend on the components they need in `nixComponents_2_26`. nix_2_26 = addTests "nix_2_26" self.nixComponents_2_26.nix-everything; + nixComponents_2_27 = nixDependencies.callPackage ./modular/packages.nix { + version = "2.27.1"; + inherit (self.nix_2_24.meta) maintainers; + otherSplices = generateSplicesForNixComponents "nixComponents_2_26"; + src = fetchFromGitHub { + owner = "NixOS"; + repo = "nix"; + rev = "9cb662df7442a1e2c4600fb8ecb2ad613ebc5a95"; + hash = "sha256-rBPulEBpn4IiqkPsetuh7BRzT2iGCzZYnogTAsbrvhU="; + }; + }; + + nix_2_27 = addTests "nix_2_27" self.nixComponents_2_27.nix-everything; + latest = self.nix_2_26; # The minimum Nix version supported by Nixpkgs diff --git a/pkgs/tools/package-management/nix/modular/src/libfetchers-tests/package.nix b/pkgs/tools/package-management/nix/modular/src/libfetchers-tests/package.nix index 1e379fc5ade2..ae5b4e4d87d0 100644 --- a/pkgs/tools/package-management/nix/modular/src/libfetchers-tests/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libfetchers-tests/package.nix @@ -7,6 +7,7 @@ nix-fetchers, nix-store-test-support, + libgit2, rapidcheck, gtest, runCommand, @@ -42,6 +43,8 @@ mkMesonExecutable (finalAttrs: { nix-store-test-support rapidcheck gtest + ] ++ lib.optionals (lib.versionAtLeast version "2.27") [ + libgit2 ]; mesonFlags = [ diff --git a/pkgs/tools/package-management/nix/modular/src/libstore/package.nix b/pkgs/tools/package-management/nix/modular/src/libstore/package.nix index 31867d331b92..bba96e07f312 100644 --- a/pkgs/tools/package-management/nix/modular/src/libstore/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libstore/package.nix @@ -78,7 +78,7 @@ mkMesonLibrary (finalAttrs: { (lib.mesonOption "sandbox-shell" "${busybox-sandbox-shell}/bin/busybox") ]; - env = { + env = lib.optionalAttrs (!lib.versionAtLeast version "2.27") { # Needed for Meson to find Boost. # https://github.com/NixOS/nixpkgs/issues/86131. BOOST_INCLUDEDIR = "${lib.getDev boost}/include"; diff --git a/pkgs/tools/package-management/nix/modular/src/libutil/package.nix b/pkgs/tools/package-management/nix/modular/src/libutil/package.nix index 47dcb54a26f8..d9b56a7d1ceb 100644 --- a/pkgs/tools/package-management/nix/modular/src/libutil/package.nix +++ b/pkgs/tools/package-management/nix/modular/src/libutil/package.nix @@ -6,6 +6,7 @@ boost, brotli, libarchive, + libblake3, libcpuid, libsodium, nlohmann_json, @@ -42,6 +43,11 @@ mkMesonLibrary (finalAttrs: { buildInputs = [ brotli + ] + ++ lib.optional (lib.versionAtLeast version "2.27") [ + libblake3 + ] + ++ [ libsodium openssl ] ++ lib.optional stdenv.hostPlatform.isx86_64 libcpuid; @@ -56,7 +62,7 @@ mkMesonLibrary (finalAttrs: { (lib.mesonEnable "cpuid" stdenv.hostPlatform.isx86_64) ]; - env = { + env = lib.optionalAttrs (!lib.versionAtLeast version "2.27") { # Needed for Meson to find Boost. # https://github.com/NixOS/nixpkgs/issues/86131. BOOST_INCLUDEDIR = "${lib.getDev boost}/include";