Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#8628 - [gdm] doesn't source environment for most users
Attached to Project:
Arch Linux
Opened by Neil Darlow (neildarlow) - Tuesday, 13 November 2007, 12:13 GMT
Last edited by Roman Kyrylych (Romashka) - Saturday, 03 October 2009, 10:25 GMT
Opened by Neil Darlow (neildarlow) - Tuesday, 13 November 2007, 12:13 GMT
Last edited by Roman Kyrylych (Romashka) - Saturday, 03 October 2009, 10:25 GMT
|
DetailsDescription: The /etc/gdm/Xsession script sources $HOME/.profile and $HOME/.xprofile for user-specific environment settings. For the majority of normal users, who use BASH, it might be worthwhile extending the logic to include $HOME/.bash_profile too.
I discovered this while debugging startup of community/bouml (actually its projectControl and projectSynchro programs) which was reporting that a required environment variable wasn't set when it was actually set in $HOME/.bashrc (which is sourced by $HOME/.bash_profile). My solution was to symlink $HOME/.bash_profile to $HOME/.xprofile but I can't help thinking that sourcing $HOME/.bash_profile in /etc/gdm/Xsession is the correct way to handle this. Additional info: * gdm-2.20.1-2 * /etc/gdm/Xsession Steps to reproduce: |
This task depends upon
/bin/bash --login -i ~/.xinitrc
which reads .bash_profile. This worked for KDE but for Gnome I had to create an .xprofile containing
. $HOME/.bash_profile
so that I can set the environment/path. Not sure which one of the two behaviors is more correct but both desktop environments should behave the same.
In $HOME/.profile I had included the following lines:
export LANG="en_US.utf8"
export LC_CTYPE="el_GR.utf8"
export LC_NUMERIC="el_GR.utf8"
export LC_TIME="el_GR.utf8"
export LC_COLLATE="el_GR.utf8"
export LC_MONETARY="el_GR.utf8"
export LC_MESSAGES="en_US.utf8"
export LC_PAPER="el_GR.utf8"
export LC_NAME="el_GR.utf8"
export LC_ADDRESS="el_GR.utf8"
export LC_TELEPHONE="el_GR.utf8"
export LC_MEASUREMENT="el_GR.utf8"
export LC_IDENTIFICATION="el_GR.utf8"
because I wanted to have the environment (menus, icons etc) in english and have the date, time, numeric formats in greek. Unfortunately the Xsession script was reseting them to $GDM_LANG.
I have modified the /etc/gdm/Xsession script to respect my LC_* variables when $LANG is equal to $GDM_LANG but set them to $GDM_LANG otherwise.
I think it would be nice to have something similar in the default gdm package.
I am attaching a diff for /etc/gdm/Xsession
It is supposed to be initialized by /etc/profile.d/bash-completion. It works "out of the box" on a Linux console.
In gnome-terminal:
Edit > Profile Preferences; select the second tab ("Title and Command") then check "Run command as a login shell".
For xterm/rxvt you should set the X resource database entry "loginShell".
etc.