Brieuc Desoutter (HE12026-05-14):
> TL/DR: On Trixie with Gnome, right after login with…
> - default .profile -> ~/bin and ~/.local/bin in PATH
> - .profile as a symlink to the default .profile located in different
> directory -> no ~/bin or ~/.local/bin in PATH
> 
> Why?

If you are logging with Gnome, then no login shell gets invoked, and
therefore .profile is not supposed to be sourced. If it is, that means
something in the chain sources it explicitly, and it is entirely
possible it does something like this:

if [ -f "$HOME/.profile" ] ; then
  . "$HOME/.profile"
fi

A -f instead of -e would exclude symlinks.

My two pieces of advice:

1. Be the master of your login process: start with a .xsession file that
does exactly what you want it to do before it starts a desktop.

2. Use zsh instead of bash: its system of config file is more systematic
and does not require one to source the other in weird ways to cover all
cases. (Also its line editor is a lot better, especially with multi-line
statements¹, and it has consistently a few years of advance for
convenient shell features.)


1: Type this command: “for i in 1 2 3 ; do”, <enter>, “echo $i”,
<enter>, “done”, <enter>, then use the arrow key to go back on the
command in history. Then do the same with zsh.

Regards,

-- 
  Nicolas George

Reply via email to