diff options
author | sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> | 2021-03-10 19:43:17 +0100 |
---|---|---|
committer | Profpatsch <mail@profpatsch.de> | 2021-03-18 19:56:40 +0100 |
commit | b398d00903af1eca6b4e298225e85ecd118a80dd (patch) | |
tree | 29af5237d26cf0ae5b0b96d2c04ab1bd41ef03db /pkgs/build-support/trivial-builders.nix | |
parent | 9a48ca802731e542787b487ff559decbc0ea696e (diff) |
trivial-builders: merge passAsFile with env in runCommand'
Previously it was awkward to use the runCommand-variants with passAsFile as a double definition of passAsFile would potentially break runCommand: passAsFile would overwrite the previous definition, defeating the purpose of setting it in runCommand in the first place. This is now fixed by concatenating the [ "buildCommand" ] list with one the one from env, if present. Adjust buildEnv where passAsFile = null; was passed in some cases, breaking evaluation since it'd evaluate to [ "buildCommand" ] ++ null.
Diffstat (limited to 'pkgs/build-support/trivial-builders.nix')
-rw-r--r-- | pkgs/build-support/trivial-builders.nix | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix index eab5366e1839e..8759a67f4ea11 100644 --- a/pkgs/build-support/trivial-builders.nix +++ b/pkgs/build-support/trivial-builders.nix @@ -6,13 +6,14 @@ let stdenv.mkDerivation ({ name = lib.strings.sanitizeDerivationName name; inherit buildCommand; - passAsFile = [ "buildCommand" ]; + passAsFile = [ "buildCommand" ] + ++ (env.passAsFile or []); } // (lib.optionalAttrs runLocal { preferLocalBuild = true; allowSubstitutes = false; }) - // env); + // builtins.removeAttrs env [ "passAsFile" ]); in |