summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pkgs/misc/my-env/default.nix14
1 files changed, 11 insertions, 3 deletions
diff --git a/pkgs/misc/my-env/default.nix b/pkgs/misc/my-env/default.nix
index dc729ec557a5..990606668fe8 100644
--- a/pkgs/misc/my-env/default.nix
+++ b/pkgs/misc/my-env/default.nix
@@ -56,17 +56,24 @@
and show you a shell with a prefixed prompt.
*/
-{ mkDerivation, substituteAll, pkgs } : { stdenv ? pkgs.stdenv, name, buildInputs ? [], cTags ? [], extraCmds ? "", shell ? "${pkgs.bashInteractive}/bin/bash"} :
+{ mkDerivation, substituteAll, pkgs }:
+ { stdenv ? pkgs.stdenv, name, buildInputs ? []
+ , propagatedBuildInputs ? [], gcc ? stdenv.gcc, cTags ? [], extraCmds ? ""
+ , shell ? "${pkgs.bashInteractive}/bin/bash"}:
+
mkDerivation {
# The setup.sh script from stdenv will expect the native build inputs in
# the buildNativeInputs environment variable.
- buildNativeInputs = [ ] ++ buildInputs ;
+ buildNativeInputs = [ ] ++ buildInputs;
+ # Trick to bypass the stdenv usual change of propagatedBuildInputs => propagatedNativeBuildInputs
+ propagatedBuildInputs2 = propagatedBuildInputs;
+
name = "env-${name}";
phases = [ "buildPhase" "fixupPhase" ];
setupNew = substituteAll {
src = ../../stdenv/generic/setup.sh;
initialPath= (import ../../stdenv/common-path.nix) { inherit pkgs; };
- gcc = stdenv.gcc;
+ inherit gcc;
};
buildPhase = ''
@@ -81,6 +88,7 @@ mkDerivation {
-i "$s"
cat >> "$out/dev-envs/''${name/env-/}" << EOF
buildNativeInputs="$buildNativeInputs"
+ propagatedBuildInputs="$propagatedBuildInputs2"
# the setup-new script wants to write some data to a temp file.. so just let it do that and tidy up afterwards
tmp="\$("${pkgs.coreutils}/bin/mktemp" -d)"
NIX_BUILD_TOP="\$tmp"