Frequently Asked Questions about the X Window System (X11) for Mac OS X

X11 for Mac OS X is an implementation of the X Window System that makes it possible to run X11-based applications in Mac OS X. See the Mac OS X X11 features list for information about X11 for Mac OS X.

Note: This Technical Note replaces Technical Q&A QA1232, 'X11 FAQ'. Please update any bookmarks.





Getting Help

How do I file bug reports and request features?

Bug reports and feature requests related to X11 for Mac OS X can and should be filed at bugreport.apple.com. Include as much information as possible, such as detailed steps to reproduce the issue and your Apple System Profiler report.

Back to Top 

Is there a mailing list?

Yes, you can subscribe to the x11-users mailing list at lists.apple.com/x11-users. This list's main purpose is for discussions among the X Window community. Apple monitors the list and can help answer questions when possible, but doesn't guarantee that every bug report or feedback sent to the mailing list will be processed. Use bugreport.apple.com to make sure your input is received.

Back to Top 

Where is the mailing list archive?

You can search and view messages posted to the x11-users at x11-users list page at lists.apple.com/archives.

Back to Top 

Technical Questions

Where are things installed?

In

  • /Applications/Utilities/X11.app

  • /usr/X11R6

  • /usr/bin/open-x11.

If you have an existing /etc/X11 it is backed up during installation and a new one is installed. Symlinks are also added at /usr/include/X11 and /usr/lib/X11.

Back to Top 

Does X11.app process my ~/.xinitrc?

You may have a previous installation of X11 or XDarwin with a pre-existing ~/.xinitrc. The first time you launch X11.app after installation, it will ask whether to back up your existing ~/.xinitrc to ~/.xinitrc.old and use the standard /etc/X11/xinit/xinitrc. If you reply no, it will use your existing ~/.xinitrc. If you reply yes, it will use /etc/X11/xinit/xinitrc (the X11 default).

If neither ~/.xinitrc or /etc/X11/xinit/xinitrc are present, X11 for Mac OS X will use hard coded values that launch an xterm and the quartz-wm window manager.

Back to Top 

Does X11 work with a previously installed version of XDarwin?

We recommend you back up and move aside your previous installation of XDarwin and then install X11 for Mac OS X. A few people have been able to get X11 for Mac OS X and XDarwin to co-exist.

Back to Top 

I don't see '/Applications/Utilities/X11.app' after installing.

Make sure you install the X11.pkg, not just the X11SDK.pkg.

Back to Top 

I do not see an xterm startup when launching X11.app.

A default xterm will launch if you did a clean install and are using the standard xinitrc environment. See Does X11.app process my ~/.xinitrc?.

Back to Top 

How do I copy and paste using X11 for Mac OS X?

X11 for Mac OS X allows cut and paste between X11 and native applications using PRIMARY and PASTEBOARD selections.

You can cut text from X11 applications by selecting the text, performing a Command-c or copy operation. You can paste in native Mac OS X applications as usual using Command-v.

Because there is no standard for pasting in X11 applications (some use middle mouse button, some use control-v, etc.), Command-v doesn't work for pasting in X11 applications by design. As a result, the "Paste" menu item will be grayed out when X11 applications are in focus. You should use the control-v or the middle mouse button instead for pasting (See X11 Preferences for emulating a middle mouse button).

The "Paste" menu option will be active when non-X windows are active within X11.app (e.g., when entering text in the "Customize Applications" menu item).

A common request has been to make cmd-v work across all X11 applications. Although this is technically feasible, it would require either overriding cmd-v for all X11 applications, or re-writing all X11 applications to standardize on a single approach. If this feature is important to you, please file an enhancement request describing your desired usage scenario at <http://bugreport.apple.com/>

Back to Top 

Can I run another window manager instead of quartz-wm?

Yes, you can. Add a ~/.xinitrc which runs your favorite window manager instead of quartz-wm.

Back to Top 

How do I make copy and paste work with other window managers?

Running quartz-wm --only-proxy will activate the selection proxying features, but won't manage any of the display's screens allowing you to use a different window manager and use cut and paste as if quartz-wm were running.

Back to Top 

Is there an option for focus-follows-mouse (no-click-to-focus) for X11 applications?

Yes there is a hidden option. From an xterm or terminal execute :

defaults write com.apple.x11 wm_ffm true

Back to Top 

How do I run X applications from a Terminal window?

You can use the /usr/bin/open-x11 script to launch X applications from Terminal.

Back to Top 

How do I forward remote X displays to my Mac?

The best (and safest) way is to simply ssh -X user@remotehost from the initial xterm. X forwarding and your DISPLAY environment variable on the remote host will automatically be set. Remote host must have X Forwarding enabled in your sshd_config file. Mac OS X does not enable this by default.

Back to Top 

How do I set environment for all processes launched by a specific user?

See Technical Q&A QA1067, 'Setting environment variables for user processes'

Back to Top 

Why do I need to add full paths to the 'X11 Application Menu'?

When you use the Applications menu, the environment variables are the ones that X11.app has inherited from where it was started. So if you launch X11 from the Finder or Dock, very likely your environment will be limited. See previous question to set the PATH environment for all applications include X11.app.

Back to Top 

How can I use international keyboards with X11 for Mac OS X?

You can set the keyboard mapping using the "Input" tab in the preferences panel.

Back to Top 

Why can't I connect to the X Server after a network config change? It requires a restart of the X server.

This is expected behavior in the Xauthority authentication mechanism which X11 for Mac OS X uses by default. The problem is that Xauth uses two keys, the ip address and hostname of the system running the X server. But these keys don't get updated if you change the network configuration. You can disable authentication from the "Security" tab of X11.app's preferences. Be aware that doing so may create a security hole.

Back to Top 

Do I need a multi-button mouse to use X11 for Mac OS X?

No, you can emulate a three button mouse by using single button mouse in combination with the keyboard. Multi button mice are supported by default. See the X11.app Preferences (Input tab) to enable three button mouse emulation.

Back to Top 

Why can't I build my application against X11?

Make sure you install the X11 SDK from the Developer CD.

Back to Top 

Why doesn't X11 and xscreensaver build 'out of the box'?

The workaround is to add -no-cpp-precomp to your CFLAGS when configuring or building.

Back to Top 

Known Issues

  • X11 clients do not appear as separate applications in the dock and when using Command-Tab to move through applications.

  • Command-V doesn't work in X11 applications by design - use the paste paradigm specific to the X11 application. e.g. use middle mouse button or control-v instead.

  • OpenGL : off screen rendering is currently not supported.

  • OpenGL : XInputExtension is not yet implemented. Maya and some GLUT applications require this extension.

  • OpenGL : Cannot launch OpenGL applications unless the user is root or the current logged in user in Mac OS X.

Back to Top 

Additional Resources

Some Apple and external resources (contributed by users on x11-users@list.apple.com):

Back to Top 

Document Revision History

DateNotes
2007-01-22First Version

Posted: 2007-01-22


Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.