[Xquartz-dev] 2.1.2 release candidate

Martin Costabel costabel at wanadoo.fr
Fri Jan 11 16:28:50 PST 2008


Jeremy Huddleston wrote:
> I think I'm just going to release the 'bash --login startx'  
> launchd.plist with startx pushing /usr/X11/bin into PATH if it's not  
> there already.

I guess that we'll be able to live with this. The standard users who 
might want to use the X11 Applications menu will have bash as their 
login shell anyway, because it's the default. And with the "bash --login 
startx", they get their login environment.

For users with tcsh or another shell as login shell, it may give 
unexpected results, depending on the contents of possibly existing 
random bash login scripts.

> This doesn't assume your users will use bash.  It just uses bash  
> because it's there.  When the users start xterm from the Applications  
> menu, they'll get their tcsh shell as expected, and they'll get a  login 
> tcsh shell because it's started by '/usr/bin/login -fp  <username> 
> /usr/X11/bin/xterm' which tells xterm to be a login  terminal which 
> tells the shell to be a login shell.

Except that it doesn't. This is perhaps what /usr/bin/login should do, 
but it doesn't. Currently its only effect is that it sets the working 
directory to $HOME and that it leaves an entry in lastlog. Its influence 
on the environment is zero. The only way to make xterm run a real login 
terminal is to call it as "xterm -ls", whether preceded by 
/usr/bin/login or not.

> Other applications (maybe 'xemacs' as an example) will inherit the  BASH 
> environment provided to them.  I honestly don't see an easy,  robust, 
> clean solution for this, and the 'bash --login' route is what  I came up 
> with as the cleanest one, but it provides the BASH  environment.  Your 
> users could probably change /System/Library/ org.x.X11.plist to 
> something better for their tcsh setup... or even  just start a terminal 
> and execute something from there...

That's what I am telling people anyway. I don't myself understand why 
one would want to use anything as old and ugly as an xterm :-)

> Now that I think about it, I don't see how this is even a regression. 

You are right, I was wrong about this. It didn't work in previous 
versions either. There were so many different versions around, some of 
them my own DIY versions, that I forgot which one did what.

BTW, it was rather difficult to go back to the original Leopard X11 and 
have it work, because one needs to replace the new 
/System/Library/LaunchAgents/org.x.X11.plist by the old one, and this 
file is not in the original Leopard X11 pkg's, but in Essentials.pkg 
which one doesn't really want to reinstall. I had also two kernel panics 
in the process. Possibly unrelated, but before that I had only seen one 
in the last 5 years.

-- 
Martin




More information about the Xquartz-dev mailing list