On 6/20/20 2:42 PM, Xi Ruoyao via lfs-dev wrote:
The discussion with Frans de Boer in lfs-support shown that the environment
variables from host can catch us completely off guard.  Though in his case the
problem is that he forgot to create /home/lfs/.bash_profile, normally
/etc/bash.bashrc would be more dangerous (the book has no consideration of this
file), and used by many distros.

So if there is no objection I'll commit the change we've discussed in last Nov.:

/home/lfs/.bash_profile:

     exec env -i ENV=$HOME/.lfs_bashrc \
                 HOME=$HOME            \
                 TERM=$TERM            \
                 PS1='\u:\w\$ '        \
                 /bin/bash --posix

/home/lfs/.lfs_bashrc:

     set +o posix
     set +h
     umask 022
     LFS=/mnt/lfs
     LC_ALL=POSIX
     LFS_TGT=$(uname -m)-lfs-linux-gnu
     PATH=/usr/bin
     if [ ! -L /bin ]; then PATH=/bin:$PATH; fi
     PATH=$LFS/tools/bin:$PATH
     export LFS LC_ALL LFS_TGT PATH

So the --posix in .bash_profile allows the use of
ENV=$HOME/.lfs_bashrc and then the first line in .lfs_bashrc turns posix mode off?

At a minimum this looks like a hack that needs a fair amount of explanation.

The reason for this is because a user forgot to create .bash_profile? In that case the above doesn't work.

From https://sources.debian.org/src/bash/5.0-6/debian/README/

5. What is /etc/bash.bashrc? It doesn't seem to be documented.

   The Debian version of bash is compiled with a special option
   (-DSYS_BASHRC) that makes bash read /etc/bash.bashrc before ~/.bashrc
   for interactive non-login shells. So, on Debian systems,
   /etc/bash.bashrc is to ~/.bashrc as /etc/profile is to
   ~/.bash_profile.

When I look at a debian system's /etc/bash.bashrc, I don't see what would affect what we have now. What was the reported problem?

We've been using the current structure for a long time without a reported issue. What's new?

  -- Bruce
--
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to