forked from mirrors/nixpkgs
Merge pull request #11710 from kevincox/userenv-no-path
Remove PATH assumption from fhs-userenv.
This commit is contained in:
commit
8fb2141a69
|
@ -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}
|
||||
|
|
Loading…
Reference in a new issue