diff options
author | Kevin Cox <kevincox@kevincox.ca> | 2015-12-14 11:14:53 -0500 |
---|---|---|
committer | Kevin Cox <kevincox@kevincox.ca> | 2015-12-14 11:14:53 -0500 |
commit | 2f26b82411ea93349d375ea3b5d833b04a455972 (patch) | |
tree | e1eb44e4b1008fb6c7ccb108c21d2434f6379906 /pkgs/build-support | |
parent | 1ae8f0f0f73879da27b4440371383a9376a2932a (diff) | |
download | nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar.gz nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar.bz2 nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar.lz nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar.xz nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.tar.zst nixpkgs-2f26b82411ea93349d375ea3b5d833b04a455972.zip |
Remove PATH assumption from fhs-userenv.
Previously is was assumed that bash was in the path when calling the environment setup script. This changes all of the references of bash to be absolute paths so that the user doesn't have to worry about the environment they call it with.
Diffstat (limited to 'pkgs/build-support')
-rw-r--r-- | pkgs/build-support/build-fhs-userenv/default.nix | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/pkgs/build-support/build-fhs-userenv/default.nix b/pkgs/build-support/build-fhs-userenv/default.nix index aa95080ac52..54ce3e76897 100644 --- a/pkgs/build-support/build-fhs-userenv/default.nix +++ b/pkgs/build-support/build-fhs-userenv/default.nix @@ -1,8 +1,9 @@ -{ runCommand, lib, writeText, writeScriptBin, stdenv, ruby } : -{ env, runScript ? "bash", extraBindMounts ? [], extraInstallCommands ? "" } : +{ runCommand, lib, writeText, writeScriptBin, stdenv, bash, ruby } : +{ env, runScript ? "${bash}/bin/bash", extraBindMounts ? [], extraInstallCommands ? "" } : let name = env.pname; + bash' = "${bash}/bin/bash"; # Sandboxing script chroot-user = writeScriptBin "chroot-user" '' @@ -29,7 +30,7 @@ in runCommand name { runCommand "${name}-shell-env" { shellHook = '' export CHROOTENV_EXTRA_BINDS="${lib.concatStringsSep ":" extraBindMounts}:$CHROOTENV_EXTRA_BINDS" - exec ${chroot-user}/bin/chroot-user ${env} bash -l ${init "bash"} "$(pwd)" + exec ${chroot-user}/bin/chroot-user ${env} ${bash'} -l ${init bash'} "$(pwd)" ''; } '' echo >&2 "" @@ -42,7 +43,7 @@ in runCommand name { cat <<EOF >$out/bin/${name} #! ${stdenv.shell} export CHROOTENV_EXTRA_BINDS="${lib.concatStringsSep ":" extraBindMounts}:\$CHROOTENV_EXTRA_BINDS" - exec ${chroot-user}/bin/chroot-user ${env} bash -l ${init runScript} "\$(pwd)" "\$@" + exec ${chroot-user}/bin/chroot-user ${env} ${bash'} -l ${init runScript} "\$(pwd)" "\$@" EOF chmod +x $out/bin/${name} ${extraInstallCommands} |