diff --git a/pkgs/build-support/trivial-builders/default.nix b/pkgs/build-support/trivial-builders/default.nix index 2174846b986c..b7aa72df8ba8 100644 --- a/pkgs/build-support/trivial-builders/default.nix +++ b/pkgs/build-support/trivial-builders/default.nix @@ -887,7 +887,7 @@ rec { # Docs in doc/build-helpers/fetchers.chapter.md # See https://nixos.org/manual/nixpkgs/unstable/#requirefile requireFile = lib.extendMkDerivation { - constructDrv = stdenv.mkDerivation; + constructDrv = stdenvNoCC.mkDerivation; excludeDrvArgNames = [ "hash" diff --git a/pkgs/build-support/trivial-builders/test/default.nix b/pkgs/build-support/trivial-builders/test/default.nix index 836a29342168..e83a41a1cc7b 100644 --- a/pkgs/build-support/trivial-builders/test/default.nix +++ b/pkgs/build-support/trivial-builders/test/default.nix @@ -25,6 +25,7 @@ recurseIntoAttrs { symlinkJoin = recurseIntoAttrs (callPackage ./symlink-join.nix { }); overriding = callPackage ../test-overriding.nix { }; inherit references; + requireFile = callPackage ./requireFile.nix { }; writeCBin = callPackage ./writeCBin.nix { }; writeClosure-union = callPackage ./writeClosure-union.nix { inherit (references) samples; diff --git a/pkgs/build-support/trivial-builders/test/requireFile.nix b/pkgs/build-support/trivial-builders/test/requireFile.nix new file mode 100644 index 000000000000..da06e73646d1 --- /dev/null +++ b/pkgs/build-support/trivial-builders/test/requireFile.nix @@ -0,0 +1,22 @@ +{ + pkgsStatic, + lib, + requireFile, + emptyFile, +}: +let + name = "this-is-a-test"; + requireFileTest = + requireFile: + requireFile { + inherit name; + url = "this-is-a-test"; + hash = lib.fakeHash; + }; + requireFile-native = requireFileTest requireFile; + requireFile-static = requireFileTest pkgsStatic.requireFile; +in +assert lib.assertMsg ( + requireFile-native.name == name && requireFile-static.name == name +) "requireFile derivation name must be the same across different package sets"; +emptyFile