[Xquartz-dev] 2.1.2 release candidate

Martin Costabel costabel at wanadoo.fr
Thu Jan 10 00:17:25 PST 2008


Jeremy Huddleston wrote:
> 
> On Jan 8, 2008, at 23:55, Martin Costabel wrote:
> 
>> For people who don't have bash as their login shell, this is a  
>> regression. With /usr/bin/X11 now on the PATH, X11 will start up OK,  
>> but it will not have the rest of their environment. If they use Fink  
>> or macports, they will once again have to bend backwards in order to  
>> get a decent environment for the applications started from the  
>> Applications menu.
> 
> 
> No, that's not entirely true.  The applications launched from the  

It may not be entirely true, but I didn't pull this out of thin air. I 
did some tests before writing this. Let's see:

1.) I start X11 ("XQuartz 2.1.2 - (xorg-server 1.3.0-apple6)", latest rc 
as of yesterday, with the PATH fix in startx) by triggering launchd with 
some command like xrdb or ssh -Y and starting an xterm from the remote 
machine.

2.) I select "Terminal" from the Applications menu of X11. An xterm pops 
up with my usual tcsh prompt, so my tcsh startup scripts must - somehow 
- have been executed

3.) `ps x` shows "/usr/bin/login -fp costabel /bin/sh -c xterm"

4.) `printenv PATH` in the xterm gives

/usr/X11/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/X11/bin

I have no idea where this PATH is coming from. Not from my shell startup 
scripts, in any case.

I do have, in fact, a file  ~/.MacOSX/environment.plist on this account, 
which sets an entirely different PATH, as does my usual tcsh startup 
procedure. Removing or changing ~/.MacOSX/environment.plist does not 
change the situation.

> Applications menu are started via /usr/bin/login -f ...., so your tcsh  
> environment will be handed off to that application.  Unfortunately  
> XQuartz itself wont have the right environment, but that is fixable by  
> setting up PATH right in your {/etc/,~/.}profile

I don't care about the environment of XQuartz; does it play any role at 
all?

What I care about is the environment transmitted to the programs run by 
the Applications menu of X11. And this used to work correctly in 
previous releases. I don't have time now to check what exactly it did in 
raw Leopard X11 and in each one of your earlier releases, but I suspect 
that /usr/bin/login on Leopard is buggy and does not do what its 
documentation says.

-- 
Martin



More information about the Xquartz-dev mailing list