README for XFree86 on OS/2 : Adding Variables to CONFIG.SYS
Previous: Installing the packages
Next: Remarks on the Network Configuration

9. Adding Variables to CONFIG.SYS

XFree86/OS2 requires a number of settings in the CONFIG.SYS file to work correctly. Please add the following settings, and in particular take care to set forward versus backward slashes correctly:

TERM

Set the preferred terminal type for the xterm or editor to be used. Some programs need this setting. I have my type set to

SET TERM=ansi
\XFree86\lib\X11\etc\termcap.x11 contains a suitable termcap which can be used in place of termcap files that come with EMX, EMACS, or other ported software.

TERMCAP

This variable must be set to the location where the termcap file used for the above TERM variable is searched. My setting, for instance, is:

SET TERMCAP=D:/EMX/ETC/TERMCAP.X11
Note that forward ``/'' is used as a directory separator.

ETC

Set to an ETC directory. Normally, this is already set to the ETC directory of the TCP/IP code, such as

SET ETC=C:\TCPIP\ETC
For Warp 4 and later, this may point to the \MPTN\ directory. This is okay.

TMP

Set to an TMP directory which should reside on a HPFS drive (or other filesystem that has real long names). Often, this variable is already set to the TMP directory of the TCP/IP code, such as

SET TMP=C:\TCPIP\TMP
If you have installed additional software, like VisualAge for C++, it might be that this variable points to some directory \ibmcpp\tmp .

HOSTNAME

Set to the internet hostname. Normally, this is already set by the TCP/IP installation program, such as

SET HOSTNAME=myhost
With IAK, you would normally run a loopback configuration Network configuration and would then set this to
SET HOSTNAME=localhost

USER
LOGNAME

Set both to a username. Currently, they are there just to make some programs happy; in the future, this variable might be set by a login shell of a multiuser configuration. My variable, for instance, is set to

        SET USER=holger
        SET LOGNAME=holger

HOME

Set this to an existing directory that is supposed to be a home directory of a user. Some utilities place temporary and init files here. This is also future investment for a multiuser configuration, but must still be there. For instance, this variable might be set to

SET HOME=H:\user\holger

X11ROOT

This is one of the most important settings, it determines the root of the XFree86 directory tree. Normally, you will set this to the drive letter of the partition where the \XFree86 tree resides, such as in

SET X11ROOT=Y:
You may try to move the tree to another subdirectory, e.g. to K:\OS2\X11\XFree86... and would then have to change this to
SET X11ROOT=K:/OS2/X11
, but this is discouraged, since some utilities might not accept this. Note the forward ``/'' as a directory separator here.

DISPLAY

This variable may be set to the display to be used for displaying clients. Normally you will set this variable to the same value as the HOSTNAME variable and simply add a :0.0 after it, such as

SET DISPLAY=myhost:0.0
Read the X11 man page on the exact meaning of these postfixes and other options.

XSERVER

Set this to the executable name of the X server to be used. This must be a complete path. My setting, for instance, looks as follows:

SET XSERVER=D:/XFree86/bin/XF86_Mach64.exe

PATH

Add the binary directory for the X11 utilities to your search PATH. This is normally the directory (adjust the letter)

Y:\XFree86\bin
It is possible to move the binaries to another directory in the search path; for maintenance reasons and clarity of the structure, this is not recommended, though. You might, of course, use a software like TVFS to redirect these files to elsewhere.

LIBPATH

Add the DLL directory for the X11 utilities to the LIBPATH. This is normally the directory (adjust the letter)

Y:\XFree86\lib
It is possible to move the DLLs to another directory in the library path; for maintenance reasons and clarity of the structure, this is not recommended, though. Note that Y:\XFree86\lib has several other subdirectories; these may not be moved elsewhere, rather they must stay there, because most utilities form a path to these directories by using %X11ROOT%\XFree86\lib as a base.
SET MANPATH=Y:\XFree86\man;Y:\EMX\man
Note: xman alone might not be sufficient to display arbitrary Unix man pages correctly. You might have to install the GROFF formatter tool as well. See FAQ for more details.

OS2_SHELL
COMSPEC
SHELL
X11SHELL

Some scripts in XFree86 rely on a shell that is compatible to the standard CMD.EXE. CMD.EXE has some essential properties that allows it to work correctly in an xterm. Third party shells may not been developed with running in an environment that, like xterm. accept input and output from the stdin/stdout file channels, but access keyboard and video services directly. The above variables allow reconfiguration of your system in order to run any favorite shell outside XFree86 and still have XFree86 use CMD.EXE. See the FAQ for more details.

The recent version of XFree86/OS2 has a REXX script named checkinstall.cmd which you can (and should) use to check whether you have entered most things correctly. This is not bullet-proof, but prevents the most obvious setup problems. Also, the X server itself will do some checking and will refuse to start if something is wrong.


README for XFree86 on OS/2 : Adding Variables to CONFIG.SYS
Previous: Installing the packages
Next: Remarks on the Network Configuration