What is X11?

gphillipk

Registered
Hi guys and girls,
I've been using a Mac since March and I'm finally getting curious about what I can or can't do MacOS X as far as developing and sys admin is concerned. And X11 is something I'm not familiar with at all. So, please educate me. Gently :) If you know any good resources where I could read up on this I would appreciate it.
 
X11 is the window protocol used by most Linux/Unix and Sun systems. Many popular Unix programs run, or at least originally ran, only in X11, such as OpenOffice/StarOffice, The Gimp, KDE, Gnome, etc. While a few of these have been ported to the Mac's windowing system (Aqua), most still run under the X11 service instead.

X11 has a few unique abilities. Provided you have a fast network connection, you can remotely bring up a particular program's window, kind of like using a remote desktop or VNC client, but instead of showing the whole screen it only sends the windows you are using. X11 can be tunnelled in this way through different network ports or through an SSH secure connection. It is also highly expandable, and is used to drive many video-walls and other obscure applications.

A popular open source version of X11 is XFree86, which you'll find on many Linux distributions.

That said, there's not a lot you can "do" with X11 as such, its better to think of it as being the platform on which some Unix apps run. You would probably not want to develop for X11 if you want to run on Mac, as the Aqua windowing system is far superior. You'd only look at developing for X11 if you wanted to run programs on Unix/Linux.

If I were you, I'd install Fink and FinkCommander and try out some good, popular X11 window managers like KDE, Gnome or Enlightenment.
 
I think xterm used a default font set in the config files somewhere (probably in /etc/X11 or something like that). However if you install Gnome or KDE then you can use gterm or kterm, which are much more configurable and stylish.
 
If xterm under X11 on OS X behaves like xterm on any other Unix platform, you need to edit a file called .Xresources in your home directory, and reload the file with a command called 'xrdb'. Here's a snippet about xterm from my .Xresources (on my Linux workstation):

xterm*termName: xterm
xterm*background: white
xterm*foreground: black
xterm*scrollBar: false
xterm*saveLines: 1000
xterm*font: -*-terminus-bold-*-*-*-20-*-*-*-*-*-*-1
xterm*boldFont: -*-terminus-bold-*-*-*-20-*-*-*-*-*-*-1

The last two lines controll the font; Terminius being a font packaged with Debian. If I wanted to change this and reload the file, I'd make the change, and from the shell, type:

xrdb < ~/.Xresources

HTH.

EDIT: Note that all of the above xterm resources (saveLines, boldFont, etc) are documented in the xterm manpage, and can be set with command-line switches, which are also documented on the manpage.
 
Back
Top