[d7a9c28] | 1 | <sect1 id="xorg" xreflabel="X.org-&xorg-version;">
|
---|
[00bb024c] | 2 | <?dbhtml filename="xorg.html"?>
|
---|
[f35b22f] | 3 | <title>Xorg-&xorg-version;</title>
|
---|
[d7a9c28] | 4 |
|
---|
| 5 |
|
---|
| 6 | <sect2>
|
---|
[f35b22f] | 7 | <title>Introduction to <application>Xorg</application></title>
|
---|
[d7a9c28] | 8 |
|
---|
| 9 | <note><para>There are two packages in BLFS that implement the <application>X</application>
|
---|
[f35b22f] | 10 | Window System: <application>Xorg</application> and <application>XFree86</application>.
|
---|
[77b3389] | 11 | These packages are quite similar. In fact, the base system of <application>Xorg</application>
|
---|
[d7a9c28] | 12 | is <application>XFree86</application>-RC2. The primary difference as of this writing is
|
---|
| 13 | the license provisions of the packages. For someone building a package for their own use,
|
---|
| 14 | these issues are not significant. Most large commercial distributions have decided
|
---|
[f35b22f] | 15 | to use the <application>Xorg</application> package, but several still use
|
---|
[d7a9c28] | 16 | <application>XFree86</application>.</para>
|
---|
| 17 |
|
---|
| 18 | <para>A second reason for the forking of X packages is the stated goals of the
|
---|
| 19 | developers. Some developers were unhappy with the administration and progress of
|
---|
[f35b22f] | 20 | <application>XFree86</application>. Xorg's future plans include significant
|
---|
[d7a9c28] | 21 | improvements to the internals of the system and more frequent releases.</para>
|
---|
| 22 |
|
---|
[77b3389] | 23 | <para><application>XFree86</application> continues to be a solid, conservative
|
---|
[d7a9c28] | 24 | application with excellent driver support.</para>
|
---|
| 25 |
|
---|
[f35b22f] | 26 | <para>Both <application>Xorg</application> and <application>XFree86</application>
|
---|
[d7a9c28] | 27 | can be installed in the same way, but this section will provide a slightly
|
---|
| 28 | different and more current variation for installation.</para>
|
---|
| 29 | </note>
|
---|
| 30 |
|
---|
| 31 |
|
---|
[f35b22f] | 32 | <para><application>Xorg</application> is a freely redistributable open-source
|
---|
[d7a9c28] | 33 | implementation of the <application>X</application> Window System.
|
---|
| 34 | This application provides a client/server interface between display
|
---|
[77b3389] | 35 | hardware (the mouse, keyboard, and video displays) and the desktop environment,
|
---|
[d7a9c28] | 36 | while also providing both the windowing infrastructure and a standardized
|
---|
| 37 | application interface (<acronym>API</acronym>).</para>
|
---|
| 38 |
|
---|
| 39 | <sect3><title>Package information</title>
|
---|
| 40 | <itemizedlist spacing='compact'>
|
---|
| 41 | <listitem><para>Download (HTTP): <ulink url="&xorg-download-http;"/></para></listitem>
|
---|
| 42 | <listitem><para>Download (FTP): <ulink url="&xorg-download-ftp;"/></para></listitem>
|
---|
| 43 | <listitem><para>Download size: &xorg-size;</para></listitem>
|
---|
| 44 | <listitem><para>Estimated Disk space required: &xorg-buildsize;</para></listitem>
|
---|
| 45 | <listitem><para>Estimated build time: &xorg-time;</para></listitem></itemizedlist>
|
---|
| 46 | </sect3>
|
---|
| 47 |
|
---|
| 48 |
|
---|
[f35b22f] | 49 | <sect3><title><application>Xorg</application> Dependencies</title>
|
---|
[d7a9c28] | 50 |
|
---|
| 51 | <sect4><title>Required</title>
|
---|
[77b3389] | 52 | <para><xref linkend="libpng"/>, <xref linkend="expat"/>, <xref linkend="freetype2"/> and
|
---|
| 53 | <xref linkend="fontconfig"/>.</para>
|
---|
| 54 | </sect4>
|
---|
| 55 |
|
---|
| 56 | <sect4><title>Optional</title>
|
---|
| 57 | <para><xref linkend="Linux_PAM"/>.</para>
|
---|
[d7a9c28] | 58 | </sect4>
|
---|
[8412f1c] | 59 |
|
---|
[d7a9c28] | 60 | </sect3>
|
---|
| 61 |
|
---|
| 62 |
|
---|
| 63 | <sect3><title>Download Instructions</title>
|
---|
| 64 |
|
---|
| 65 | <para>There are several files that need to be fetched from the download location:</para>
|
---|
| 66 | <itemizedlist spacing='compact'>
|
---|
| 67 | <listitem><para><filename>X11R6.7.0-src1.tar.gz</filename></para></listitem>
|
---|
| 68 | <listitem><para><filename>X11R6.7.0-src2.tar.gz</filename></para></listitem>
|
---|
| 69 | <listitem><para><filename>X11R6.7.0-src3.tar.gz</filename></para></listitem>
|
---|
| 70 | <listitem><para><filename>X11R6.7.0-src4.tar.gz</filename></para></listitem>
|
---|
| 71 | <listitem><para><filename>X11R6.7.0-src5.tar.gz</filename></para></listitem>
|
---|
| 72 | <listitem><para><filename>X11R6.7.0-src6.tar.gz</filename></para></listitem>
|
---|
| 73 | <listitem><para><filename>X11R6.7.0-src7.tar.gz</filename></para></listitem>
|
---|
| 74 | </itemizedlist>
|
---|
| 75 |
|
---|
[8412f1c] | 76 | <para>The first package contains the <application>Xorg</application> libraries and
|
---|
[d7a9c28] | 77 | support programs, the second contains standard X programs, the third contains the
|
---|
| 78 | X server, the fourth and fifth are fonts, the sixth is normal documentation, and the seventh
|
---|
| 79 | is hardcopy documentation.</para>
|
---|
| 80 |
|
---|
| 81 | <para>To check your downloads for integrity, download the <filename>md5sums</filename>
|
---|
| 82 | file. Then:</para>
|
---|
| 83 |
|
---|
| 84 | <screen><userinput><command>md5sum -c md5sums</command></userinput></screen>
|
---|
| 85 |
|
---|
| 86 | <para>All seven packages should give an OK status.</para>
|
---|
| 87 | </sect3>
|
---|
| 88 | </sect2>
|
---|
| 89 |
|
---|
| 90 | <sect2>
|
---|
[f35b22f] | 91 | <title>Installation of <application>Xorg</application></title>
|
---|
[d7a9c28] | 92 |
|
---|
| 93 |
|
---|
[f35b22f] | 94 | <sect3>
|
---|
| 95 | <title>Kernel Compilation Settings</title>
|
---|
[77b3389] | 96 | <para>If you have an Intel P6 (Pentium Pro, Pentium II and later), it is recommended
|
---|
[f35b22f] | 97 | that you compile <acronym>MTRR</acronym> (Memory Type Range Registers) support into the kernel.
|
---|
| 98 | The kernel can map Cyrix and AMD <acronym>CPU</acronym>s to the
|
---|
[77b3389] | 99 | <acronym>MTRR</acronym> interface, so selecting this
|
---|
[f35b22f] | 100 | option is useful for those processors also. This option is found in the
|
---|
| 101 | "Processor type and features" menu. It can increase performance of
|
---|
| 102 | image write operations 2.5 times or more on <acronym>PCI</acronym> or
|
---|
| 103 | <acronym>AGP</acronym> video cards.</para>
|
---|
| 104 |
|
---|
| 105 | <para>In the "Character Devices" section, enable <acronym>AGP</acronym> Support and
|
---|
| 106 | select the chipset support on your motherboard. If you do not know the chipset,
|
---|
| 107 | you may select all the chip types at the expense of extra kernel size. You can usually
|
---|
| 108 | determine your motherboard's chipset by doing:</para>
|
---|
| 109 | <screen><userinput><command>cat /proc/pci</command></userinput></screen>
|
---|
| 110 |
|
---|
| 111 | <para>In the "Character Devices" section, <emphasis>disable</emphasis> Direct
|
---|
| 112 | Rendering Manager unless you have a Direct Rendering Infrastructure
|
---|
| 113 | (<acronym>DRI</acronym>)
|
---|
| 114 | supported video card. A complete list of <acronym>DRI</acronym> supported video cards can
|
---|
| 115 | be found at <ulink url="http://dri.sourceforge.net" /> in the Status section.
|
---|
| 116 | Currently, supported cards include those from 3dfx (Voodoo, Banshee), 3Dlabs,
|
---|
| 117 | ATI (Rage Pro, Rage 128,
|
---|
| 118 | Radeon 7X00, Radeon 2), Intel (i810, i815), and Matrox (G200, G400, G450).
|
---|
| 119 | If you do enable <acronym>DRI</acronym> here, make sure you select the video card(s) you want
|
---|
| 120 | to support as a <emphasis>module</emphasis>.</para>
|
---|
| 121 |
|
---|
| 122 | <para>Additionally NVidia provides their own closed source binary drivers,
|
---|
| 123 | which do not make use of <acronym>DRI</acronym>. If you intend to use these drivers,
|
---|
| 124 | do not enable <acronym>DRI</acronym>.</para>
|
---|
| 125 |
|
---|
| 126 | <para>If you made any changes to the kernel configuration, recompile the kernel.</para>
|
---|
| 127 |
|
---|
[8412f1c] | 128 | <para>Copy the <filename>arch/i386/boot/bzImage</filename> and <filename>System.map</filename>
|
---|
| 129 | from the kernel build directory to <filename class='directory'>/boot</filename>.
|
---|
| 130 | Edit <filename>/boot/grub/grub.conf</filename> and add the new kernel to the
|
---|
| 131 | boot menu.
|
---|
| 132 | (If you use lilo, edit <filename>/etc/lilo.conf</filename> and run <filename>lilo</filename>.)
|
---|
[f35b22f] | 133 | </para>
|
---|
| 134 |
|
---|
| 135 | <note><para>If you build <application>Xorg</application> in a chroot environment,
|
---|
| 136 | make sure the kernel version of the base system and the target system are the same.
|
---|
| 137 | This is especially important if you enabled <acronym>DRI</acronym> support as a module as
|
---|
| 138 | instructed above.</para></note>
|
---|
| 139 | </sect3>
|
---|
[d7a9c28] | 140 |
|
---|
[f35b22f] | 141 | <sect3><title>Setting Up a Shadow Directory</title>
|
---|
[77b3389] | 142 | <para>When building, <application>Xorg</application> you should create
|
---|
[f35b22f] | 143 | a shadow directory of symbolic links for the compiled code. To do that, we first
|
---|
| 144 | make the <application>lndir</application>. Starting from the
|
---|
| 145 | <filename class='directory'>xc</filename> directory:</para>
|
---|
| 146 |
|
---|
| 147 | <screen><userinput><command>pushd config/util &&
|
---|
| 148 | make -f Makefile.ini lndir &&
|
---|
| 149 | cp lndir /usr/bin/ &&
|
---|
| 150 | popd</command></userinput></screen>
|
---|
| 151 |
|
---|
| 152 | <para>Now create the shadow tree:</para>
|
---|
| 153 |
|
---|
| 154 | <screen><userinput><command>mkdir ../xcbuild &&
|
---|
| 155 | cd ../xcbuild &&
|
---|
| 156 | lndir ../xc</command></userinput></screen>
|
---|
| 157 | </sect3>
|
---|
| 158 |
|
---|
| 159 | <sect3><title>Creating <filename>host.def</filename></title>
|
---|
| 160 | <para>The next step is to create the <filename>config/cf/host.def</filename> file.
|
---|
| 161 | The documentation for <application>Xorg</application> indicates that the
|
---|
| 162 | application will build without a <filename>host.def</filename> file, but
|
---|
| 163 | the included libraries for <application>fontconfig</application> and
|
---|
[77b3389] | 164 | <application>freetype2</application> do not build properly on a base LFS system.
|
---|
| 165 | Therefore, you must specify that these libraries, as well as others, should be
|
---|
| 166 | imported from the system.</para>
|
---|
[f35b22f] | 167 |
|
---|
| 168 | <note><para><filename>config/cf/host.def</filename> is a C file, not a shell
|
---|
[77b3389] | 169 | script. Ensure the comments delimited by /* ... */ are
|
---|
[f35b22f] | 170 | balanced when modifying the file. </para></note>
|
---|
| 171 |
|
---|
| 172 |
|
---|
| 173 | <screen><userinput><command>cat > config/cf/host.def << "EOF"</command>
|
---|
| 174 | /* Begin Xorg host.def file */
|
---|
| 175 |
|
---|
| 176 | /* System Related Information. If you read and configure only one
|
---|
| 177 | * section then it should be this one. The Intel architecture defaults are
|
---|
| 178 | * set for a i686 and higher. Axp is for the Alpha architecture and Ppc is
|
---|
| 179 | * for the Power PC. AMD64 is for the Opteron processor. Note that there have
|
---|
| 180 | * been reports that the Ppc optimization line causes segmentation faults during
|
---|
| 181 | * build. If that happens, try building without the DefaultGcc2PpcOpt line. ***********/
|
---|
| 182 |
|
---|
| 183 | /* #define DefaultGcc2i386Opt -O2 -fno-strength-reduce -fno-strict-aliasing -march=i686 */
|
---|
| 184 | /* #define DefaultGccAMD64Opt -O2 -fno-strength-reduce -fno-strict-aliasing */
|
---|
| 185 | /* #define DefaultGcc2AxpOpt -O2 -mcpu=ev6 */
|
---|
| 186 | /* #define DefaultGcc2PpcOpt -O2 -mcpu=750 */
|
---|
| 187 |
|
---|
| 188 | #define HasFreetype2 YES
|
---|
| 189 | #define HasFontconfig YES
|
---|
| 190 | #define HasExpat YES
|
---|
| 191 | #define HasLibpng YES
|
---|
| 192 | #define HasZlib YES
|
---|
| 193 |
|
---|
| 194 | /*
|
---|
| 195 | * Which drivers to build. When building a static server, each of these
|
---|
| 196 | * will be included in it. When building the loadable server each of these
|
---|
| 197 | * modules will be built.
|
---|
| 198 | *
|
---|
| 199 | #define XF86CardDrivers mga glint nv tga s3virge sis rendition \
|
---|
| 200 | neomagic i740 tdfx savage \
|
---|
| 201 | cirrus vmware tseng trident chips apm \
|
---|
| 202 | GlideDriver fbdev i128 \
|
---|
| 203 | ati AgpGartDrivers DevelDrivers ark cyrix \
|
---|
| 204 | siliconmotion \
|
---|
| 205 | vesa vga XF86OSCardDrivers XF86ExtraCardDrivers
|
---|
| 206 | */
|
---|
| 207 |
|
---|
| 208 | /*
|
---|
| 209 | * Select the XInput devices you want by uncommenting this.
|
---|
| 210 | *
|
---|
| 211 | #define XInputDrivers mouse keyboard acecad calcomp citron \
|
---|
| 212 | digitaledge dmc dynapro elographics \
|
---|
| 213 | microtouch mutouch penmount spaceorb summa \
|
---|
| 214 | wacom void magictouch aiptek
|
---|
| 215 | */
|
---|
| 216 |
|
---|
| 217 | /* Most installs will only need this */
|
---|
| 218 |
|
---|
| 219 | #define XInputDrivers mouse keyboard
|
---|
| 220 |
|
---|
| 221 |
|
---|
| 222 | /* End Xorg host.def file */
|
---|
| 223 | <command>EOF</command></userinput></screen>
|
---|
| 224 |
|
---|
| 225 | <para>There are several other options that you may want to consider. A well documented
|
---|
| 226 | example file is <filename>config/cf/xorgsite.cf</filename>.</para>
|
---|
| 227 | </sect3>
|
---|
| 228 |
|
---|
| 229 | <sect3>
|
---|
| 230 | <title>Build Commands</title>
|
---|
| 231 | <para>Install <application>Xorg</application> by running the following commands:</para>
|
---|
| 232 |
|
---|
| 233 |
|
---|
| 234 | <screen><userinput><command>( make World 2>&1 | tee xorg-compile.log && exit $PIPESTATUS ) &&
|
---|
| 235 | make install &&
|
---|
| 236 | make install.man &&
|
---|
| 237 | ln -sf ../X11R6/bin /usr/bin/X11 &&
|
---|
| 238 | ln -sf ../X11R6/lib/X11 /usr/lib/X11 &&
|
---|
| 239 | ln -sf ../X11R6/include/X11 /usr/include/X11</command></userinput></screen>
|
---|
| 240 |
|
---|
| 241 | </sect3>
|
---|
| 242 |
|
---|
| 243 | <sect3>
|
---|
| 244 | <title>Updating Direct Rendering Infrastructure (<acronym>DRI</acronym>)</title>
|
---|
| 245 | <para>If you have one of the supported <acronym>DRI</acronym> cards and
|
---|
| 246 | have enabled <acronym>DRI</acronym> kernel modules as explained
|
---|
| 247 | above, you now need to update the kernel modules to ensure they are compatible with the
|
---|
| 248 | current version of <application>Xorg</application>. To do this, perform the following:</para>
|
---|
| 249 |
|
---|
[8412f1c] | 250 | <screen><userinput><command>cd programs/Xserver/hw/xfree86/os-support/linux/drm/kernel &&
|
---|
[f35b22f] | 251 | make CC=/opt/gcc-2.95.3/bin/gcc -f Makefile.linux &&
|
---|
| 252 | mkdir -p /lib/modules/`uname -r`/kernel/drivers/char/drm/ &&
|
---|
| 253 | cp gamma.o radeon.o sis.o r128.o i810.o i830.o mga.o tdfx.o \
|
---|
| 254 | /lib/modules/`uname -r`/kernel/drivers/char/drm/ &&
|
---|
| 255 | depmod -a</command></userinput></screen>
|
---|
| 256 |
|
---|
| 257 | <warning><para>If you recompile or upgrade your kernel, you will need to re-copy the
|
---|
| 258 | appropriate driver module(s)
|
---|
| 259 | to the kernel module library and rerun the <command>depmod -a</command> command.</para></warning>
|
---|
| 260 |
|
---|
| 261 | <note><para>If you created <acronym>AGP</acronym> support as a module when compiling
|
---|
| 262 | the kernel, you may have to add a line to <filename>/etc/modules.conf</filename> to ensure
|
---|
| 263 | the agpgart module is loaded. For instance, the <acronym>AGP</acronym> version of the
|
---|
| 264 | Radeon video card will use the <filename>radeon.o</filename> driver. It will
|
---|
| 265 | need to have the line <screen>below radeon agpgart</screen> in
|
---|
| 266 | <filename>/etc/modules.conf</filename> to enable <acronym>DRI</acronym> support.</para></note>
|
---|
| 267 | </sect3>
|
---|
[d7a9c28] | 268 | </sect2>
|
---|
| 269 |
|
---|
[f35b22f] | 270 | <sect2>
|
---|
| 271 | <title>Command explanations</title>
|
---|
| 272 |
|
---|
| 273 | <para><command>( make World 2>&1 | tee xorg-compile.log
|
---|
| 274 | && exit $PIPESTATUS )</command>:
|
---|
| 275 | This command runs multiple makefiles to completely rebuild the system.
|
---|
| 276 | <parameter>2>&1</parameter> redirects error messages
|
---|
[77b3389] | 277 | to the same location as standard output. The <command>tee</command> command
|
---|
[f35b22f] | 278 | allows viewing of the output while logging the results to a file. The parentheses
|
---|
[77b3389] | 279 | around the command runs the entire comand in a subshell and finally the
|
---|
[f35b22f] | 280 | <command>exit $PIPESTATUS</command> ensures the result of the <command>make</command>
|
---|
| 281 | is returned as the result and not the result of the <command>tee</command> command.</para>
|
---|
| 282 |
|
---|
| 283 | <note><para>When rebuilding <application>Xorg</application>, a separate command that may
|
---|
| 284 | be used if only minor changes are made to the sources is <command>make
|
---|
| 285 | Everything</command>. This does not automatically remove generated
|
---|
| 286 | files and only rebuilds those files or programs that are out
|
---|
| 287 | of date.</para></note>
|
---|
| 288 |
|
---|
| 289 | <para><screen><command>ln -sf ../X11R6/bin /usr/bin/X11
|
---|
| 290 | ln -sf ../X11R6/lib/X11 /usr/lib/X11
|
---|
| 291 | ln -sf ../X11R6/include/X11 /usr/include/X11</command></screen>
|
---|
| 292 | These commands are present to enable other (broken) packages to build
|
---|
[77b3389] | 293 | against <application>Xorg</application>. We do this even though the
|
---|
[f35b22f] | 294 | Filesystem Hierarchy Standard says:
|
---|
| 295 | "In general, software must not be installed or managed via the above
|
---|
| 296 | symbolic links. They are intended for utilization by users only."</para>
|
---|
| 297 |
|
---|
| 298 | <para><command>make CC=/opt/gcc-2.95.3/bin/gcc -f Makefile.linux</command>: This builds the
|
---|
| 299 | <application>Xorg</application> compatible kernel modules using the same compiler used to compile
|
---|
| 300 | the kernel.</para>
|
---|
| 301 |
|
---|
| 302 | <para><command>cp gamma.o radeon.o sis.o r128.o i810.o i830.o mga.o tdfx.o
|
---|
| 303 | /lib/modules/`uname -r`/kernel/drivers/char/drm/</command>: Put the kernel
|
---|
| 304 | module(s) where the kernel can find them. You only need to copy the driver you
|
---|
| 305 | need to support your video card.</para>
|
---|
| 306 |
|
---|
| 307 | <para><command>depmod -a</command>: Update the modules.dep file for module
|
---|
| 308 | management.</para>
|
---|
[d7a9c28] | 309 |
|
---|
[f35b22f] | 310 | </sect2>
|
---|
[d7a9c28] | 311 |
|
---|
[f35b22f] | 312 | <sect2>
|
---|
| 313 | <title>Configuring Xorg</title>
|
---|
[d7a9c28] | 314 |
|
---|
[f35b22f] | 315 | <para>Edit <filename>/etc/ld.so.conf</filename> and add
|
---|
| 316 | <filename class="directory">/usr/X11R6/lib</filename>.
|
---|
[77b3389] | 317 | Run:</para> <screen><userinput><command>ldconfig</command></userinput></screen>
|
---|
[f35b22f] | 318 |
|
---|
[77b3389] | 319 | <para>Ensure <filename class='directory'>/usr/X11R6/bin</filename> is added to your
|
---|
| 320 | <envar>PATH</envar> environment variable. Instructions for doing this are described
|
---|
| 321 | in the section "<xref linkend='postlfs-config-profile'/>."</para>
|
---|
[f35b22f] | 322 |
|
---|
| 323 | <para>Expand the <envar>PKG_CONFIG_PATH</envar> so that other packages
|
---|
[77b3389] | 324 | can find <application>Xorg</application> libraries. Procedures for this are also
|
---|
| 325 | described in the section "<xref linkend='postlfs-config-profile'/>."</para>
|
---|
| 326 |
|
---|
[f35b22f] | 327 | <para>Set up your mouse:
|
---|
| 328 | <screen><userinput><command>ln -s psaux /dev/mouse</command></userinput></screen>
|
---|
| 329 |
|
---|
| 330 | Adjust the symbolic link as necessary for other types of mice. For instance,
|
---|
| 331 | a serial mouse on the first serial port would be linked to ttyS1.</para>
|
---|
| 332 |
|
---|
| 333 | <para>Create the <filename>xorg.conf</filename> file with
|
---|
| 334 | <screen><userinput><command>cd ~
|
---|
| 335 | Xorg -configure</command></userinput></screen>
|
---|
| 336 | The screen will go black and you may hear some clicking of the monitor. This
|
---|
[8412f1c] | 337 | command will create a file, <filename>xorg.conf.new</filename> in your home
|
---|
[f35b22f] | 338 | directory.</para>
|
---|
| 339 |
|
---|
[8412f1c] | 340 | <para>Edit <filename>xorg.conf.new</filename> to suit your system. The
|
---|
[f35b22f] | 341 | details of the file are located in the man
|
---|
| 342 | page <command>man xorg.conf</command>. Some things you may want to
|
---|
| 343 | do are:</para>
|
---|
| 344 |
|
---|
| 345 | <itemizedlist>
|
---|
| 346 |
|
---|
| 347 | <listitem><para>Section "Files". Change the order of the font paths searched.
|
---|
| 348 | You may want to put 100dpi fonts ahead of 75dpi fonts if your system normally
|
---|
| 349 | comes up closer to 100 dots per inch. You may want to remove some font
|
---|
| 350 | directories completely.</para></listitem>
|
---|
| 351 |
|
---|
| 352 | <listitem><para>Section "Monitor". Specify the <parameter>VertRefresh</parameter>
|
---|
| 353 | and <parameter>HorizSync</parameter> values if the system does not automatically
|
---|
| 354 | detect the monitor and its values.</para></listitem>
|
---|
| 355 |
|
---|
| 356 | <listitem><para>Section "InputDevice". You may want to change the keyboard
|
---|
| 357 | autorepeat rate by
|
---|
| 358 | adding <parameter>Option "Autorepeat" "250 30"</parameter>.</para></listitem>
|
---|
| 359 |
|
---|
| 360 | <listitem><para>Section "Device". You may want to set some of the options
|
---|
| 361 | available for your selected video driver. A description of the driver
|
---|
| 362 | parameters is in the man page for your driver.</para></listitem>
|
---|
| 363 |
|
---|
| 364 | <listitem><para>Section "Screen". Add a DefaultDepth statement such
|
---|
| 365 | as: <parameter>DefaultDepth 16</parameter>. In the SubSection for your
|
---|
| 366 | default depth, add a modes line such
|
---|
| 367 | as: <parameter> Modes "1280x1024" "1024x768"</parameter>.
|
---|
| 368 | The first mode listed will normally be the starting
|
---|
| 369 | resolution.</para></listitem>
|
---|
| 370 |
|
---|
| 371 | </itemizedlist>
|
---|
| 372 | <para>Test the system with
|
---|
[a3115ae] | 373 | <screen><userinput><command>X -xf86config ~/xorg.conf.new</command></userinput></screen>
|
---|
[f35b22f] | 374 | You will only get a gray background with an X-shaped mouse cursor, but it
|
---|
| 375 | confirms the system is working. Exit with Control-Alt-Backspace. If the
|
---|
| 376 | system does not work, take a look
|
---|
| 377 | at <filename>/var/log/Xorg.0.log</filename> to see what went
|
---|
| 378 | wrong.</para>
|
---|
| 379 |
|
---|
| 380 | <para>Move the configuration file to its final location</para>
|
---|
[8412f1c] | 381 | <screen><userinput><command>mv ~/xorg.conf.new /etc/X11/xorg.conf</command></userinput></screen>
|
---|
[f35b22f] | 382 |
|
---|
| 383 | <para>Create <filename>.xinitrc</filename>
|
---|
| 384 | <screen><userinput><command>cat > ~/.xinitrc << "EOF"</command>
|
---|
| 385 | # Begin .xinitrc file
|
---|
| 386 | xterm -g 80x40+0+0 &
|
---|
| 387 | xclock -g 100x100-0+0 &
|
---|
| 388 | twm
|
---|
| 389 | <command>EOF</command></userinput></screen>
|
---|
| 390 | This provides an initial screen with an xterm and a clock that is managed by a
|
---|
| 391 | simple window manager, Tab Window Manager. For details of twm, see the
|
---|
| 392 | man page.</para>
|
---|
| 393 |
|
---|
| 394 | <note>
|
---|
| 395 |
|
---|
| 396 | <para>When needed, <application>Xorg</application> creates the directory
|
---|
| 397 | <filename>/tmp/.ICE-unix</filename> if it does not exist. If this directory is
|
---|
| 398 | not owned by root, <application>Xorg</application> delays startup by a few seconds
|
---|
| 399 | and also appends a warning to the logfile. This also affects startup of other
|
---|
| 400 | applications. To improve performance, it is advisable to manually create the directory
|
---|
| 401 | before Xorg uses it. Add the file creation to <filename>/etc/sysconfig/createfiles</filename>
|
---|
| 402 | that is sourced by the
|
---|
| 403 | <filename>/etc/rc.d/init.d/cleanfs</filename> startup script.</para>
|
---|
| 404 |
|
---|
| 405 | <screen><userinput><command>cat >> /etc/sysconfig/createfiles << "EOF"</command>
|
---|
| 406 | /tmp/.ICE-unix dir 1777 root root
|
---|
| 407 | <command>EOF</command></userinput></screen>
|
---|
| 408 |
|
---|
| 409 | </note>
|
---|
| 410 |
|
---|
[77b3389] | 411 | <para>Start <application>X</application> with:
|
---|
[f35b22f] | 412 | <screen><userinput><command>startx</command></userinput></screen>
|
---|
[77b3389] | 413 | to get a basic functional <application>X</application> Window System.</para>
|
---|
[d7a9c28] | 414 |
|
---|
[f35b22f] | 415 | <para>At this point, you should check out the X Window Components at
|
---|
| 416 | <xref linkend='x-setup'/>.</para>
|
---|
| 417 |
|
---|
| 418 | </sect2>
|
---|
[d7a9c28] | 419 | </sect1>
|
---|