mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-06 06:14:47 +00:00
Fixed Bash startup files to handle HOME and PS1.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3132 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
6213d4cc48
commit
07ecae2532
@ -45,6 +45,9 @@
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>December 11th, 2003 [greg]: Chapter 5: - Setting up the
|
||||
environment: Fixed Bash startup files to handle HOME and PS1.</para></listitem>
|
||||
|
||||
<listitem><para>December 3rd, 2003 [greg]: Upgraded to Gettext-0.13,
|
||||
Man-pages-1.64, Linux-2.4.23 and Psmisc-21.4.</para></listitem>
|
||||
|
||||
|
@ -352,17 +352,18 @@ startup files for the Bash shell. While logged in as user
|
||||
<filename>.bash_profile</filename>:</para>
|
||||
|
||||
<screen><userinput>cat > ~/.bash_profile << "EOF"</userinput>
|
||||
exec env -i TERM=$TERM /bin/bash
|
||||
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
|
||||
<userinput>EOF</userinput></screen>
|
||||
|
||||
<para>The <userinput>exec env -i TERM=$TERM /bin/bash</userinput> command
|
||||
creates a new instance of Bash with a completely empty environment, except for
|
||||
the TERM variable. This is needed to ensure that no unwanted and potentially
|
||||
hazardous environment variables from the host system leak into our build
|
||||
environment. The technique used here is a little non-standard but it achieves
|
||||
the goal of enforcing a clean environment. By way of explanation, the initial
|
||||
shell is a <emphasis>login</emphasis> shell which reads the
|
||||
<filename>.bash_profile</filename>. The new shell instance is a
|
||||
<para>The
|
||||
<userinput>exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash</userinput>
|
||||
command creates a new instance of Bash with a completely empty environment,
|
||||
except for the HOME, TERM and PS1 variables. This is needed to ensure that no
|
||||
unwanted and potentially hazardous environment variables from the host system
|
||||
leak into our build environment. The technique used here is a little
|
||||
non-standard but it achieves the goal of enforcing a clean environment. By way
|
||||
of explanation, the initial shell is a <emphasis>login</emphasis> shell which
|
||||
reads the <filename>.bash_profile</filename>. The new shell instance is a
|
||||
<emphasis>non-login</emphasis> shell which reads the
|
||||
<filename>.bashrc</filename> (created next).</para>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user