Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

When I start the X11.app then it launches an xterm automatically. I've long since switched from the "ordinary" xterm to rxvt-unicode so the initial xterm just hangs around like a wallflower never being used. Whilst it's not particularly bad, it spoils the look of the place so I'd like to stop it launching. How do I do it?

share|improve this question

2 Answers 2

up vote 10 down vote accepted
defaults write org.macosforge.xquartz.X11 app_to_run /usr/bin/true

in a Terminal. However, note that there really shouldn't be necessary to every start XQuartz.app (or X11.app; see the comments) manually. It will start automatically when you run an X11 client, and then it will not start its defaults startup application.

share|improve this answer
    
Uh, sorry, I hadn't noticed that you use X11.app. Don't do that. Use XQuartz for all your X11 needs on the mac. That said, I think X11.app has the same defaults setting, but I don't remember the name of the preferences file. Look for it in Library/Preferences/. –  Harald Hanche-Olsen Jun 14 '12 at 18:44
    
Last time I used Mac OS X then XQuartz wasn't around so I hadn't heard of that - any other things like that I should know about? For X11 it's org.x.X11, and I set the value to '' which seemed to work as well as /usr/bin/true. –  Loop Space Jun 14 '12 at 18:48
    
Hmm. No, I can't think of anything other than X11/XQuartz with that particular peculiarity. Though I remain forever confused about whether I should get my Java updates from Apple or Oracle these days. –  Harald Hanche-Olsen Jun 14 '12 at 18:52
    
if you use fink, packages are not built for Xquartz on 10.6. so your suggestion is invalid, harald. –  Wyatt8740 Apr 25 at 21:03
    
@Wyatt8740 I'll take your word for it. I don't have any suggestions for what to do in that case. If you do find out, feel free to add your own answer or comment. (Or if you need the answer but don't know how, ask a new question.) –  Harald Hanche-Olsen Apr 26 at 13:37

Since I'm not at my OSX computer right now, I'll give you the fail-proof answer for this. 'true' does nothing and exits successfully, so I set that to run at startup.

Apple's old X11:
defaults write org.x.X11 $(which true)

and for XQuartz:
defaults write org.macosforge.xquartz.X11 $(which true)

and for MacPorts X11.app:
defaults write org.macports.X11 $(which true)

In case you are wondering, $(which true) will make a line read, for example,
defaults write org.x.X11 /bin/true.
I write it as $(which true) because I am not at my mac and do not remember if it is in /bin/true or some other location.

I have additionally read that you can set these to '' (that's two single quotes, so nothing at all), and it will do the same thing. I have not tried it, though.

(Source: https://xquartz.macosforge.org/trac/wiki/X11-UsersFAQ)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.