1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
2 | <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
|
---|
3 | "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
|
---|
4 | <!ENTITY % general-entities SYSTEM "../../general.ent">
|
---|
5 | %general-entities;
|
---|
6 |
|
---|
7 | <!ENTITY xfree86-download-http "http://gnu.kookel.org/ftp/XFree86/4.4.0/source/">
|
---|
8 | <!ENTITY xfree86-download-ftp "ftp://ftp.xfree86.org/pub/XFree86/4.4.0/source/">
|
---|
9 | <!ENTITY xfree86-size "52 MB">
|
---|
10 | <!ENTITY xfree86-buildsize "775 MB">
|
---|
11 | <!ENTITY xfree86-time "11.6 SBU">
|
---|
12 | ]>
|
---|
13 |
|
---|
14 | <sect1 id="xfree86" xreflabel="XFree86-&xfree86-version;">
|
---|
15 | <sect1info>
|
---|
16 | <othername>$LastChangedBy$</othername>
|
---|
17 | <date>$Date$</date>
|
---|
18 | </sect1info>
|
---|
19 | <?dbhtml filename="xfree86.html" ?>
|
---|
20 | <title>XFree86-&xfree86-version;</title>
|
---|
21 |
|
---|
22 | <sect2>
|
---|
23 | <title>Introduction to <application>XFree86</application></title>
|
---|
24 |
|
---|
25 | <para><application>XFree86</application> is a freely redistributable
|
---|
26 | open-source implementation of the <application>X</application> Window System.
|
---|
27 | <application>XFree86</application> provides a client/server interface between
|
---|
28 | display hardware (the mouse, keyboard, and video displays) and the desktop
|
---|
29 | environment, while also providing both the windowing infrastructure and a
|
---|
30 | standardized application interface (<acronym>API</acronym>).</para>
|
---|
31 |
|
---|
32 | <sect3><title>Package information</title>
|
---|
33 | <itemizedlist spacing='compact'>
|
---|
34 | <listitem><para>Download (HTTP):
|
---|
35 | <ulink url="&xfree86-download-http;"/></para></listitem>
|
---|
36 | <listitem><para>Download (FTP):
|
---|
37 | <ulink url="&xfree86-download-ftp;"/></para></listitem>
|
---|
38 | <listitem><para>Download size:
|
---|
39 | &xfree86-size;</para></listitem>
|
---|
40 | <listitem><para>Estimated disk space required:
|
---|
41 | &xfree86-buildsize;</para></listitem>
|
---|
42 | <listitem><para>Estimated build time:
|
---|
43 | &xfree86-time;</para></listitem></itemizedlist>
|
---|
44 | </sect3>
|
---|
45 |
|
---|
46 | <sect3><title>Additional downloads</title>
|
---|
47 | <itemizedlist spacing='compact'>
|
---|
48 | <listitem><para>Security patch: <ulink
|
---|
49 | url="http://www.x.org/pub/X11R6.8.0/patches/xorg-CAN-2004-0687-0688.patch"/>
|
---|
50 | </para></listitem>
|
---|
51 | </itemizedlist></sect3>
|
---|
52 |
|
---|
53 | <sect3><title><application>XFree86</application> dependencies</title>
|
---|
54 |
|
---|
55 | <sect4><title>Required</title>
|
---|
56 | <para><xref linkend="libpng"/></para>
|
---|
57 | </sect4>
|
---|
58 |
|
---|
59 | <sect4><title>Optional</title>
|
---|
60 | <para><xref linkend="Linux_PAM"/>; the
|
---|
61 | following packages are included in the <application>XFree86</application>
|
---|
62 | package, however they are updated more often than the
|
---|
63 | <application>XFree86</application> package and are highly recommended:
|
---|
64 | <xref linkend="expat"/>, <xref linkend="freetype2"/>,
|
---|
65 | <xref linkend="fontconfig"/>.</para>
|
---|
66 |
|
---|
67 | <note><para>If you choose not to install <application>expat</application>,
|
---|
68 | <application>freetype2</application>, and <application>fontconfig</application>,
|
---|
69 | the <filename>host.def</filename> file below will have to be modified to
|
---|
70 | instruct <application>XFree86</application> to build them.</para></note>
|
---|
71 | </sect4>
|
---|
72 |
|
---|
73 | </sect3>
|
---|
74 |
|
---|
75 | <sect3><title>Download Instructions</title>
|
---|
76 |
|
---|
77 | <para>There are several files that need to be fetched from the download
|
---|
78 | location:</para>
|
---|
79 | <itemizedlist spacing='compact'>
|
---|
80 | <listitem><para><filename>XFree86-4.4.0-src-1.tgz</filename></para></listitem>
|
---|
81 | <listitem><para><filename>XFree86-4.4.0-src-2.tgz</filename></para></listitem>
|
---|
82 | <listitem><para><filename>XFree86-4.4.0-src-3.tgz</filename></para></listitem>
|
---|
83 | <listitem><para><filename>XFree86-4.4.0-src-4.tgz</filename></para></listitem>
|
---|
84 | <listitem><para><filename>XFree86-4.4.0-src-5.tgz</filename></para></listitem>
|
---|
85 | <listitem><para><filename>XFree86-4.4.0-src-6.tgz</filename></para></listitem>
|
---|
86 | <listitem><para><filename>XFree86-4.4.0-src-7.tgz</filename></para></listitem>
|
---|
87 | </itemizedlist>
|
---|
88 |
|
---|
89 | <para>The first three packages are the <application>XFree86</application>
|
---|
90 | programs, the fourth and fifth are fonts, the sixth is normal documentation,
|
---|
91 | and the seventh is hardcopy documentation. There are also two packages
|
---|
92 | <filename>doctools-1.3.1.tgz</filename>, which contain programs to regenerate
|
---|
93 | hardcopy documentation, and <filename>utils-1.1.0.tgz</filename>, which contain
|
---|
94 | <application><acronym>GNU</acronym> <acronym>TAR</acronym></application>
|
---|
95 | and <application>zlib</application> which are already installed on an
|
---|
96 | <acronym>LFS</acronym> system.</para>
|
---|
97 |
|
---|
98 | <para>To check your downloads for integrity, download the
|
---|
99 | <filename>SUMS.md5sum</filename> file. Then:</para>
|
---|
100 |
|
---|
101 | <screen><userinput><command>md5sum -c SUMS.md5sum</command></userinput></screen>
|
---|
102 |
|
---|
103 | <para>The only errors you should see are for <filename>README</filename>,
|
---|
104 | <filename>doctools-1.3.1.tgz</filename>, and
|
---|
105 | <filename>utils-1.1.0.tgz</filename> files if you did not download them.</para>
|
---|
106 |
|
---|
107 | <!--
|
---|
108 | <para>The fixes subdirectory also has a <filename>SUMS.md5sum</filename>. Note that
|
---|
109 | this is the same filename as the sums for the main sources, so you need to rename the
|
---|
110 | file if you download it. Otherwise, you can just look at it and use it to
|
---|
111 | check against the patch files:</para>
|
---|
112 | <screen><userinput><command>md5sum 4.3.0-4.3.0.1.diff.gz</command></userinput>
|
---|
113 | <userinput><command>md5sum fontfile.diff</command></userinput></screen>
|
---|
114 |
|
---|
115 | <para>After unpacking the <filename>X430src-?.tgz</filename> files and uncompressing the
|
---|
116 | diff file, change to the <filename class="directory">xc</filename> directory and run:</para>
|
---|
117 |
|
---|
118 | <screen><userinput><command>patch -Np1 -i ../4.3.0-4.3.0.1.diff</command></userinput>
|
---|
119 | <userinput><command>pushd lib/font/fontfile/</command></userinput>
|
---|
120 | <userinput><command>patch -N -i ../../../../fontfile.diff</command></userinput>
|
---|
121 | <userinput><command>popd</command></userinput></screen>
|
---|
122 | -->
|
---|
123 |
|
---|
124 | </sect3>
|
---|
125 | </sect2>
|
---|
126 |
|
---|
127 | <sect2>
|
---|
128 | <title>Installation of <application>XFree86</application></title>
|
---|
129 |
|
---|
130 | <sect3>
|
---|
131 | <title>Kernel Compilation Settings</title>
|
---|
132 |
|
---|
133 | <para>If you have an Intel P6 (Pentium Pro, Pentium II and later), it is
|
---|
134 | recommended that you compile <acronym>MTRR</acronym> (Memory Type Range
|
---|
135 | Registers) support into the kernel. The kernel can map Cyrix and AMD
|
---|
136 | <acronym>CPU</acronym>s to the <acronym>MTRR</acronym> interface, so selecting
|
---|
137 | this option is useful for those processors also. This option is found in the
|
---|
138 | "Processor type and features" menu. It can increase performance of image write
|
---|
139 | operations 2.5 times or more on <acronym>PCI</acronym> or
|
---|
140 | <acronym>AGP</acronym> video cards.</para>
|
---|
141 |
|
---|
142 | <para>In the "Character Devices" section, enable <acronym>AGP</acronym> Support
|
---|
143 | and select the chipset support on your motherboard. If you do not know the
|
---|
144 | chipset, you may select all the chip types at the expense of extra kernel size.
|
---|
145 | You can usually determine your motherboard's chipset by running the command
|
---|
146 | <command>lspci</command>, a program from the <xref linkend="pciutils"/> package.
|
---|
147 | </para>
|
---|
148 |
|
---|
149 | <para>In the "Character Devices" section, <emphasis>disable</emphasis> Direct
|
---|
150 | Rendering Manager unless you have a Direct Rendering Infrastructure
|
---|
151 | (<acronym>DRI</acronym>) supported video card. A complete list of
|
---|
152 | <acronym>DRI</acronym> supported video cards can be found at
|
---|
153 | <ulink url="http://dri.sourceforge.net" /> in the Status section. Currently,
|
---|
154 | supported cards include those from 3dfx (Voodoo, Banshee), 3Dlabs,
|
---|
155 | ATI (Rage Pro, Rage 128, Radeon 7X00, Radeon 2), Intel (i810, i815), and
|
---|
156 | Matrox (G200, G400, G450).</para>
|
---|
157 |
|
---|
158 | <para>Additionally NVidia provides their own closed source binary drivers,
|
---|
159 | which do not make use of <acronym>DRI</acronym>. If you intend to use these
|
---|
160 | drivers, do not enable <acronym>DRI</acronym>.</para>
|
---|
161 |
|
---|
162 | <para>If you made any changes to the kernel configuration, recompile and
|
---|
163 | install the new kernel.</para>
|
---|
164 |
|
---|
165 | <note><para>If you build <application>XFree86</application> in a
|
---|
166 | <command>chroot</command> environment, make sure the kernel version of the base
|
---|
167 | system and the target system are the same.</para>
|
---|
168 | </note>
|
---|
169 |
|
---|
170 | </sect3>
|
---|
171 |
|
---|
172 | <sect3><title>Creating <filename>host.def</filename></title>
|
---|
173 |
|
---|
174 | <para>Although <application>XFree86</application> will compile without a
|
---|
175 | <filename>host.def</filename> file, the following file is recommended for
|
---|
176 | customizing the installation. Start from the
|
---|
177 | <filename class="directory">xc</filename> directory.</para>
|
---|
178 |
|
---|
179 | <note><para>The <filename>host.def</filename> file is a
|
---|
180 | <application>C</application> file, not the usual configuration file. If you
|
---|
181 | make any changes, be sure the comment characters (<userinput>/*</userinput>
|
---|
182 | and <userinput>*/</userinput>) are balanced. Most of the entries in the file
|
---|
183 | below are commented out with the default settings shown.</para></note>
|
---|
184 |
|
---|
185 | <screen><userinput><command>cat > config/cf/host.def << "EOF"</command>
|
---|
186 | /* Begin XFree86 host.def file */
|
---|
187 |
|
---|
188 | /* System Related Information. If you read and configure only one
|
---|
189 | * section then it should be this one. The Intel architecture defaults
|
---|
190 | * are set for a i686 and higher. Axp is for the Alpha architecture
|
---|
191 | * and Ppc is for the Power PC. Note that there have been reports that
|
---|
192 | * the Ppc optimization line causes segmentation faults during build.
|
---|
193 | * If that happens, try building without the DefaultGcc2PpcOpt line. */
|
---|
194 |
|
---|
195 | /* #define DefaultGcc2i386Opt -O2 -fomit-frame-pointer -march=i686 */
|
---|
196 | /* #define DefaultGcc2AxpOpt -O2 -mcpu=ev6 */
|
---|
197 | /* #define DefaultGcc2PpcOpt -O2 -mcpu=750 */
|
---|
198 |
|
---|
199 | /* The following definitions are normally set properly by XFree86's
|
---|
200 | * scripts. You can uncomment them if you want to make sure. *********/
|
---|
201 |
|
---|
202 | /* #define HasMTRRSupport YES */ /* Enabled in kernel; */
|
---|
203 | /* see kernel docs */
|
---|
204 | /* #define HasMMXSupport NO */ /* Any i586 or above */
|
---|
205 | /* #define HasKatmaiSupport NO */ /* PIII SSE instructions */
|
---|
206 | /* #define Has3DNowSupport NO */ /* AMD instructions */
|
---|
207 |
|
---|
208 |
|
---|
209 | /* This setting reduces compile time a little by omitting rarely used
|
---|
210 | * input devices. You can find the complete list in
|
---|
211 | * config/cf/xfree86.cf *********************************************/
|
---|
212 |
|
---|
213 | #define XInputDrivers mouse void
|
---|
214 |
|
---|
215 | /* VIDEO DRIVERS ****************************************************/
|
---|
216 |
|
---|
217 | /* If you are sure you only want the drivers for one or a few video
|
---|
218 | * cards, you can delete the drivers you do not want. ***************/
|
---|
219 |
|
---|
220 |
|
---|
221 | #define XF86CardDrivers mga glint nv tga s3 s3virge sis rendition \
|
---|
222 | neomagic i740 tdfx savage \
|
---|
223 | cirrus vmware tseng trident chips apm \
|
---|
224 | GlideDriver fbdev i128 nsc \
|
---|
225 | ati i810 AgpGartDrivers DevelDrivers ark \
|
---|
226 | cyrix siliconmotion \
|
---|
227 | vesa vga \
|
---|
228 | dummy XF86OSCardDrivers XF86ExtraCardDrivers
|
---|
229 |
|
---|
230 |
|
---|
231 | /* USER AND SYSTEM DEFAULT PATHS *************************************/
|
---|
232 |
|
---|
233 | /* These settings set the PATH variables used by xdm. See README for */
|
---|
234 | /* detailed description and modify the following as per your need. ***/
|
---|
235 |
|
---|
236 | /* #define DefaultSystemPath \
|
---|
237 | /usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin */
|
---|
238 | /* #define DefaultUserPath /usr/bin:/bin:/usr/X11R6/bin */
|
---|
239 |
|
---|
240 | /* FONT SERVER AND LIBRARY SETTINGS **********************************/
|
---|
241 |
|
---|
242 | /* These settings are the defaults **********************************/
|
---|
243 |
|
---|
244 | /* #define BuildFontServer YES */ /*For Ghostscript Print Server*/
|
---|
245 | /* #define SharedLibFont YES */
|
---|
246 | /* #define CompressAllFonts YES */
|
---|
247 | /* #define GzipFontCompression YES */
|
---|
248 |
|
---|
249 | /* These settings ensure we use our libraries ************************/
|
---|
250 | #define HasFreetype2 YES
|
---|
251 | #define HasFontconfig YES
|
---|
252 | #define HasExpat YES
|
---|
253 | #define HasLibpng YES
|
---|
254 | #define HasZlib YES
|
---|
255 |
|
---|
256 | /* The font path can be redefined in the XF86Config file *************/
|
---|
257 |
|
---|
258 | /*
|
---|
259 | #define DefaultFontPath $(FONTDIR)/misc/,$(FONTDIR)/75dpi/,\
|
---|
260 | $(FONTDIR)/100dpi/,$(FONTDIR)/Type1,$(FONTDIR)/local,\
|
---|
261 | $(FONTDIR)/TrueType,$(FONTDIR)/CID,$(FONTDIR)/Speedo
|
---|
262 | */
|
---|
263 |
|
---|
264 |
|
---|
265 | /* INTERNATIONAL FONTS. Change to YES if you need any of them. These
|
---|
266 | * are the defaults. **************************************************/
|
---|
267 |
|
---|
268 | /* #define BuildCyrillicFonts NO */
|
---|
269 | /* #define BuildArabicFonts NO */
|
---|
270 | /* #define BuildISO8859_6Fonts NO */
|
---|
271 | /* #define BuildGreekFonts NO */
|
---|
272 | /* #define BuildISO8859_7Fonts NO */
|
---|
273 | /* #define BuildHebrewFonts NO */
|
---|
274 | /* #define BuildISO8859_8Fonts NO */
|
---|
275 | /* #define BuildKOI8_RFonts NO */
|
---|
276 | /* #define BuildJapaneseFonts NO */
|
---|
277 | /* #define BuildJISX0201Fonts NO */
|
---|
278 | /* #define BuildKoreanFonts NO */
|
---|
279 | /* #define BuildChineseFonts NO */
|
---|
280 |
|
---|
281 | /* DOCUMENTATION SETTINGS ********************************************/
|
---|
282 |
|
---|
283 | /* These setting are the defaults. ***********************************/
|
---|
284 |
|
---|
285 | /* #define BuildLinuxDocHtml NO */ /* X Docs in Html format */
|
---|
286 | /* #define BuildLinuxDocPS NO */ /* PostScript format */
|
---|
287 | /* #define BuildAllSpecsDocs NO */ /* Various docs */
|
---|
288 | /* #define BuildHtmlManPages NO */
|
---|
289 |
|
---|
290 | /* GENERAL SETTINGS: You generally want to leave these alone when
|
---|
291 | * building X on an LFS system ***************************************/
|
---|
292 |
|
---|
293 | #define GccWarningOptions -pipe /* Speed up compiles */
|
---|
294 | #define TermcapLibrary -lncurses
|
---|
295 | #define XprtServer YES /* Needed by realplayer */
|
---|
296 | #define XnestServer YES
|
---|
297 | #define XAppLoadDir EtcX11Directory/app-defaults
|
---|
298 | #define VarLibDir /var/lib
|
---|
299 | #define XFree86Devel NO
|
---|
300 | #define FSUseSyslog YES
|
---|
301 | #define ThreadedX YES
|
---|
302 | #define HasPam NO
|
---|
303 | #define SystemManDirectory /usr/share/man /*Instead of /usr/man*/
|
---|
304 | #define HasLibCrypt YES
|
---|
305 | #define InstallXinitConfig YES
|
---|
306 | #define InstallXdmConfig YES
|
---|
307 | #define ForceNormalLib YES
|
---|
308 | #define BuildSpecsDocs NO
|
---|
309 |
|
---|
310 | /* End XFree86 host.def file */
|
---|
311 | <command>EOF</command></userinput></screen>
|
---|
312 |
|
---|
313 | <para>Edit the file for your hardware and desires.</para>
|
---|
314 |
|
---|
315 | </sect3>
|
---|
316 |
|
---|
317 | <sect3>
|
---|
318 | <title>Build Commands</title>
|
---|
319 |
|
---|
320 | <para>Some vulnerabilities were reported in <filename
|
---|
321 | class="libraryfile">libXpm</filename>. A remote user may be able to
|
---|
322 | execute arbitrary code on applications that use <filename
|
---|
323 | class="libraryfile">libXpm</filename>. The <application>Xorg</application>
|
---|
324 | team released a patch for their version 6.8.0 but it works for
|
---|
325 | <application>XFree86</application> as well. Apply the patch:</para>
|
---|
326 |
|
---|
327 | <screen><userinput><command>patch -Np1 -i ../xorg-CAN-2004-0687-0688.patch</command></userinput></screen>
|
---|
328 |
|
---|
329 | <para>Install <application>XFree86</application> by running the following
|
---|
330 | commands:</para>
|
---|
331 |
|
---|
332 | <screen><userinput><command>sed -i -e "s@#include <linux/config.h>@/* & */@" \
|
---|
333 | `grep -lr linux/config.h *` &&
|
---|
334 | ( make WORLDOPTS="" World 2>&1 | \
|
---|
335 | tee xfree-compile.log && exit $PIPESTATUS ) &&
|
---|
336 | make install &&
|
---|
337 | make install.man &&
|
---|
338 | ln -sf ../X11R6/bin /usr/bin/X11 &&
|
---|
339 | ln -sf ../X11R6/lib/X11 /usr/lib/X11 &&
|
---|
340 | ln -sf ../X11R6/include/X11 /usr/include/X11</command></userinput></screen>
|
---|
341 |
|
---|
342 | </sect3>
|
---|
343 |
|
---|
344 | </sect2>
|
---|
345 |
|
---|
346 | <sect2>
|
---|
347 | <title>Command explanations</title>
|
---|
348 |
|
---|
349 | <para><command>sed -i -e "s@#include <linux/config.h>@...</command>: The
|
---|
350 | <application>Linux-Libc-Headers</application> package installed in
|
---|
351 | <acronym>LFS</acronym> installs a
|
---|
352 | <filename>/usr/include/linux/config.h</filename> file which is not compatible
|
---|
353 | with userspace applications. The recommended fix for applications including
|
---|
354 | this file is to remove it (see <ulink
|
---|
355 | url="http://ep09.pld-linux.org/~mmazur/linux-libc-headers/doc/FAQ">
|
---|
356 | linux-libc-headers FAQ</ulink>). The <command>sed</command> uses
|
---|
357 | <command>grep -lr</command> to replace all occurences. If you desire, just
|
---|
358 | remove (comment) the line in the appropriate video driver file if you
|
---|
359 | customized <filename>host.def</filename>.
|
---|
360 | </para>
|
---|
361 |
|
---|
362 | <para><command>( make WORLDOPTS="" World 2>&1 | tee xfree-compile.log
|
---|
363 | && exit $PIPESTATUS )</command>:
|
---|
364 | This command runs multiple <filename>Makefile</filename>s to completely rebuild
|
---|
365 | the system. <envar>WORLDOPTS</envar>="" disables the default setting to
|
---|
366 | continue after encountering an error. <parameter>2>&1</parameter>
|
---|
367 | redirects error messages to the same location as standard output. The
|
---|
368 | <command>tee</command> command allows viewing of the output while logging the
|
---|
369 | results to a file. The parentheses around the command runs the entire comand in
|
---|
370 | a subshell and finally the <command>exit $PIPESTATUS</command> ensures the
|
---|
371 | result of the <command>make</command> is returned as the result and not the
|
---|
372 | result of the <command>tee</command> command.</para>
|
---|
373 |
|
---|
374 | <note><para>When rebuilding <application>XFree86</application>, a separate
|
---|
375 | command that may be used if only minor changes are made to the sources is
|
---|
376 | <command>make Everything</command>. This does not automatically remove
|
---|
377 | generated files and only rebuilds those files or programs that are out
|
---|
378 | of date.</para></note>
|
---|
379 |
|
---|
380 | <para><screen><command>ln -sf ../X11R6/bin /usr/bin/X11
|
---|
381 | ln -sf ../X11R6/lib/X11 /usr/lib/X11
|
---|
382 | ln -sf ../X11R6/include/X11 /usr/include/X11</command></screen>
|
---|
383 | These commands are present to enable other (broken) packages to build
|
---|
384 | against <application>XFree86</application>, even though the Filesystem
|
---|
385 | Hierarchy Standard says: "In general, software must not be installed or
|
---|
386 | managed via the above symbolic links. They are intended for utilization by
|
---|
387 | users only."</para>
|
---|
388 |
|
---|
389 | </sect2>
|
---|
390 |
|
---|
391 | <sect2>
|
---|
392 | <title>Configuring <application>XFree86</application></title>
|
---|
393 |
|
---|
394 | <para>Edit <filename>/etc/ld.so.conf</filename> and add
|
---|
395 | <filename class="directory">/usr/X11R6/lib</filename>.
|
---|
396 | Run: </para>
|
---|
397 | <screen><userinput><command>ldconfig</command></userinput></screen>
|
---|
398 |
|
---|
399 | <para>Ensure <filename class="directory">/usr/X11R6/bin</filename>
|
---|
400 | and <filename class="directory">/usr/X11R6/lib/pkgconfig</filename>
|
---|
401 | are added to your <envar>PATH</envar> and <envar>PKG_CONFIG_PATH</envar>
|
---|
402 | environment variables, respectively. Instructions for doing this are
|
---|
403 | described in the section "<xref linkend='postlfs-config-profile'/>."</para>
|
---|
404 |
|
---|
405 | <para>Create the <filename>XF86Config</filename> file with:
|
---|
406 | <screen><userinput><command>cd ~
|
---|
407 | XFree86 -configure</command></userinput></screen>
|
---|
408 | The screen will go black and you may hear some clicking of the monitor. This
|
---|
409 | command will create a file, <filename>XF86Config.new</filename> in your home
|
---|
410 | directory.</para>
|
---|
411 |
|
---|
412 | <para>Edit <filename>XF86Config.new</filename> to suit your system. The
|
---|
413 | details of the file are located in the man page
|
---|
414 | <command>man XF86Config</command>. Some things you may want to do are:</para>
|
---|
415 |
|
---|
416 | <itemizedlist>
|
---|
417 |
|
---|
418 | <listitem><para>Section "Files". Change the order of the font paths searched.
|
---|
419 | You may want to put 100dpi fonts ahead of 75dpi fonts if your system normally
|
---|
420 | comes up closer to 100 dots per inch. You may want to remove some font
|
---|
421 | directories completely.</para></listitem>
|
---|
422 |
|
---|
423 | <listitem><para>Section "Module". If you are going to install NVidia
|
---|
424 | drivers, remove the "dri" line.</para></listitem>
|
---|
425 |
|
---|
426 | <listitem><para>Sections "InputDevice". Specify the
|
---|
427 | <parameter>Device</parameter> parameter to "/dev/input/mice" and
|
---|
428 | <parameter>Protocol</parameter> to "auto" to set up your mouse. You may
|
---|
429 | also want to change the keyboard autorepeat rate by adding
|
---|
430 | <parameter>Option "Autorepeat" "250 30"</parameter>.</para></listitem>
|
---|
431 |
|
---|
432 | <listitem><para>Section "Monitor". Specify the
|
---|
433 | <parameter>VertRefresh</parameter> and <parameter>HorizSync</parameter> values
|
---|
434 | if the system does not automatically detect the monitor and its values.</para>
|
---|
435 | </listitem>
|
---|
436 |
|
---|
437 | <listitem><para>Section "Device". You may want to set some of the options
|
---|
438 | available for your selected video driver. A description of the driver
|
---|
439 | parameters is in the man page for your driver.</para></listitem>
|
---|
440 |
|
---|
441 | <listitem><para>Section "Screen". Add a DefaultDepth statement such
|
---|
442 | as: <parameter>DefaultDepth 16</parameter>. In the SubSection for your
|
---|
443 | default depth, add a modes line such as:
|
---|
444 | <parameter> Modes "1280x1024" "1024x768"</parameter>. The first mode listed
|
---|
445 | will normally be the starting resolution.</para></listitem>
|
---|
446 |
|
---|
447 | </itemizedlist>
|
---|
448 |
|
---|
449 | <para>Test the system with:
|
---|
450 | <screen><userinput><command>XFree86 -xf86config ~/XF86Config.new</command></userinput></screen>
|
---|
451 | You will only get a gray background with an X-shaped mouse cursor, but it
|
---|
452 | confirms the system is working. Exit with Control-Alt-Backspace. If the
|
---|
453 | system does not work, examine <filename>/var/log/XFree86.0.log</filename> to
|
---|
454 | see what went wrong.</para>
|
---|
455 |
|
---|
456 | <para>Move the configuration file to its final location:</para>
|
---|
457 | <screen><userinput><command>mv ~/XF86Config.new /etc/X11/XF86Config</command></userinput></screen>
|
---|
458 |
|
---|
459 | <para>Create <filename>.xinitrc</filename>:
|
---|
460 | <screen><userinput><command>cat > ~/.xinitrc << "EOF"</command>
|
---|
461 | # Begin .xinitrc file
|
---|
462 | xterm -g 80x40+0+0 &
|
---|
463 | xclock -g 100x100-0+0 &
|
---|
464 | twm
|
---|
465 | <command>EOF</command></userinput></screen>
|
---|
466 | This provides an initial screen with an xterm and a clock that is managed by a
|
---|
467 | simple window manager, Tab Window Manager. For details of
|
---|
468 | <command>twm</command>, see the man page.</para>
|
---|
469 |
|
---|
470 | <note>
|
---|
471 |
|
---|
472 | <para>When needed, <application>XFree86</application> creates the directory
|
---|
473 | <filename>/tmp/.ICE-unix</filename> if it does not exist. If this directory is
|
---|
474 | not owned by root, <application>XFree86</application> delays startup by a few
|
---|
475 | seconds and also appends a warning to the logfile. This also affects startup of
|
---|
476 | other applications. To improve performance, it is advisable to manually create
|
---|
477 | the directory before <application>XFree86</application> uses it. Add the file
|
---|
478 | creation to <filename>/etc/sysconfig/createfiles</filename> that is sourced by
|
---|
479 | the <filename>/etc/rc.d/init.d/cleanfs</filename> startup script.</para>
|
---|
480 |
|
---|
481 | <screen><userinput><command>cat >> /etc/sysconfig/createfiles << "EOF"</command>
|
---|
482 | /tmp/.ICE-unix dir 1777 root root
|
---|
483 | <command>EOF</command></userinput></screen>
|
---|
484 |
|
---|
485 | </note>
|
---|
486 |
|
---|
487 | <para>Start <application>X</application> with:
|
---|
488 | <screen><userinput><command>startx</command></userinput></screen>
|
---|
489 | to get a basic functional <application>X</application> Window System.</para>
|
---|
490 |
|
---|
491 | <para>At this point, you should check out <xref linkend='x-setup'/>.</para>
|
---|
492 |
|
---|
493 | </sect2>
|
---|
494 |
|
---|
495 | <sect2>
|
---|
496 | <title>Contents</title>
|
---|
497 |
|
---|
498 | <para>The <application>XFree86</application> package contains the
|
---|
499 | <application>X</application> Window System for Linux (and other operating
|
---|
500 | systems). It includes the <application>X</application> server, fonts,
|
---|
501 | <command>xterm</command>, a simple window manager (<command>twm</command>),
|
---|
502 | various utilities, video output drivers, and various input drivers including
|
---|
503 | the mouse and keyboard.</para>
|
---|
504 |
|
---|
505 | <para><application>XFree86</application> also contains libraries and header
|
---|
506 | files for development of the <application>X</application> Window System
|
---|
507 | programs.</para>
|
---|
508 |
|
---|
509 | </sect2>
|
---|
510 |
|
---|
511 | <sect2><title>Description</title>
|
---|
512 |
|
---|
513 | <note><para>The following list of programs is not comprehensive. The
|
---|
514 | full list is in <filename class="directory">/usr/X11R6/bin</filename>. For
|
---|
515 | additional information about these programs, see the respective man
|
---|
516 | page.</para></note>
|
---|
517 |
|
---|
518 | <sect3>
|
---|
519 | <title>XFree86</title>
|
---|
520 | <para><application>XFree86</application> is the X11R6 implementation of
|
---|
521 | the <application>X</application> Window System server.
|
---|
522 | </para></sect3>
|
---|
523 |
|
---|
524 | <sect3><title>xf86config</title>
|
---|
525 | <para><command>xf86config</command> is an interactive program for
|
---|
526 | generating an <filename>XF86Config</filename> file for use with
|
---|
527 | <application>XFree86</application> <application>X</application>
|
---|
528 | servers.</para></sect3>
|
---|
529 |
|
---|
530 | <sect3><title>xf86cfg</title>
|
---|
531 | <para><command>xf86cfg</command> is a tool to configure
|
---|
532 | <application>XFree86</application> that can be used to either write the
|
---|
533 | initial configuration file or make customizations to the current
|
---|
534 | configuration.</para></sect3>
|
---|
535 |
|
---|
536 | <sect3><title>startx</title>
|
---|
537 | <para><command>startx</command> is a script to initialize the
|
---|
538 | <application>X</application> session. It runs <command>xinit</command>.</para>
|
---|
539 | </sect3>
|
---|
540 |
|
---|
541 | <sect3><title>xinit</title>
|
---|
542 | <para><command>xinit</command> is used to start the
|
---|
543 | <application>X</application> Window System server.</para></sect3>
|
---|
544 |
|
---|
545 | <sect3><title>twm</title>
|
---|
546 | <para><command>twm</command> (Tab Window Manager) is a window manager included
|
---|
547 | with the <application>X</application> Window System.</para></sect3>
|
---|
548 |
|
---|
549 | <sect3><title>xterm</title>
|
---|
550 | <para><command>xterm</command> is a terminal emulator for
|
---|
551 | <application>X</application>.</para></sect3>
|
---|
552 |
|
---|
553 | <sect3><title>xwininfo</title>
|
---|
554 | <para><command>xwininfo</command> is a window information utility for
|
---|
555 | <application>X</application>.</para></sect3>
|
---|
556 |
|
---|
557 | <sect3><title>x11perf</title>
|
---|
558 | <para><command>x11perf</command> is an <application>X</application>11 server
|
---|
559 | performance test program.</para></sect3>
|
---|
560 |
|
---|
561 | <sect3><title>xlsfonts</title>
|
---|
562 | <para><command>xlsfonts</command> is a program to list fonts available
|
---|
563 | to the <application>X</application> server.</para></sect3>
|
---|
564 |
|
---|
565 | <sect3><title>xvidtune</title>
|
---|
566 | <para><command>xvidtune</command> is a video mode tuner for
|
---|
567 | <application>XFree86</application>.</para></sect3>
|
---|
568 |
|
---|
569 | <sect3><title>xload</title>
|
---|
570 | <para><command>xload</command> is a system load average display for
|
---|
571 | <application>X</application>.</para></sect3>
|
---|
572 |
|
---|
573 | <sect3><title>xcalc</title>
|
---|
574 | <para><command>xcalc</command> is a scientific calculator for
|
---|
575 | <application>X</application>.</para></sect3>
|
---|
576 |
|
---|
577 | <sect3><title>xclock and oclock</title>
|
---|
578 | <para>Clock programs for <application>X</application>.</para></sect3>
|
---|
579 |
|
---|
580 | <sect3><title>xmodmap</title>
|
---|
581 | <para><command>xmodmap</command> is a utility for modifying keymaps and pointer
|
---|
582 | button mappings in <application>X</application>.</para></sect3>
|
---|
583 |
|
---|
584 | </sect2>
|
---|
585 |
|
---|
586 | </sect1>
|
---|