summaryrefslogtreecommitdiff
path: root/gnu/home
diff options
context:
space:
mode:
authorLiam Hupfer <[email protected]>2025-02-05 22:24:58 -0600
committerLudovic Courtès <[email protected]>2025-02-21 15:27:10 +0100
commit50a2d73eac1577e35b526d3fc91423b97e581aef (patch)
tree403644afdf94f76aa8d04fe4a719183ab9c6beda /gnu/home
parent890fe50d9b3b780f30e802cd2b4d9f8334151057 (diff)
home: services: Unset variables after profile init.
While they aren’t exported, these temporary variables show up in the resulting shell, cluttering tab completion and declare -p. * gnu/home/services.scm (environment-variables->setup-environment-script): Unset shell variables. * gnu/home/services/shells.scm (add-shell-profile-file): Likewise. Change-Id: Ibb634849d9f38c1a9a44c0d493e92231364de958 Signed-off-by: Ludovic Courtès <[email protected]>
Diffstat (limited to 'gnu/home')
-rw-r--r--gnu/home/services.scm6
-rw-r--r--gnu/home/services/shells.scm3
2 files changed, 7 insertions, 2 deletions
diff --git a/gnu/home/services.scm b/gnu/home/services.scm
index aa7beeb462..453336c959 100644
--- a/gnu/home/services.scm
+++ b/gnu/home/services.scm
@@ -275,7 +275,8 @@ exported."
(lambda (port)
(set-port-encoding! port "UTF-8")
(display "\
-HOME_ENVIRONMENT=$HOME/.guix-home
+# NOTE: Set HOME_ENVIRONMENT before sourcing (home-shell-profile-service-type ensures
+# ~/.profile does)
GUIX_PROFILE=\"$HOME_ENVIRONMENT/profile\"
PROFILE_FILE=\"$GUIX_PROFILE/etc/profile\"
[ -f $PROFILE_FILE ] && . $PROFILE_FILE
@@ -301,6 +302,9 @@ case $XCURSOR_PATH in
*) export XCURSOR_PATH=$GUIX_PROFILE/share/icons:$XCURSOR_PATH ;;
esac
+# Keep the shell environment clean.
+unset GUIX_PROFILE PROFILE_FILE
+
" port)
(display
#$(environment-variable-shell-definitions vars)
diff --git a/gnu/home/services/shells.scm b/gnu/home/services/shells.scm
index ee6b09f17c..bab5730c3d 100644
--- a/gnu/home/services/shells.scm
+++ b/gnu/home/services/shells.scm
@@ -89,7 +89,8 @@ really know what you do."))
"\
HOME_ENVIRONMENT=$HOME/.guix-home
. $HOME_ENVIRONMENT/setup-environment
-$HOME_ENVIRONMENT/on-first-login\n"
+$HOME_ENVIRONMENT/on-first-login
+unset HOME_ENVIRONMENT\n"
(serialize-configuration
config
(filter-configuration-fields