From 50500f7cf0786cccb8211ddac75a56c3c82859f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 1 Jul 2015 14:01:02 +0200 Subject: doc: Mention .bashrc vs. .bash_profile for 'guix environment'. * doc/guix.texi (Invoking guix environment): Add footnote about .bashrc vs. .bash_profile. --- doc/guix.texi | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 119c2d9c98..a35ea2fd9d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4136,7 +4136,15 @@ version of the environment that @command{guix environment} was run in. It contains the necessary search paths for building the given package added to the existing environment variables. To create a ``pure'' environment in which the original environment variables have been unset, -use the @code{--pure} option. +use the @code{--pure} option@footnote{Users sometimes wrongfully augment +environment variables such as @code{PATH} in their @file{~/.bashrc} +file. As a consequence, when @code{guix environment} launches it, Bash +may read @file{~/.bashrc}, thereby introducing ``impurities'' in these +environment variables. It is an error to define such environment +variables in @file{.bashrc}; instead, they should be defined in +@file{.bash_profile}, which is sourced only by log-in shells. +@xref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}, for +details on Bash start-up files.}. Additionally, more than one package may be specified, in which case the union of the inputs for the given packages are used. For example, the -- cgit v1.2.3