Why Mac users should love X11

news
Oct 10, 20073 mins

If you’re not pulling X Window apps down from Fink or DarwinPorts, you might never have noticed /Applications/Utilities/X11.app. Or perhaps you’ve noticed it, but consider it a throwback to the 90s, one evolutionary step beyond the green screen. Give it a fresh look, because it has many qualities that other remote GUI methods, like VNC and Apple Remote Desktop, lack. For some purposes, like software development, X11 can reduce your dependence on Parallels, VMware Fusion and Boot Camp.

X11 is an elegantly simple client/server GUI protocol that allows any X Window application to run in one place but use the keyboard, mouse and display of any system. Using an X Window app from the console or from a hotel delivers precisely the same experience.

An application needs to be compiled to use X Window; it doesn’t make arbitrary client sofware, like Aqua apps, remotable (I wish). But you’d be surprised by the range of X11-enabled applications that work seamlessly over remote links with their rich native GUIs: Firefox is a great example, as is openoffice.org, but any GNOME or KDE application is inherently remotable via X11, as are all command line apps.

X11 works like magic. Any command you launch in a remote terminal connection to a host pops up a new window on your desktop, complete with Aqua trim. Grab the title bar of any X11 application on your desktop and shake it; it updates in real-time. X11 has extensions for 3-D, smooth fonts, video and most all of the GUI features you’d want. Software runs over there with the compute speed and capacity of the remote host, but the GUI renders on your display at Aqua’s native speed.

If your curiosity isn’t piqued yet, consider these points:

  • Launching a remote X11 app like xterm, X11’s command window, requires only a single command from your desktop
  • Authentication with a remote X11 host is secured and vastly simplified by an SSH tunnel
  • Complex GUI applications like Firefox, along with all GNOME and KDE applications, have intrinsic X11 support and can be run remotely, as can all command line software
  • X11 is transparently cross-platform. It’s literally everywhere, and it’s usually part of the standard OS distribution
  • No daemon is required on the remote side. Each application makes the connection
  • If a network link to a remote X11 app is lost, X11 reconnects automatically. That’s nice for notebook sleep/wake. By default, the connection won’t survive a reboot at either end, but there’s a solution for that, too
  • Unlike VNC and Apple Remote Desktop, X11 doesn’t resend the entire display, just the changes within each window. Common operations, like scrolling, are accelerated
  • X11 is faster than VNC and Remote Desktop, but it doesn’t preclude their use

Is X11 sounding better now? Hang in, because in part two, I’ll tell you how to use it. You’ll be surprised by how easy it is.