mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-02-01 21:12:12 +08:00
6e3484383f
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5098 af4574ff-66df-0310-9fd7-8a98e5e911e0
828 lines
32 KiB
XML
828 lines
32 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
%general-entities;
|
|
|
|
<!ENTITY xfree86-download-http "http://gnu.kookel.org/ftp/XFree86/&xfree86-version;/source/">
|
|
<!ENTITY xfree86-download-ftp "ftp://ftp.xfree86.org/pub/XFree86/&xfree86-version;/source/">
|
|
<!ENTITY xfree86-md5sum "ftp://ftp.xfree86.org/pub/XFree86/&xfree86-version;/source/SUMS.md5sum">
|
|
<!ENTITY xfree86-size "51 MB">
|
|
<!ENTITY xfree86-buildsize "775 MB">
|
|
<!ENTITY xfree86-time "12 SBU">
|
|
]>
|
|
|
|
<sect1 id="xfree86" xreflabel="XFree86-&xfree86-version;">
|
|
<?dbhtml filename="xfree86.html" ?>
|
|
|
|
<sect1info>
|
|
<othername>$LastChangedBy$</othername>
|
|
<date>$Date$</date>
|
|
</sect1info>
|
|
|
|
<title>XFree86-&xfree86-version;</title>
|
|
|
|
<indexterm zone="xfree86">
|
|
<primary sortas="a-xfree86">XFree86</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to XFree86</title>
|
|
|
|
<para><application>XFree86</application> is a freely redistributable
|
|
open-source implementation of the <application>X Window
|
|
System</application>. <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 (API).</para>
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<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 MD5 sum: &xfree86-md5sum;</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>
|
|
|
|
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
|
<itemizedlist spacing='compact'>
|
|
<listitem>
|
|
<para>Required patch: <ulink
|
|
url="&patch-root;/XFree86-&xfree86-version;-kernel_headers-1.patch"/>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<bridgehead renderas="sect3">XFree86 Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para><xref linkend="libpng"/></para>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<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>
|
|
|
|
<bridgehead renderas="sect3">Download Instructions</bridgehead>
|
|
|
|
<para>There are several files that need to be fetched from the download
|
|
location:</para>
|
|
|
|
<itemizedlist spacing='compact'>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-1.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-2.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-3.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-4.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-5.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-src-6.tgz</filename></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><filename>XFree86-&xfree86-version;-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.x.tgz</filename>, which contain programs to
|
|
regenerate hardcopy documentation, and <filename>utils-1.1.x.tgz</filename>,
|
|
which contain <application>GNU TAR</application> and
|
|
<application>zlib</application> which are already installed on an
|
|
LFS system.</para>
|
|
|
|
<para>To check your downloads for integrity, download the
|
|
<filename>SUMS.md5sum</filename> file. Then:</para>
|
|
|
|
<screen><userinput>md5sum -c SUMS.md5sum</userinput></screen>
|
|
|
|
<para>The only errors you should see are for <filename>README</filename>,
|
|
<filename>doctools-1.3.x.tgz</filename>, <filename>utils-1.1.x.tgz</filename>
|
|
and <filename>XFree86-xtest-4.0.x.tar.bz2</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>
|
|
-->
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="kernel" id='xfree86-kernel'>
|
|
<title>Kernel Configuration</title>
|
|
|
|
<para>If you have an Intel P6 (Pentium Pro, Pentium II and later), it is
|
|
recommended that you compile MTRR (Memory Type Range Registers) support
|
|
into the kernel. The kernel can map Cyrix and AMD CPUs to the MTRR
|
|
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 PCI
|
|
or AGP video cards.</para>
|
|
|
|
<indexterm zone="xfree86 xfree86-kernel">
|
|
<primary sortas="d-xfree86">XFree86</primary>
|
|
</indexterm>
|
|
|
|
<para>In the "Character Devices" section, enable AGP 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
|
|
(DRI) supported video card. A complete list of DRI 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 DRI. If you intend to use these drivers, do not
|
|
enable DRI.</para>
|
|
|
|
<para>If you made any changes to the kernel configuration, recompile and
|
|
install the new kernel.</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of XFree86</title>
|
|
|
|
<sect3>
|
|
<title>Setting Up a Shadow Directory</title>
|
|
|
|
<para>When building <application>XFree86</application>, you should create
|
|
a shadow directory of symbolic links for the compiled code. To do that,
|
|
first make <command>lndir</command>. Starting from the
|
|
<filename class='directory'>xc</filename> directory:</para>
|
|
|
|
<screen><userinput>pushd config/util &&
|
|
make -f Makefile.ini lndir</userinput></screen>
|
|
|
|
<para>Now, as the <systemitem class="username">root</systemitem>
|
|
user:</para>
|
|
|
|
<screen role="root"><userinput>cp -v lndir /usr/bin/</userinput></screen>
|
|
|
|
<para>And back as an unprivileged user:</para>
|
|
|
|
<screen><userinput>popd</userinput></screen>
|
|
|
|
<para>Now create the shadow tree:</para>
|
|
|
|
<screen><userinput>mkdir ../xcbuild &&
|
|
cd ../xcbuild &&
|
|
lndir ../xc</userinput></screen>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Creating 'host.def'</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">xcbuild</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 (/* and */)
|
|
are balanced. Most of the entries in the file below are commented
|
|
out with the default settings shown.</para>
|
|
</note>
|
|
|
|
<screen><userinput>cat > config/cf/host.def << "EOF"
|
|
<literal>/* 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 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 */</literal>
|
|
EOF</userinput></screen>
|
|
|
|
<para>Edit the file for your hardware and desires.</para>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Build Commands</title>
|
|
|
|
<para>Install <application>XFree86</application> by running the
|
|
following commands:</para>
|
|
|
|
<screen><userinput>patch -Np1 -i ../XFree86-&xfree86-version;-kernel_headers-1.patch &&
|
|
sed -i -e "s@^#include <linux/config.h>@/* & */@" \
|
|
`grep -lr linux/config.h *` &&
|
|
( make WORLDOPTS="" World 2>&1 | \
|
|
tee xfree-compile.log && exit $PIPESTATUS )</userinput></screen>
|
|
|
|
<para>Now, as the <systemitem class="username">root</systemitem>
|
|
user:</para>
|
|
|
|
<screen role="root"><userinput>make install &&
|
|
make install.man &&
|
|
ln -v -sf ../X11R6/bin /usr/bin/X11 &&
|
|
ln -v -sf ../X11R6/lib/X11 /usr/lib/X11 &&
|
|
ln -v -sf ../X11R6/include/X11 /usr/include/X11</userinput></screen>
|
|
|
|
<para><application>XFree86</application> installs the
|
|
<application>X Render</application> extension library but does not
|
|
install the corresponding <application>pkg-config</application> file.
|
|
Create the file by issuing the following command as the
|
|
<systemitem class="username">root</systemitem> user:</para>
|
|
|
|
<screen role="root"><userinput>cat > /usr/X11R6/lib/pkgconfig/xrender.pc << "EOF"
|
|
<literal>prefix=/usr/X11R6
|
|
exec_prefix=${prefix}
|
|
libdir=${exec_prefix}/lib
|
|
includedir=${prefix}/include
|
|
|
|
Name: Xrender
|
|
Description: X Render Library
|
|
Version: 0.8.3
|
|
Cflags: -I${includedir} -I/usr/X11R6/include
|
|
Libs: -L${libdir} -lXrender -L/usr/X11R6/lib -lX11</literal>
|
|
EOF</userinput></screen>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para><command>sed -i -e "s@^#include <linux/config.h>@...</command>:
|
|
The <application>Linux-Libc-Headers</application> package installed in
|
|
LFS 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 occurrences. 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>&1 | tee xfree-compile.log
|
|
&& 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. <option>2>&1</option>
|
|
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
|
|
command 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><command>ln -v -sf ...</command>: These commands are present to
|
|
enable other (broken) packages to build against
|
|
<application>XFree86</application>, even though the Filesystem Hierarchy
|
|
Standard says: <quote>In general, software must not be installed or managed
|
|
via the above symbolic links. They are intended for utilization by
|
|
users only.</quote></para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="configuration" id="xfree86-config">
|
|
<title>Configuring XFree86</title>
|
|
|
|
<para>As the <systemitem class="username">root</systemitem> user: Edit
|
|
<filename>/etc/ld.so.conf</filename> and add
|
|
<filename class="directory">/usr/X11R6/lib</filename>, then run:</para>
|
|
|
|
<screen role="root"><userinput>ldconfig</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:</para>
|
|
|
|
<screen><userinput>cd ~ &&
|
|
XFree86 -configure</userinput></screen>
|
|
|
|
<para>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". You may want to change the
|
|
keyboard autorepeat rate by adding
|
|
<option>Option "Autorepeat" "250 30"</option>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Section "Monitor". Specify the <option>VertRefresh</option>
|
|
and <option>HorizSync</option> 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:
|
|
<option>DefaultDepth 24</option>. In the SubSection for your
|
|
default depth, add a modes line such as:
|
|
<option>Modes "1600x1200" "1280x1024" "1024x768"</option>. The
|
|
first mode listed will normally be the starting resolution.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Test the system with:</para>
|
|
|
|
<screen><userinput>XFree86 -xf86config ~/XF86Config.new</userinput></screen>
|
|
|
|
<para>You will only get a gray background with an X-shaped mouse cursor,
|
|
but it confirms the system is working. Exit with
|
|
<keycap>Control+Alt+Backspace</keycap>. If the system does not work,
|
|
examine <filename>/var/log/XFree86.0.log</filename> to see what went
|
|
wrong.</para>
|
|
|
|
<para>As the <systemitem class="username">root</systemitem> user:
|
|
move the configuration file to its final location:</para>
|
|
|
|
<screen role="root"><userinput>mv ~/XF86Config.new /etc/X11/XF86Config</userinput></screen>
|
|
|
|
<para>Create <filename>.xinitrc</filename>:</para>
|
|
|
|
<screen><userinput>cat > ~/.xinitrc << "EOF"
|
|
<literal># Begin .xinitrc file
|
|
xterm -g 80x40+0+0 &
|
|
xclock -g 100x100-0+0 &
|
|
twm</literal>
|
|
EOF</userinput></screen>
|
|
|
|
<para>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 <systemitem
|
|
class="username">root</systemitem>, <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 role="root"><userinput>cat >> /etc/sysconfig/createfiles << "EOF"
|
|
<literal>/tmp/.ICE-unix dir 1777 root root</literal>
|
|
EOF</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:</para>
|
|
|
|
<screen><userinput>startx</userinput></screen>
|
|
|
|
<para>to get a basic functional <application>X Window
|
|
System</application>.</para>
|
|
|
|
<para>At this point, you should check out <xref linkend='x-setup'/>
|
|
for the necessary configuration to make <application>X</application>
|
|
fully functional. Additionally, you can have a look at <xref
|
|
linkend='x-config'/> for information on fine tuning your
|
|
<application>X</application> configuration.</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 id="xfree86-contents" role="content"
|
|
xreflabel="XFree86 Contents and Descriptions">
|
|
<title>Contents</title>
|
|
|
|
<para>The <application>XFree86</application> package contains the
|
|
<application>X Window System</application> 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 Window System</application>
|
|
programs.</para>
|
|
|
|
<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, and xmodmap</seg>
|
|
<seg>libGL.so, libGLU.so, libSM.so, libXi.so, libXrender.so,
|
|
libXt.so, and libXfont.so</seg>
|
|
<seg>/usr/X11R6/ and /etc/X11/</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="XFree86">
|
|
<term><command>XFree86</command></term>
|
|
<listitem>
|
|
<para>is the X11R6 implementation of the <application>X Window
|
|
System</application> 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 Window
|
|
System</application> 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 Window System</application>.</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>is a utility for modifying keymaps and pointer button
|
|
mappings in <application>X</application>.</para>
|
|
<indexterm zone="xfree86 xmodmap">
|
|
<primary sortas="b-xmodmap">xmodmap</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|