diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2024-04-15 12:01:00 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-15 12:01:00 +0000 |
commit | 4908c48bf52899fbfed3b383a69227c7b01b6078 (patch) | |
tree | 069e09cbc323257be3f52a3b05c36eff88df508a /pkgs/stdenv/generic | |
parent | 0c860bb494056fd671345db29bd941c6b3e21a6d (diff) | |
parent | 26594c44f5811a0e924b808b16e01dcf14050a6c (diff) |
Merge master into staging-next
Diffstat (limited to 'pkgs/stdenv/generic')
-rw-r--r-- | pkgs/stdenv/generic/make-derivation.nix | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix index 08cded6642547..1214d01013838 100644 --- a/pkgs/stdenv/generic/make-derivation.nix +++ b/pkgs/stdenv/generic/make-derivation.nix @@ -574,6 +574,12 @@ let "The βenvβ attribute set can only contain derivation, string, boolean or integer attributes. The β${n}β attribute is of type ${builtins.typeOf v}."; v) env; + # Fixed-output derivations may not reference other paths, which means that + # for a fixed-output derivation, the corresponding inputDerivation should + # *not* be fixed-output. To achieve this we simply delete the attributes that + # would make it fixed-output. + deleteFixedOutputRelatedAttrs = lib.flip builtins.removeAttrs [ "outputHashAlgo" "outputHash" "outputHashMode" ]; + in extendDerivation @@ -584,7 +590,7 @@ extendDerivation # This allows easy building and distributing of all derivations # needed to enter a nix-shell with # nix-build shell.nix -A inputDerivation - inputDerivation = derivation (derivationArg // { + inputDerivation = derivation (deleteFixedOutputRelatedAttrs derivationArg // { # Add a name in case the original drv didn't have one name = derivationArg.name or "inputDerivation"; # This always only has one output |