Description of problem: gdm login not running user's .bash_profile Version-Release number of selected component (if applicable): gdm-2.8.0.4-13 How reproducible: 100% Steps to Reproduce: 1.set something in user's environment in ~/.bash_profile 2.login via gdm 3.see if it was set Actual results: not set Expected results: ~/.bash_profile should be run Additional info:
This is still a problem for an updated gdm-2.8.0.4-13.1. After replacing in /etc/X11/gdm/Xsession this line test -f "$HOME/.profile" && . "$HOME/.profile" with test -f "$HOME/.bash_profile" && . "$HOME/.bash_profile" || \ { test -f "$HOME/.profile" && . "$HOME/.profile"; } and only one of such files will be used even if both happen to exist. Maybe this should be contigent on a value of $SHELL?
dup of #173438 The correct fix is to run the user's shell as a login shell (exec -l), not to manually run the .profile or something. We spent a ton of time years ago making sure you got exactly one login shell in all the different ways to login (console, startx, gdm, xdm, tcsh, bash), it's very annoying, one of those things it was better to just not touch if possible ;-) Anyway, anytime you login the "root"/first-spawned shell should be a login shell, and no other shells should be login shells. This makes the right scripts run the right number of times.
*** This bug has been marked as a duplicate of 177258 ***