glfs/x/installing/xfree86.xml
Bruce Dubbs 52535ba591 Tagging XFree86 and fixes to xorg
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3416 af4574ff-66df-0310-9fd7-8a98e5e911e0
2005-02-07 06:19:38 +00:00

745 lines
29 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY xfree86-download-http "http://gnu.kookel.org/ftp/XFree86/4.4.0/source/">
<!ENTITY xfree86-download-ftp "ftp://ftp.xfree86.org/pub/XFree86/4.4.0/source/">
<!ENTITY xfree86-size "52 MB">
<!ENTITY xfree86-buildsize "775 MB">
<!ENTITY xfree86-time "11.6 SBU">
]>
<sect1 id="xfree86" xreflabel="XFree86-&xfree86-version;">
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<?dbhtml filename="xfree86.html" ?>
<title>XFree86-&xfree86-version;</title>
<indexterm zone="xfree86">
<primary sortas="a-xfree86">XFree86</primary>
</indexterm>
<sect2>
<title>Introduction to <application>XFree86</application></title>
<para><application>XFree86</application> is a freely redistributable
open-source implementation of the <application>X</application> Window System.
<application>XFree86</application> provides a client/server interface between
display hardware (the mouse, keyboard, and video displays) and the desktop
environment, while also providing both the windowing infrastructure and a
standardized application interface (<acronym>API</acronym>).</para>
<sect3><title>Package information</title>
<itemizedlist spacing='compact'>
<listitem><para>Download (HTTP):
<ulink url="&xfree86-download-http;"/></para></listitem> <listitem><para>Download (FTP):
<ulink url="&xfree86-download-ftp;"/></para></listitem>
<listitem><para>Download size: &xfree86-size;</para></listitem>
<listitem><para>Estimated disk space required: &xfree86-buildsize;</para></listitem>
<listitem><para>Estimated build time: &xfree86-time;</para></listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Additional downloads</title>
<itemizedlist spacing='compact'>
<listitem>
<para>Security patch: <ulink url="http://www.x.org/pub/X11R6.8.0/patches/xorg-CAN-2004-0687-0688.patch"/></para>
</listitem>
</itemizedlist></sect3>
<sect3>
<title><application>XFree86</application> dependencies</title>
<sect4>
<title>Required</title>
<para><xref linkend="libpng"/></para>
</sect4>
<sect4>
<title>Optional</title>
<para><xref linkend="Linux_PAM"/>; the
following packages are included in the <application>XFree86</application>
package, however they are updated more often than the
<application>XFree86</application> package and are highly recommended:
<xref linkend="expat"/>, <xref linkend="freetype2"/>,
<xref linkend="fontconfig"/>.
</para>
<note><para>If you choose not to install <application>expat</application>,
<application>freetype2</application>, and <application>fontconfig</application>,
the <filename>host.def</filename> file below will have to be modified to
instruct <application>XFree86</application> to build them.</para>
</note>
</sect4>
</sect3>
<sect3>
<title>Download Instructions</title>
<para>There are several files that need to be fetched from the download location:</para>
<itemizedlist spacing='compact'>
<listitem><para><filename>XFree86-4.4.0-src-1.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-2.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-3.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-4.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-5.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-6.tgz</filename></para></listitem>
<listitem><para><filename>XFree86-4.4.0-src-7.tgz</filename></para></listitem>
</itemizedlist>
<para>The first three packages are the <application>XFree86</application>
programs, the fourth and fifth are fonts, the sixth is normal documentation,
and the seventh is hardcopy documentation. There are also two packages
<filename>doctools-1.3.1.tgz</filename>, which contain programs to regenerate
hardcopy documentation, and <filename>utils-1.1.0.tgz</filename>, which contain
<application><acronym>GNU</acronym> <acronym>TAR</acronym></application>
and <application>zlib</application> which are already installed on an
<acronym>LFS</acronym> system.
</para>
<para>To check your downloads for integrity, download the
<filename>SUMS.md5sum</filename> file. Then:
</para>
<screen><userinput><command>md5sum -c SUMS.md5sum</command></userinput></screen>
<para>The only errors you should see are for <filename>README</filename>,
<filename>doctools-1.3.1.tgz</filename>, and
<filename>utils-1.1.0.tgz</filename> files if you did not download them.
</para>
<!--
<para>The fixes subdirectory also has a <filename>SUMS.md5sum</filename>. Note that
this is the same filename as the sums for the main sources, so you need to rename the
file if you download it. Otherwise, you can just look at it and use it to
check against the patch files:</para>
<screen><userinput><command>md5sum 4.3.0-4.3.0.1.diff.gz</command></userinput>
<userinput><command>md5sum fontfile.diff</command></userinput></screen>
<para>After unpacking the <filename>X430src-?.tgz</filename> files and uncompressing the
diff file, change to the <filename class="directory">xc</filename> directory and run:</para>
<screen><userinput><command>patch -Np1 -i ../4.3.0-4.3.0.1.diff</command></userinput>
<userinput><command>pushd lib/font/fontfile/</command></userinput>
<userinput><command>patch -N -i ../../../../fontfile.diff</command></userinput>
<userinput><command>popd</command></userinput></screen>
-->
</sect3>
</sect2>
<sect2>
<title>Installation of <application>XFree86</application></title>
<sect3 id='xfree86-kernel'>
<title>Kernel Compilation Settings</title>
<para>If you have an Intel P6 (Pentium Pro, Pentium II and later), it is
recommended that you compile <acronym>MTRR</acronym> (Memory Type Range
Registers) support into the kernel. The kernel can map Cyrix and AMD
<acronym>CPU</acronym>s to the <acronym>MTRR</acronym> interface, so selecting
this option is useful for those processors also. This option is found in the
"Processor type and features" menu. It can increase performance of image write
operations 2.5 times or more on <acronym>PCI</acronym> or
<acronym>AGP</acronym> video cards.
</para>
<indexterm zone="xfree86 xfree86-kernel">
<primary sortas="d-xfree86">XFree86</primary>
</indexterm>
<para>In the "Character Devices" section, enable <acronym>AGP</acronym> Support
and select the chipset support on your motherboard. If you do not know the
chipset, you may select all the chip types at the expense of extra kernel size.
You can usually determine your motherboard's chipset by running the command
<command>lspci</command>, a program from the <xref linkend="pciutils"/> package.
</para>
<para>In the "Character Devices" section, <emphasis>disable</emphasis> Direct
Rendering Manager unless you have a Direct Rendering Infrastructure
(<acronym>DRI</acronym>) supported video card. A complete list of
<acronym>DRI</acronym> supported video cards can be found at
<ulink url="http://dri.sourceforge.net" /> in the Status section. Currently,
supported cards include those from 3dfx (Voodoo, Banshee), 3Dlabs,
ATI (Rage Pro, Rage 128, Radeon 7X00, Radeon 2), Intel (i810, i815), and
Matrox (G200, G400, G450).
</para>
<para>Additionally NVidia provides their own closed source binary drivers,
which do not make use of <acronym>DRI</acronym>. If you intend to use these
drivers, do not enable <acronym>DRI</acronym>.
</para>
<para>If you made any changes to the kernel configuration, recompile and
install the new kernel.
</para>
<note><para>If you build <application>XFree86</application> in a
<command>chroot</command> environment, make sure the kernel version of the base
system and the target system are the same.
</para></note>
</sect3>
<sect3>
<title>Creating <filename>host.def</filename></title>
<para>Although <application>XFree86</application> will compile without a
<filename>host.def</filename> file, the following file is recommended for
customizing the installation. Start from the
<filename class="directory">xc</filename> directory.
</para>
<note><para>The <filename>host.def</filename> file is a
<application>C</application> file, not the usual configuration file. If you
make any changes, be sure the comment characters (<userinput>/*</userinput>
and <userinput>*/</userinput>) are balanced. Most of the entries in the file
below are commented out with the default settings shown.
</para></note>
<screen><userinput><command>cat &gt; config/cf/host.def &lt;&lt; "EOF"</command>
/* Begin XFree86 host.def file */
/* System Related Information. If you read and configure only one
* section then it should be this one. The Intel architecture defaults
* are set for a i686 and higher. Axp is for the Alpha architecture
* and Ppc is for the Power PC. Note that there have been reports that
* the Ppc optimization line causes segmentation faults during build.
* If that happens, try building without the DefaultGcc2PpcOpt line. */
/* #define DefaultGcc2i386Opt -O2 -fomit-frame-pointer -march=i686 */
/* #define DefaultGcc2AxpOpt -O2 -mcpu=ev6 */
/* #define DefaultGcc2PpcOpt -O2 -mcpu=750 */
/* The following definitions are normally set properly by XFree86's
* scripts. You can uncomment them if you want to make sure. *********/
/* #define HasMTRRSupport YES */ /* Enabled in kernel; */
/* see kernel docs */
/* #define HasMMXSupport NO */ /* Any i586 or above */
/* #define HasKatmaiSupport NO */ /* PIII SSE instructions */
/* #define Has3DNowSupport NO */ /* AMD instructions */
/* This setting reduces compile time a little by omitting rarely used
* input devices. You can find the complete list in
* config/cf/xfree86.cf *********************************************/
#define XInputDrivers mouse void
/* VIDEO DRIVERS ****************************************************/
/* If you are sure you only want the drivers for one or a few video
* cards, you can delete the drivers you do not want. ***************/
#define XF86CardDrivers mga glint nv tga s3 s3virge sis rendition \
neomagic i740 tdfx savage \
cirrus vmware tseng trident chips apm \
GlideDriver fbdev i128 nsc \
ati i810 AgpGartDrivers DevelDrivers ark \
cyrix siliconmotion \
vesa vga \
dummy XF86OSCardDrivers XF86ExtraCardDrivers
/* USER AND SYSTEM DEFAULT PATHS *************************************/
/* These settings set the PATH variables used by xdm. See README for */
/* detailed description and modify the following as per your need. ***/
/* #define DefaultSystemPath \
/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin */
/* #define DefaultUserPath /usr/bin:/bin:/usr/X11R6/bin */
/* FONT SERVER AND LIBRARY SETTINGS **********************************/
/* These settings are the defaults **********************************/
/* #define BuildFontServer YES */ /*For Ghostscript Print Server*/
/* #define SharedLibFont YES */
/* #define CompressAllFonts YES */
/* #define GzipFontCompression YES */
/* These settings ensure we use our libraries ************************/
#define HasFreetype2 YES
#define HasFontconfig YES
#define HasExpat YES
#define HasLibpng YES
#define HasZlib YES
/* The font path can be redefined in the XF86Config file *************/
/*
#define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/75dpi/,\
$(FONTDIR)/100dpi/,$(FONTDIR)/Type1,$(FONTDIR)/local,\
$(FONTDIR)/TrueType,$(FONTDIR)/CID,$(FONTDIR)/Speedo
*/
/* INTERNATIONAL FONTS. Change to YES if you need any of them. These
* are the defaults. **************************************************/
/* #define BuildCyrillicFonts NO */
/* #define BuildArabicFonts NO */
/* #define BuildISO8859_6Fonts NO */
/* #define BuildGreekFonts NO */
/* #define BuildISO8859_7Fonts NO */
/* #define BuildHebrewFonts NO */
/* #define BuildISO8859_8Fonts NO */
/* #define BuildKOI8_RFonts NO */
/* #define BuildJapaneseFonts NO */
/* #define BuildJISX0201Fonts NO */
/* #define BuildKoreanFonts NO */
/* #define BuildChineseFonts NO */
/* DOCUMENTATION SETTINGS ********************************************/
/* These setting are the defaults. ***********************************/
/* #define BuildLinuxDocHtml NO */ /* X Docs in Html format */
/* #define BuildLinuxDocPS NO */ /* PostScript format */
/* #define BuildAllSpecsDocs NO */ /* Various docs */
/* #define BuildHtmlManPages NO */
/* GENERAL SETTINGS: You generally want to leave these alone when
* building X on an LFS system ***************************************/
#define GccWarningOptions -pipe /* Speed up compiles */
#define TermcapLibrary -lncurses
#define XprtServer YES /* Needed by realplayer */
#define XnestServer YES
#define XAppLoadDir EtcX11Directory/app-defaults
#define VarLibDir /var/lib
#define XFree86Devel NO
#define FSUseSyslog YES
#define ThreadedX YES
#define HasPam NO
#define SystemManDirectory /usr/share/man /*Instead of /usr/man*/
#define HasLibCrypt YES
#define InstallXinitConfig YES
#define InstallXdmConfig YES
#define ForceNormalLib YES
#define BuildSpecsDocs NO
/* End XFree86 host.def file */
<command>EOF</command></userinput></screen>
<para>Edit the file for your hardware and desires.</para>
</sect3>
<sect3>
<title>Build Commands</title>
<para>Some vulnerabilities were reported in <filename
class="libraryfile">libXpm</filename>. A remote user may be able to
execute arbitrary code on applications that use <filename
class="libraryfile">libXpm</filename>. The <application>Xorg</application>
team released a patch for their version 6.8.0 but it works for
<application>XFree86</application> as well. Apply the patch:
</para>
<screen><userinput><command>patch -Np1 -i ../xorg-CAN-2004-0687-0688.patch</command></userinput></screen>
<para>Install <application>XFree86</application> by running the following commands:</para>
<screen><userinput><command>sed -i -e "s@^#include &lt;linux/config.h&gt;@/* &amp; */@" \
`grep -lr linux/config.h *` &amp;&amp;
( make WORLDOPTS="" World 2&gt;&amp;1 | \
tee xfree-compile.log &amp;&amp; exit $PIPESTATUS )</command></userinput></screen>
<para>Now, as the root user:</para>
<screen><userinput role='root'><command>make install &amp;&amp;
make install.man &amp;&amp;
ln -sf ../X11R6/bin /usr/bin/X11 &amp;&amp;
ln -sf ../X11R6/lib/X11 /usr/lib/X11 &amp;&amp;
ln -sf ../X11R6/include/X11 /usr/include/X11</command></userinput></screen>
</sect3>
</sect2>
<sect2>
<title>Command explanations</title>
<para><command>sed -i -e "s@^#include &lt;linux/config.h&gt;@...</command>: The
<application>Linux-Libc-Headers</application> package installed in
<acronym>LFS</acronym> installs a
<filename>/usr/include/linux/config.h</filename> file which is not compatible
with userspace applications. The recommended fix for applications including
this file is to remove it (see <ulink
url="http://ep09.pld-linux.org/~mmazur/linux-libc-headers/doc/FAQ">
linux-libc-headers FAQ</ulink>). The <command>sed</command> uses
<command>grep -lr</command> to replace all occurences. If you desire, just
remove (comment) the line in the appropriate video driver file if you
customized <filename>host.def</filename>.
</para>
<para><command>( make WORLDOPTS="" World 2&gt;&amp;1 | tee xfree-compile.log
&amp;&amp; exit $PIPESTATUS )</command>:
This command runs multiple <filename>Makefile</filename>s to completely rebuild
the system. <envar>WORLDOPTS</envar>="" disables the default setting to
continue after encountering an error. <parameter>2&gt;&amp;1</parameter>
redirects error messages to the same location as standard output. The
<command>tee</command> command allows viewing of the output while logging the
results to a file. The parentheses around the command runs the entire comand in
a subshell and finally the <command>exit $PIPESTATUS</command> ensures the
result of the <command>make</command> is returned as the result and not the
result of the <command>tee</command> command.</para>
<note><para>When rebuilding <application>XFree86</application>, a separate
command that may be used if only minor changes are made to the sources is
<command>make Everything</command>. This does not automatically remove
generated files and only rebuilds those files or programs that are out
of date.</para></note>
<para><screen><command>ln -sf ../X11R6/bin /usr/bin/X11
ln -sf ../X11R6/lib/X11 /usr/lib/X11
ln -sf ../X11R6/include/X11 /usr/include/X11</command></screen>
These commands are present to enable other (broken) packages to build
against <application>XFree86</application>, even though the Filesystem
Hierarchy Standard says: "In general, software must not be installed or
managed via the above symbolic links. They are intended for utilization by
users only."</para>
</sect2>
<sect2 id='xfree86-config'>
<title>Configuring <application>XFree86</application></title>
<para>Edit <filename>/etc/ld.so.conf</filename> and add
<filename class="directory">/usr/X11R6/lib</filename>.
Run: </para>
<screen><userinput><command>ldconfig</command></userinput></screen>
<indexterm zone="xfree86 xfree86-config">
<primary sortas="e-etc-ld.so.conf">/etc/ld.so.conf</primary>
</indexterm>
<para>Ensure <filename class="directory">/usr/X11R6/bin</filename>
and <filename class="directory">/usr/X11R6/lib/pkgconfig</filename>
are added to your <envar>PATH</envar> and <envar>PKG_CONFIG_PATH</envar>
environment variables, respectively. Instructions for doing this are
described in the section "<xref linkend='postlfs-config-profile'/>."</para>
<indexterm zone="xfree86 xfree86-config">
<primary sortas="e-etc-X11-XF86Config">/etc/X11/XF86Config</primary>
</indexterm>
<para>Create the <filename>XF86Config</filename> file with:
<screen><userinput><command>cd ~
XFree86 -configure</command></userinput></screen>
The screen will go black and you may hear some clicking of the monitor. This
command will create a file, <filename>XF86Config.new</filename> in your home
directory.</para>
<para>Edit <filename>XF86Config.new</filename> to suit your system. The
details of the file are located in the man page
<command>man XF86Config</command>. Some things you may want to do are:</para>
<itemizedlist>
<listitem><para>Section "Files". Change the order of the font paths searched.
You may want to put 100dpi fonts ahead of 75dpi fonts if your system normally
comes up closer to 100 dots per inch. You may want to remove some font
directories completely.</para></listitem>
<listitem><para>Section "Module". If you are going to install NVidia
drivers, remove the "dri" line.</para></listitem>
<listitem><para>Sections "InputDevice". Specify the
<parameter>Device</parameter> parameter to "/dev/input/mice" and
<parameter>Protocol</parameter> to "auto" to set up your mouse. You may
also want to change the keyboard autorepeat rate by adding
<parameter>Option "Autorepeat" "250 30"</parameter>.</para></listitem>
<listitem><para>Section "Monitor". Specify the
<parameter>VertRefresh</parameter> and <parameter>HorizSync</parameter> values
if the system does not automatically detect the monitor and its values.</para>
</listitem>
<listitem><para>Section "Device". You may want to set some of the options
available for your selected video driver. A description of the driver
parameters is in the man page for your driver.</para></listitem>
<listitem><para>Section "Screen". Add a DefaultDepth statement such
as: <parameter>DefaultDepth 16</parameter>. In the SubSection for your
default depth, add a modes line such as:
<parameter> Modes "1280x1024" "1024x768"</parameter>. The first mode listed
will normally be the starting resolution.</para></listitem>
</itemizedlist>
<para>Test the system with:
<screen><userinput><command>XFree86 -xf86config ~/XF86Config.new</command></userinput></screen>
You will only get a gray background with an X-shaped mouse cursor, but it
confirms the system is working. Exit with Control-Alt-Backspace. If the
system does not work, examine <filename>/var/log/XFree86.0.log</filename> to
see what went wrong.</para>
<para>Move the configuration file to its final location:</para>
<screen><userinput><command>mv ~/XF86Config.new /etc/X11/XF86Config</command></userinput></screen>
<para>Create <filename>.xinitrc</filename>:
<screen><userinput><command>cat &gt; ~/.xinitrc &lt;&lt; "EOF"</command>
# Begin .xinitrc file
xterm -g 80x40+0+0 &amp;
xclock -g 100x100-0+0 &amp;
twm
<command>EOF</command></userinput></screen>
This provides an initial screen with an xterm and a clock that is managed by a
simple window manager, Tab Window Manager. For details of
<command>twm</command>, see the man page.</para>
<indexterm zone="xfree86 xfree86-config">
<primary sortas="e-AA.xinitrc">~/.xinitrc</primary>
</indexterm>
<note>
<para>When needed, <application>XFree86</application> creates the directory
<filename>/tmp/.ICE-unix</filename> if it does not exist. If this directory is
not owned by root, <application>XFree86</application> delays startup by a few
seconds and also appends a warning to the logfile. This also affects startup of
other applications. To improve performance, it is advisable to manually create
the directory before <application>XFree86</application> uses it. Add the file
creation to <filename>/etc/sysconfig/createfiles</filename> that is sourced by
the <filename>/etc/rc.d/init.d/cleanfs</filename> startup script.</para>
<screen><userinput><command>cat &gt;&gt; /etc/sysconfig/createfiles &lt;&lt; "EOF"</command>
/tmp/.ICE-unix dir 1777 root root
<command>EOF</command></userinput></screen>
</note>
<indexterm zone="xfree86 xfree86-config">
<primary sortas="e-etc-sysconfig-createfiles">/etc/sysconfig/createfiles</primary>
</indexterm>
<para>Start <application>X</application> with:
<screen><userinput><command>startx</command></userinput></screen>
to get a basic functional <application>X</application> Window System.</para>
<para>At this point, you should check out <xref linkend='x-setup'/>.</para>
</sect2>
<sect2>
<title>Contents</title>
<para>The <application>XFree86</application> package contains the
<application>X</application> Window System for Linux (and other operating
systems). It includes the <application>X</application> server, fonts,
<command>xterm</command>, a simple window manager (<command>twm</command>),
various utilities, video output drivers, and various input drivers including
the mouse and keyboard.</para>
<para><application>XFree86</application> also contains libraries and header
files for development of the <application>X</application> Window System
programs.</para>
</sect2>
<sect2><title>Description</title>
<note><para>The following lists are not comprehensive. The
full list of programs is in <filename class="directory">/usr/X11R6/bin</filename>. For
additional information about these programs, see the respective man
page.</para></note>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>XFree86, xf86config, xf86cfg, startx, xinit, twm, xterm, xwininfo,
x11perf, xlsfonts, xvidtune, xload, xcalc, xclock, oclock, xmodmap</seg>
<seg>libGL.so, libGLU.so, libSM.so, libXi.so, libXrender.so, libXt.so, libXfont.so</seg>
<seg>/usr/X11R6/, /etc/X11/</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<varlistentry id="XFree86">
<term><command>XFree86</command></term>
<listitem>
<para>is the X11R6 implementation of the <application>X</application> Window System server.</para>
<indexterm zone="xfree86 XFree86">
<primary sortas="b-XFree86">XFree86</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xf86config">
<term><command>xf86config</command></term>
<listitem>
<para>is an interactive program for generating an <filename>XF86Config</filename> file for use with
<application>XFree86</application> <application>X</application> servers.</para>
<indexterm zone="xfree86 xf86config">
<primary sortas="b-xf86config">xf86config</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xf86cfg">
<term><command>xf86cfg</command></term>
<listitem>
<para> is a tool to configure <application>XFree86</application> that can be used to either write the
initial configuration file or make customizations to the current configuration.</para>
<indexterm zone="xfree86 xf86cfg">
<primary sortas="b-xf86cfg">xf86cfg</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="startx">
<term><command>startx</command></term>
<listitem>
<para>is a script to initialize the <application>X</application> session. It
runs <command>xinit</command>.</para>
<indexterm zone="xfree86 startx">
<primary sortas="b-startx">startx</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xinit">
<term><command>xinit</command></term>
<listitem>
<para>is used to start the <application>X</application> Window System server.</para>
<indexterm zone="xfree86 xinit">
<primary sortas="b-xinit">xinit</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="twm">
<term><command>twm</command></term>
<listitem>
<para> (Tab Window Manager) is a window manager included with the
<application>X</application> Window System.</para>
<indexterm zone="xfree86 twm">
<primary sortas="b-twm">twm</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xterm">
<term><command>xterm</command></term>
<listitem>
<para>is a terminal emulator for <application>X</application>.</para>
<indexterm zone="xfree86 xterm">
<primary sortas="b-xterm">xterm</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xwininfo">
<term><command>xwininfo</command></term>
<listitem>
<para> is a window information utility for <application>X</application>.</para>
<indexterm zone="xfree86 xwininfo">
<primary sortas="b-xwininfo">xwininfo</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="x11perf">
<term><command>x11perf</command></term>
<listitem>
<para>is an <application>X</application>11 server performance test program.</para>
<indexterm zone="xfree86 x11perf">
<primary sortas="b-x11perf">x11perf</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xlsfonts">
<term><command>xlsfonts</command></term>
<listitem>
<para>is a program to list fonts available to the <application>X</application> server.</para>
<indexterm zone="xfree86 xlsfonts">
<primary sortas="b-xlsfonts">xlsfonts</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xvidtune">
<term><command>xvidtune</command></term>
<listitem>
<para>is a video mode tuner for <application>XFree86</application>.</para>
<indexterm zone="xfree86 xvidtune">
<primary sortas="b-xvidtune">xvidtune</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xload">
<term><command>xload</command></term>
<listitem>
<para> is a system load average display for <application>X</application>.</para>
<indexterm zone="xfree86 xload">
<primary sortas="b-xload">xload</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xcalc">
<term><command>xcalc</command></term>
<listitem>
<para>is a scientific calculator for <application>X</application>.</para>
<indexterm zone="xfree86 xcalc">
<primary sortas="b-xcalc">xcalc</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xclock">
<term><command>xclock</command></term>
<listitem>
<para>is a clock programs for <application>X</application>.</para>
<indexterm zone="xfree86 xclock">
<primary sortas="b-xclock">xclock</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="oclock">
<term><command>oclock</command></term>
<listitem>
<para>is a clock programs for <application>X</application>.</para>
<indexterm zone="xfree86 oclock">
<primary sortas="b-oclock">oclock</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="xmodmap">
<term><command>xmodmap</command></term>
<listitem>
<para>xmodmap.</para>
<indexterm zone="xfree86 xmodmap">
<primary sortas="b-xmodmap">xmodmap</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>