The X11 Files
General info
The X11 windowing system is the standard on Unix-like systems for displaying windows. It can roughly be compared to OS/2's Presentation Manager. The XFree86 Consortium provides a freeware port for Intel x86 based platforms. Holger Veit and Frank Giessler ported XFree86 to OS/2 and eComStation (eCS).
X11 systems have a client/server structure. The so-called X server (the displaying system) offers its capabilities to the X clients (the applications) to display their output. Due to the X systems networking capabilities server and client can be sited on different machines which are connected via a network (e.g. a TCP/IP LAN or a TCP/IP based dial-up connection).
Now you might ask what to do with a Unix system when you're running OS/2. Well, using XFree86/OS2 and its client/server architecture offers you the following possibilities:
- Use your OS/2 machine to login to a Unix machine, start programs on that remote machine and let them display their output and user interface on your local OS/2 machine. Think of sitting at home and doing some work using the machines at work or a 1000 miles away.
- Run ported Unix programs on your local OS/2 machine.
What makes the whole thing especially interesting is the fact that Unix programs can relatively easy be ported to OS/2 with the help of the emx package. This package consists of some libraries that provide Unix-features which OS/2 and eCS lack and the GNU gcc compiler that can be used to compile e.g. C, C++, Objective C, Ada95 and Fortran77 programs. Using emx it sometimes is enough to compile the Unix programs' source code to get a working program. Meanwhile lots of programs have been ported and the list is growing...
Please take a look at the following highlights of ported applications:
- The GIMP (The Graphics Image Manipulation Package). This freeware package isn't that far from Photoshop's functionality and can be extended using a plug-in architecture. Using the xscanimage plug-in you can also directly scan into The GIMP.
- LyX is a GUI for LaTeX that allows to compose documents very similar to WYSIWYG word processors. The installation including the setup of emTeX, Ghostscript and XDVI can be a bit tricky, but the LyX package comes with a helpful README.
XFree86OS/2 is not able to display windows seamlessly on the OS/2 desktop, but can be run at the same time. Since it directly accesses the video hardware, it is also very fast. There's a Netlabs project called Everblue which aims at making seamless X windows on the OS/2 desktop possible, similar to packages like the withdrawn PMX from IBM, Hummingbird's Exceed or HOBLink X11.
Installing XFree86/OS2 seems a bit complicated first, but if you follow the instructions given in the distributions README and the pretty extensive step-by-step guides on these pages there should be no big problems. You can make your life easier by purchasing a Team Trier Collection CD which contains XFree86 3.3.6 which can directly be installed from the CD.
Well, there are some "disadvantages" using XFree86/OS2:
- To start working under XFree86/OS2 you should have some knowledge about Unix basics, like directory structure and shell commands, since most of the programs take some things for granted and won't work otherwise. These "things" often are not (sufficiently) documented and so you can e.g. come across the question where to put certain files. Therefor this site offers a guide on setting up a unixish environment for OS/2.
- XFree86 itself doesn't need very much harddrive space considering that it is a complete video subsystem. But then to successfully operate the ported programs you'll need several tools and utilities that are not always mentioned in the READMEs. Once you have installed all these the used harddisk space has somewhat grown. For help on installation see the guide at this site.
- Unix systems don't know about driveletters, there is nothing like C:. You may come across some quick ports that haven't been extended for driveletter support and therefor can only access files residing on the same drive as themselves. To access data on other drives you can use the Toronto Virtual File System (TVFS) and mount all relevant files and directories on one drive.
- Many programs have to be used with tons of cryptic command line options and are not very user friendly. And their documentation is often a bit, hm, rough. Man pages are good as a reference, but not for teaching yourself how to operate the software.
- There is no standardized user interface. Instead there are lots of window managers with different features available. Most window managers have to be configured by hand-editing files. There's no drag & drop or configuration menus.
To be fair one has to say that most of these disadvantages are not the ones of XFree86/OS2, but result from Unix systems' structure. In the following you can find some directions to ease your life with XFree86/OS2.
- First of all see if your graphics card is supported by XFree86/OS2. The README lists several cards and chipsets.
- Make yourself a pot of coffee or tea before starting the installation!
- Read the READMEs and the X11OS2FAQ!
- Get the emx+gcc package and the GNU utilities FIND, FUTIL, GREP, SED, SUTIL, and TUTIL from os2site.com. Hopefully, the UnixOS2 project will solve all problems in the future. It aims at creating a kind of Unix distribution for OS/2 that is easy to install.
- Read the guide on setting up a unixish environment for OS/2 on this site!
- Most configuration files have to be edited with a X-editor (e.g. xed or gxedit) or EPM in Unix mode (use parameter /U). OS/2 and Unix systems use different codes to terminate a line. Editing a file with an editor using different codes will result in programs not being able to read their configuration.
- Don't panic! If you can't it to work have a look at the FAQ or send a problem report to the XFree86/OS2 mailing list or an OS/2 newsgroup. The mailing list even has a searchable archive.