summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorNikolay Amiantov <ab@fmap.me>2016-01-23 15:44:52 +0300
committerNikolay Amiantov <ab@fmap.me>2016-01-23 15:55:53 +0300
commitf18317885a51ec613d05762c04a7e5cd745d5768 (patch)
treedbff21021288b3c4c20e6ec88c5a32cbc9d20f1e /pkgs/build-support
parent29785c5b7a6285bccf13ae0e0895c79b1497265e (diff)
downloadnixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar.gz
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar.bz2
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar.lz
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar.xz
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.tar.zst
nixlib-f18317885a51ec613d05762c04a7e5cd745d5768.zip
fhs-userenv: don't use bash login mode
Login mode can cause hidden problems, e.g. #12406. Generally we don't want
to read user's .bash_profile when we don't start an interactive shell inside
a chroot.
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/build-fhs-userenv/default.nix4
1 files changed, 3 insertions, 1 deletions
diff --git a/pkgs/build-support/build-fhs-userenv/default.nix b/pkgs/build-support/build-fhs-userenv/default.nix
index 5db0d98b79a8..4177846c4336 100644
--- a/pkgs/build-support/build-fhs-userenv/default.nix
+++ b/pkgs/build-support/build-fhs-userenv/default.nix
@@ -12,6 +12,8 @@ let
   '';
 
   init = run: writeText "${name}-init" ''
+    source /etc/profile
+
     # Make /tmp directory
     mkdir -m 1777 /tmp
 
@@ -44,7 +46,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'} ${init runScript} "\$(pwd)" "\$@"
   EOF
   chmod +x $out/bin/${name}
   ${extraInstallCommands}