On Mar 22, 2011, at 15:54, Peter Dyballa wrote:
Am 22.03.2011 um 00:45 schrieb Dave Ray:
I can fix the problem by adding the appropriate variables to ~/.MacOSX/environment.plist. But then I have two files to maintain, /etc/bashrc and ~/.MacOSX/environment.plist. I would prefer not to have to do that, unless that is the expected way.
One possible solution to this is make bashrc the "client" of ~/.MacOSX/environment.plist. You can use constructs like for example this:
export PATH=$(defaults read "${HOME}/.MacOSX/environment" PATH)
For whatever variable you need. When $HOME is set, then the environment of the logging in user will be set.
Why do you find yourself needing ~/.MacOSX/environment at all?
IMO this should not be necessary, because up to Leopard ~/.MacOSX/environment.plist is read when you log in. Then all processes inherit this environment. The X clients are a bit different and used to inherit their environment from X11.app – until recently!
Nope. X11 clients do inherit their environment from X11.app, since that's the process that forks and execs them. That has not changed.
The defaults command can be used anywhere else.
NSDefaults have nothing to do with environment variables.