system: Source /etc/environment before $HOME/.guix-profile/etc/profile.

* gnu/system.scm (operating-system-etc-service) <profile>: Move sourcing
of /etc/environment before that of $HOME/.guix-profile/etc/profile.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Carlos Sánchez de La Lama 2016-07-27 14:27:00 +02:00 committed by Ludovic Courtès
parent 9712ef8d42
commit cad7e6abaf
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5

View File

@ -408,6 +408,17 @@ GUIX_PROFILE=/run/current-system/profile \\
# Prepend setuid programs.
export PATH=/run/setuid-programs:$PATH
# Since 'lshd' does not use pam_env, /etc/environment must be explicitly
# loaded when someone logs in via SSH. See <http://bugs.gnu.org/22175>.
# We need 'PATH' to be defined here, for 'cat' and 'cut'. Do this before
# reading the user's 'etc/profile' to allow variables to be overridden.
if [ -f /etc/environment -a -n \"$SSH_CLIENT\" \\
-a -z \"$LINUX_MODULE_DIRECTORY\" ]
then
. /etc/environment
export `cat /etc/environment | cut -d= -f1`
fi
if [ -f \"$HOME/.guix-profile/etc/profile\" ]
then
# Load the user profile's settings.
@ -419,16 +430,6 @@ else
export PATH=\"$HOME/.guix-profile/bin:$PATH\"
fi
# Since 'lshd' does not use pam_env, /etc/environment must be explicitly
# loaded when someone logs in via SSH. See <http://bugs.gnu.org/22175>.
# We need 'PATH' to be defined here, for 'cat' and 'cut'.
if [ -f /etc/environment -a -n \"$SSH_CLIENT\" \\
-a -z \"$LINUX_MODULE_DIRECTORY\" ]
then
. /etc/environment
export `cat /etc/environment | cut -d= -f1`
fi
# Set the umask, notably for users logging in via 'lsh'.
# See <http://bugs.gnu.org/22650>.
umask 022