diff --git a/pkgs/misc/my-env/default.nix b/pkgs/misc/my-env/default.nix index 76080d8e114a..8485346e67b9 100644 --- a/pkgs/misc/my-env/default.nix +++ b/pkgs/misc/my-env/default.nix @@ -45,7 +45,7 @@ mkDerivation { # the buildNativeInputs environment variable. buildNativeInputs = [ ] ++ buildInputs ; name = "env-${name}"; - phases = [ "buildPhase" ]; + phases = [ "buildPhase" "fixupPhase" ]; setupNew = substituteAll { src = ../../stdenv/generic/setup.sh; preHook=""; @@ -56,7 +56,7 @@ mkDerivation { buildPhase = '' set -x - mkdir -p "$out/dev-envs" "$out/nix-support" + mkdir -p "$out/dev-envs" "$out/nix-support" "$out/bin" s="$out/nix-support/setup-new-modified" cp "$setupNew" "$s" # shut some warning up.., do not use set -e @@ -111,6 +111,12 @@ mkDerivation { export PATH echo $name loaded EOF - exit 0 + + cat >> "$out/bin/load-''${name/env-/}-env" << EOF + #!/bin/sh + + source "$out/dev-envs/''${name/env-/}" + EOF + chmod +x "$out/bin/load-''${name/env-/}-env" ''; }