Jeremy,

Thanks again for your response. I am still missing something.

My /home/mark/.xsession file (how strange that you know I use kde....)

mark@latitude610:~$ cat .xsession
. /etc/profile
exec startkde
mark@latitude610:~$


But when I try this, I still don't have my environment variables set:

mark@latitude610:~$ echo $JAVA_HOME

mark@latitude610:~$


However, this works in a terminal window:

mark@latitude610:~$ . /etc/profile
mark@latitude610:~$ echo $JAVA_HOME
/usr/local/lib/jdk
mark@latitude610:~$


What am I missing, so that the environment variables are loaded when I login? Is there a global place (like /etc/profile) where I can put my environment variables and have them available when I login?  I tried rummaging around the gdm documentation and on the net, but I can't seem to find out how to do this. That surprises me, since I would think this would be a common problem and would have been solved already.

I am also surprised that there isn't a way to do source /etc/profile in gdm.conf. I looked at the gdm manual (http://www.jirka.org/gdm-documentation/x241.html) and found this:
----snip----
BaseXsession
BaseXsession=<etc>/gdm/Xsession

This is the base X session file. When a user logs in, this script will be run with the selected session as the first argument. The selected session will be the Exec= from the .desktop file of the session.

If you wish to use the same script for several different display managers, and wish to have some of the script run only for GDM, then you can check the presence of the GDMSESSION environmental variable. This will always be set to the basename of .desktop (without the extension) file that is being used for this session, and will only be set for GDM sessions. Previously some scripts were checking for GDM_LANG, but that is only set when the user picks a non-system default language.

This script should take care of doing the "login" for the user and so it should source the /etc/profile and friends. The standard script shipped with GDM sources the files in this order: /etc/profile then ~/.profile then /etc/xprofile and finally ~/.xprofile. Note that different distributions may change this however. Sometimes users personal setup will be in ~/.bash_profile, however broken that is.

----snip----

My gdm.conf has the entry BaseXsession= /etc/gdm/Xsession, and /etc/gdm/Xsession does exist. It seems that Debian (my distro) must change this process somehow since it does not source /etc/profile (see the last paragraph).

Boy, am I confused!

Thanks!

Mark

Jeremy C. Reed wrote:
On Sat, 18 Dec 2004, Mark Phillips wrote:

  
Thanks for your response....I tried the following and the environment
variables I set up in /etc/profile are still not being read:

1. Created a file .xsession
2. Added these lines:
. /etc/profile
exec gdm
    

Don't restart the display manager. The display manager will run
~/.xsession.

exec startkde # or exec blackbox # for example


 Jeremy C. Reed

 	  	 	 BSD News, BSD tutorials, BSD links
	  	 	 http://www.bsdnewsletter.com/

---------------------------------------------------
PLUG-discuss mailing list - PLUG-discuss@lists.plug.phoenix.az.us
To subscribe, unsubscribe, or to change  you mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss