/[gentoo]/xml/htdocs/doc/en/xorg-config.xml
Gentoo

Contents of /xml/htdocs/doc/en/xorg-config.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.52 - (hide annotations) (download) (as text)
Thu Aug 1 18:24:47 2013 UTC (8 months, 2 weeks ago) by swift
Branch: MAIN
CVS Tags: HEAD
Changes since 1.51: +4 -4 lines
File MIME type: application/xml
Xorg configuration is now at https://wiki.gentoo.org/wiki/Xorg/Configuration

1 swift 1.1 <?xml version='1.0' encoding='UTF-8'?>
2     <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
3 swift 1.52 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/xorg-config.xml,v 1.51 2013/07/22 13:23:01 swift Exp $ -->
4 swift 1.1
5 swift 1.52 <guide disclaimer="obsolete" redirect="https://wiki.gentoo.org/wiki/Xorg/Configuration">
6 swift 1.1 <title>The X Server Configuration HOWTO</title>
7    
8     <author title="Author">
9 nightmorph 1.36 <mail link="swift"/>
10 swift 1.1 </author>
11 nightmorph 1.31 <author title="Author">
12 nightmorph 1.27 <mail link="nightmorph"/>
13     </author>
14 swift 1.1
15     <abstract>
16     Xorg is the X Window server which allows users to have a graphical
17 swift 1.26 environment at their fingertips. This HOWTO explains what Xorg is, how to
18 swift 1.1 install it and what the various configuration options are.
19     </abstract>
20    
21     <!-- The content of this document is licensed under the CC-BY-SA license -->
22 fox2mike 1.17 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
23 swift 1.1 <license/>
24    
25 swift 1.52 <version>14</version>
26     <date>2013-08-01</date>
27 swift 1.1
28     <chapter>
29     <title>What is the X Window Server?</title>
30     <section>
31     <title>Graphical vs Command-Line</title>
32     <body>
33    
34     <p>
35     The average user may be frightened at the thought of having to type in commands.
36     Why wouldn't he be able to point and click his way through the freedom provided
37 nightmorph 1.40 by Gentoo (and Linux in general)? Well, of course you are able to
38     do this! Linux offers a wide variety of flashy user interfaces and
39 swift 1.1 environments which you can install on top of your existing installation.
40     </p>
41    
42     <p>
43     This is one of the biggest surprises new users come across: a graphical user
44     interface is nothing more than an application which runs on your system. It is
45     <e>not</e> part of the Linux kernel or any other internals of the system. It is
46     a powerful tool that fully enables the graphical abilities of your workstation.
47     </p>
48    
49     <p>
50     As standards are important, a standard for drawing and moving windows on a
51 fox2mike 1.16 screen, interacting with the user through mouse, keyboard and other basic, yet
52 swift 1.1 important aspects has been created and named the <e>X Window System</e>,
53     commonly abbreviated as <e>X11</e> or just <e>X</e>. It is used on Unix, Linux
54     and Unix-like operating systems throughout the world.
55     </p>
56    
57     <p>
58 swift 1.26 The application that provides Linux users with the ability to run graphical
59 swift 1.1 user interfaces and that uses the X11 standard is Xorg-X11, a fork of
60     the XFree86 project. XFree86 has decided to use a license that might not be
61 swift 1.26 compatible with the GPL license; the use of Xorg is therefore recommended.
62 swift 1.8 The official Portage tree does not provide an XFree86 package anymore.
63 swift 1.1 </p>
64    
65     </body>
66     </section>
67     <section>
68     <title>The X.org Project</title>
69     <body>
70    
71     <p>
72     The <uri link="http://www.x.org">X.org</uri> project created and
73 fox2mike 1.16 maintains a freely redistributable, open-source implementation of the X11
74 swift 1.26 system. It is an open source X11-based desktop infrastructure.
75 swift 1.1 </p>
76    
77     <p>
78     Xorg provides an interface between your hardware and the graphical software
79     you want to run. Besides that, Xorg is also fully network-aware, meaning you
80     are able to run an application on one system while viewing it on a different
81 swift 1.26 one.
82 swift 1.1 </p>
83    
84     </body>
85     </section>
86     </chapter>
87 fox2mike 1.16
88 swift 1.1 <chapter>
89     <title>Installing Xorg</title>
90     <section>
91 nightmorph 1.40 <body>
92    
93     <p>
94     Before you can install Xorg, you need to prepare your system for it. First,
95     we'll set up the kernel to support input devices and video cards. Then we'll
96 swift 1.50 prepare <path>/etc/portage/make.conf</path> so that the right drivers and Xorg packages
97 nightmorph 1.40 are built and installed.
98     </p>
99    
100     </body>
101     </section>
102     <section>
103     <title>Input driver support</title>
104 swift 1.1 <body>
105    
106     <p>
107 nightmorph 1.32 By default, Xorg uses <c>evdev</c>, a generic input driver. You'll need to
108     activate support for <c>evdev</c> by making a change to your kernel
109 nightmorph 1.40 configuration. Read the <uri link="/doc/en/kernel-config.xml">Kernel
110     Configuration Guide</uri> if you don't know how to setup your kernel.
111 nightmorph 1.32 </p>
112    
113     <pre caption="Enabling evdev in the kernel">
114     Device Drivers ---&gt;
115     Input device support ---&gt;
116     &lt;*&gt; Event interface
117     </pre>
118    
119     </body>
120     </section>
121     <section>
122 nightmorph 1.40 <title>Kernel modesetting</title>
123     <body>
124    
125     <p>
126     Modern open-source video drivers rely on kernel modesetting (KMS). KMS provides
127     an improved graphical boot with less flickering, faster user switching, a
128     built-in framebuffer console, seamless switching from the console to Xorg, and
129     other features. KMS conflicts with legacy framebuffer drivers, which must remain
130     <b>disabled</b> in your kernel configuration.
131     </p>
132    
133     <p>
134     First, prepare your kernel for KMS. You need to do this step regardless of which
135     Xorg video driver you're using.
136     </p>
137    
138     <pre caption="Configuring framebuffers">
139     Device Drivers ---&gt;
140     Graphics support ---&gt;
141     Support for frame buffer devices ---&gt;
142     <comment>(Disable all drivers, including VGA, Intel, nVidia, and ATI)</comment>
143    
144     <comment>(Further down, enable basic console support. KMS uses this.)</comment>
145     Console display driver support ---&gt;
146     &lt;*&gt; Framebuffer Console Support
147     </pre>
148    
149     <p>
150     Next, configure your kernel to use the proper KMS driver for your video card.
151 nightmorph 1.45 Intel, nVidia, and AMD/ATI are the most common cards, so follow code listing for
152 nightmorph 1.40 your card below.
153     </p>
154    
155     <p>
156     For Intel cards:
157     </p>
158    
159     <pre caption="Intel settings">
160     Device Drivers ---&gt;
161     Graphics support ---&gt;
162     /dev/agpgart (AGP Support) ---&gt;
163     &lt;*&gt; Intel 440LX/BX/GX, I8xx and E7x05 chipset support
164     Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
165 nightmorph 1.49 &lt;*&gt; Intel 8xx/9xx/G3x/G4x/HD Graphics
166 nightmorph 1.40 [*] Enable modesetting on intel by default
167     </pre>
168    
169     <p>
170     For nVidia cards:
171     </p>
172    
173     <pre caption="nVidia settings">
174     Device Drivers ---&gt;
175     Graphics support ---&gt;
176 nightmorph 1.49 Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---&gt;
177     &lt;*&gt; Nouveau (nVidia) cards
178 nightmorph 1.40 </pre>
179    
180     <p>
181 nightmorph 1.45 For newer AMD/ATI cards (<uri link="/doc/en/ati-faq.xml">RadeonHD 2000 and
182 swift 1.46 up</uri>), you will need to emerge <c>radeon-ucode</c> or
183     <c>linux-firmware</c>. Once you have installed one of these packages,
184     configure your kernel as shown:
185 nightmorph 1.40 </p>
186    
187 nightmorph 1.45 <pre caption="AMD/ATI settings">
188 nightmorph 1.40 <comment>(Setup the kernel to use the radeon-ucode firmware)</comment>
189     Device Drivers ---&gt;
190     Generic Driver Options ---&gt;
191     [*] Include in-kernel firmware blobs in kernel binary
192     <comment># RadeonHD 2000, 3000, and 4000 series cards:</comment>
193     (radeon/R600_rlc.bin radeon/R700_rlc.bin) External firmware blobs
194 nightmorph 1.49 <comment># RadeonHD 5000, a.k.a Evergreen:</comment>
195 nightmorph 1.40 (radeon/CEDAR_me.bin radeon/CEDAR_pfp.bin radeon/CEDAR_rlc.bin
196     radeon/CYPRESS_me.bin radeon/CYPRESS_pfp.bin radeon/CYPRESS_rlc.bin
197     radeon/JUNIPER_me.bin radeon/JUNIPER_pfp.bin radeon/JUNIPER_rlc.bin
198     radeon/REDWOOD_me.bin radeon/REDWOOD_pfp.bin
199     radeon/REDWOOD_rlc.bin) External firmware blobs
200 nightmorph 1.49 <comment># Radeon HD 6000/7300 series Fusion APUs:</comment>
201 swift 1.48 (radeon/PALM_me.bin radeon/PALM_pfp.bin radeon/SUMO2_me.bin
202     radeon/SUMO2_pfp.bin radeon/SUMO_me.bin radeon/SUMO_pfp.bin
203     radeon/SUMO_rlc.bin) External firmware blobs
204 nightmorph 1.49 <comment># Radeon HD 6400-7600 aka. Northern Islands:</comment>
205 nightmorph 1.43 (radeon/BARTS_mc.bin radeon/BARTS_me.bin radeon/BARTS_pfp.bin
206     radeon/BTC_rlc.bin radeon/CAICOS_mc.bin radeon/CAICOS_me.bin
207 swift 1.48 radeon/CAICOS_pfp.bin radeon/CAYMAN_mc.bin radeon/CAYMAN_me.bin
208     radeon/CAYMAN_pfp.bin radeon/CAYMAN_rlc.bin radeon/TURKS_mc.bin
209 swift 1.46 radeon/TURKS_me.bin radeon/TURKS_pfp.bin) External firmware blobs
210 nightmorph 1.49 <comment># Radeon HD 7500/7600 series Fusion APUs:</comment>
211     (radeon/ARUBA_me.bin radeon/ARUBA_pfp.bin radeon/ARUBA_rlc.bin)
212     External firmware blobs
213     <comment># Radeon HD 7700-7900 aka. Southern Islands:</comment>
214     (radeon/PITCAIRN_ce.bin radeon/PITCAIRN_mc.bin radeon/PITCAIRN_me.bin
215     radeon/PITCAIRN_pfp.bin radeon/PITCAIRN_rlc.bin radeon/TAHITI_ce.bin
216     radeon/TAHITI_mc.bin radeon/TAHITI_me.bin radeon/TAHITI_pfp.bin
217     radeon/TAHITI_rlc.bin radeon/VERDE_ce.bin radeon/VERDE_mc.bin
218     radeon/VERDE_me.bin radeon/VERDE_pfp.bin radeon/VERDE_rlc.bin)
219     External firmware blobs
220     <comment># all:</comment>
221 nightmorph 1.40 (/lib/firmware/) Firmware blobs root directory
222    
223     <comment>(Enable Radeon KMS support)</comment>
224     Device Drivers ---&gt;
225     Graphics support ---&gt;
226     &lt;*&gt; Direct Rendering Manager ---&gt;
227     &lt;*&gt; ATI Radeon
228     [*] Enable modesetting on radeon by default
229     </pre>
230    
231     <note>
232     Old Radeon cards (X1900 series and older) don't need the <c>radeon-ucode</c>
233     package or any firmware configuration. Just enable the Direct Rendering Manager
234     and ATI Radeon modesetting.
235     </note>
236    
237     <p>
238     Now that you're done setting up KMS, continue with preparing
239 swift 1.50 <path>/etc/portage/make.conf</path> in the next section.
240 nightmorph 1.40 </p>
241    
242     </body>
243     </section>
244     <section>
245 nightmorph 1.32 <title>make.conf configuration</title>
246     <body>
247    
248     <p>
249 nightmorph 1.40 Now that your kernel is prepared, you have to configure two important variables
250 swift 1.50 in the <path>/etc/portage/make.conf</path> file before you can install Xorg.
251 rane 1.18 </p>
252    
253     <p>
254 nightmorph 1.32 The first variable is <c>VIDEO_CARDS</c>. This is used to set the video drivers
255 nightmorph 1.40 that you intend to use and is usually based on the kind of video card you have.
256     The most common settings are <c>nouveau</c> for nVidia cards or <c>radeon</c>
257     for ATI cards. Both have actively developed, well-supported open-source
258     drivers.
259 rane 1.18 </p>
260    
261 nightmorph 1.40 <note>
262 nightmorph 1.45 You may also try the proprietary drivers from nVidia and AMD/ATI, <c>nvidia</c>
263     and <c>fglrx</c> respectively. However, setting up the proprietary drivers is
264 nightmorph 1.40 beyond the scope of this guide. Please read the <uri
265 swift 1.51 link="https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers">Gentoo Linux nVidia Guide</uri> and <uri
266 nightmorph 1.40 link="/doc/en/ati-faq.xml">Gentoo Linux ATI FAQ</uri>. If you don't know which
267     drivers you should choose, refer to these guides for more information.
268     </note>
269    
270     <p>
271     The <c>intel</c> driver may be used for desktops or laptops with common Intel
272     integrated graphics chipsets.
273     </p>
274    
275     <note>
276     <c>VIDEO_CARDS</c> may contain more than one driver, each separated with a
277     space.
278     </note>
279    
280 rane 1.18 <p>
281     The second variable is <c>INPUT_DEVICES</c> and is used to determine which
282     drivers are to be built for input devices. In most cases setting it to
283 nightmorph 1.32 <c>evdev</c> should work just fine. If you use alternative input
284 nightmorph 1.27 devices, such as a Synaptics touchpad for a laptop, be sure to add it to
285     <c>INPUT_DEVICES</c>.
286 rane 1.18 </p>
287    
288     <p>
289     Now you should decide which drivers you will use and add necessary settings to
290 swift 1.50 the <path>/etc/portage/make.conf</path> file:
291 rane 1.18 </p>
292    
293     <pre caption="Sample make.conf entries">
294 nightmorph 1.32 <comment>(For mouse, keyboard, and Synaptics touchpad support)</comment>
295     INPUT_DEVICES="evdev synaptics"
296 nightmorph 1.40 <comment>(For nVidia cards)</comment>
297     VIDEO_CARDS="nouveau"
298 nightmorph 1.45 <comment>(For AMD/ATI cards)</comment>
299 nightmorph 1.32 VIDEO_CARDS="radeon"
300 rane 1.18 </pre>
301    
302 nightmorph 1.32 <p>
303 rane 1.18 If the suggested settings don't work for you, you should run <c>emerge -pv
304 nightmorph 1.40 xorg-drivers</c>, check all the options available and choose those which apply to
305 nightmorph 1.32 your system. This example is for a system with a keyboard, mouse, Synaptics
306     touchpad, and a Radeon video card.
307     </p>
308 rane 1.18
309     <pre caption="Displaying all the driver options available">
310 nightmorph 1.40 # <i>emerge -pv xorg-drivers</i>
311 rane 1.18
312     These are the packages that would be merged, in order:
313    
314     Calculating dependencies... done!
315 nightmorph 1.42 [ebuild R ] x11-base/xorg-drivers-1.9 INPUT_DEVICES="evdev synaptics
316 nightmorph 1.40 -acecad -aiptek -elographics% -fpit% -joystick -keyboard -mouse -penmount -tslib
317     -virtualbox -vmmouse -void -wacom"
318 nightmorph 1.32 VIDEO_CARDS="radeon -apm -ark -ast -chips -cirrus -dummy -epson -fbdev -fglrx
319 nightmorph 1.40 (-geode) -glint -i128 (-i740) (-impact) -intel -mach64 -mga -neomagic (-newport)
320 nightmorph 1.42 -nouveau -nv -nvidia -r128 -rendition -s3 -s3virge -savage -siliconmotion -sis
321     -sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx)
322     -tdfx -tga -trident -tseng -v4l -vesa -via -virtualbox -vmware (-voodoo) (-xgi)"
323     0 kB
324 rane 1.18 </pre>
325    
326     <p>
327     After setting all the necessary variables you can install the Xorg package.
328     </p>
329    
330 swift 1.1 <pre caption="Installing Xorg">
331 nightmorph 1.45 <comment>(Make sure udev is in your USE flags)</comment>
332     # <i>echo "x11-base/xorg-server udev" >> /etc/portage/package.use</i>
333     <comment>(Install Xorg)</comment>
334 nightmorph 1.30 # <i>emerge xorg-server</i>
335 swift 1.1 </pre>
336    
337 nightmorph 1.30 <note>
338     You could install the <c>xorg-x11</c> metapackage instead of the more
339 nightmorph 1.32 lightweight <c>xorg-server</c>. Functionally, <c>xorg-x11</c> and
340     <c>xorg-server</c> are the same. However, <c>xorg-x11</c> brings in many more
341     packages that you probably don't need, such as a huge assortment of fonts in
342     many different languages. They're not necessary for a working desktop.
343 nightmorph 1.30 </note>
344    
345 swift 1.1 <p>
346 nightmorph 1.32 When the installation is finished, you will need to re-initialise some
347 nightmorph 1.45 environment variables before you continue:
348 swift 1.1 </p>
349    
350 rane 1.18 <pre caption="Re-initialising the environment variables">
351 swift 1.1 # <i>env-update</i>
352     # <i>source /etc/profile</i>
353     </pre>
354    
355     </body>
356     </section>
357     </chapter>
358 nightmorph 1.32
359 swift 1.1 <chapter>
360     <title>Configuring Xorg</title>
361 nightmorph 1.45 <section>
362 nightmorph 1.32 <body>
363    
364     <p>
365 nightmorph 1.40 The X server is designed to work out-of-the-box, with no need to manually edit
366 nightmorph 1.45 Xorg's configuration files. It should detect and configure devices such as
367     displays, keyboards, and mice.
368 nightmorph 1.32 </p>
369    
370     <p>
371 nightmorph 1.45 You should first try <uri link="#using_startx">starting X</uri> without editing
372     any configuration files. If Xorg won't start, or there's some other problem,
373     then you'll need to manually configure Xorg as shown in the next section.
374 nightmorph 1.32 </p>
375    
376     </body>
377     </section>
378     <section>
379 nightmorph 1.45 <title>The xorg.conf.d directory</title>
380 swift 1.1 <body>
381    
382 nightmorph 1.32 <note>
383 nightmorph 1.45 Configuring files in <path>xorg.conf.d</path> should be seen as a "last resort"
384     option. It really desirable to run without any special configuration if
385     possible. If you still can't get a working configuration, then read on.
386 nightmorph 1.32 </note>
387    
388 swift 1.1 <p>
389 nightmorph 1.45 The configuration files of Xorg are stored in
390     <path>/etc/X11/xorg.conf.d/</path>. Each file is given a unique name and ends in
391     <path>.conf</path>. If the filenames start with a number, then Xorg will read
392     the files in numeric order. <path>10-evdev.conf</path> will be read before
393     <path>20-synaptics.conf</path>, and so on. You don't <e>have</e> to give them
394     numbers, but it may help you organize them.
395 swift 1.1 </p>
396    
397 nightmorph 1.45 <note>
398     Xorg provides example configurations in
399     <path>/usr/share/doc/xorg-server-${version}/xorg.conf.example.bz2</path>. You
400     can use these to create your own configuration files in
401     <path>/etc/X11/xorg.conf.d/</path>. The examples are heavily commented, but if
402     you are in need of more documentation regarding the syntax, read <c>man
403     xorg.conf</c>. Other examples can be found in the <uri
404     link="#resources">Resources</uri> chapter at the end of this guide.
405     </note>
406 swift 1.1
407 swift 1.9 </body>
408     </section>
409     <section id="using_startx">
410     <title>Using startx</title>
411     <body>
412    
413 swift 1.1 <p>
414 nightmorph 1.32 Now try <c>startx</c> to start up your X server. <c>startx</c> is a script
415 nightmorph 1.45 that executes an <e>X session</e>; that is, it starts the X server and some
416 nightmorph 1.32 graphical applications on top of it. It decides which applications to run
417 swift 1.9 using the following logic:
418 swift 1.1 </p>
419    
420 swift 1.9 <ul>
421     <li>
422     If a file named <path>.xinitrc</path> exists in the home directory, it will
423     execute the commands listed there.
424     </li>
425     <li>
426     Otherwise, it will read the value of the XSESSION variable and will execute
427     one of the sessions available in <path>/etc/X11/Sessions/</path>
428 nightmorph 1.31 accordingly. You can set the value of XSESSION in
429 nightmorph 1.40 <path>/etc/env.d/90xsession</path> to make it a default for all the users
430     on the system. For example, as root, run <c>echo XSESSION="Xfce4" >
431 nightmorph 1.31 /etc/env.d/90xsession</c>. This will create the <path>90xsession</path> file
432 nightmorph 1.40 and set the default X session to <uri
433 nightmorph 1.44 link="/doc/en/xfce-config.xml">Xfce</uri>. Remember to run <c>env-update</c>
434     after changing <path>90xsession</path>.
435 swift 1.9 </li>
436     </ul>
437    
438 swift 1.1 <pre caption="Starting X">
439 nightmorph 1.37 $ <i>startx</i>
440 swift 1.1 </pre>
441    
442 swift 1.9 <p>
443 nightmorph 1.37 If you haven't yet installed a window manager, all you'll see is a black screen.
444     Since this can also be a sign that something's wrong, you may want to emerge
445     <c>twm</c> and <c>xterm</c> <e>only to test X</e>.
446     </p>
447    
448     <p>
449 nightmorph 1.45 Once those two programs are installed, run <c>startx</c> again. A few
450     <c>xterm</c> windows should appear, making it easier to verify that X is working
451     correctly. Once you're satisfied with the results, run <c>emerge --unmerge twm
452     xterm</c> as root to get rid of the testing packages. You won't need them once
453     you've setup a proper desktop environment.
454 swift 1.9 </p>
455    
456 swift 1.1 </body>
457     </section>
458 swift 1.9 </chapter>
459 nightmorph 1.32
460 swift 1.9 <chapter>
461 nightmorph 1.32 <title>Tweaking X settings</title>
462 swift 1.1 <section>
463     <title>Setting your Resolution</title>
464     <body>
465    
466     <p>
467     If you feel that the screen resolution is wrong, you will need to check two
468 nightmorph 1.45 sections in your <path>xorg.conf.d</path> configuration. First of all, you have
469     the <e>Screen</e> section which lists the resolutions that your X server will
470     run at. This section might not list any resolutions at all. If this is the case,
471     Xorg will estimate the resolutions based on the information in the second
472     section, <e>Monitor</e>.
473 swift 1.1 </p>
474    
475     <p>
476 nightmorph 1.40 Now let us change the resolution. In the next example from
477 nightmorph 1.45 <path>/etc/X11/xorg.conf.d/40-monitor.conf</path> we add the
478     <c>PreferredMode</c> line so that our X server starts at 1440x900 by default.
479     The <c>Option</c> in the <c>Device</c> section must match the name of your
480 nightmorph 1.40 monitor (<c>DVI-0</c>), which can be obtained by running <c>xrandr</c>. You'll
481     need to <c>emerge xrandr</c> just long enough to get this information. The
482     argument after the monitor name (in the <c>Device</c> section) must match the
483     <c>Identifier</c> in the <c>Monitor</c> section.
484     </p>
485    
486 nightmorph 1.45 <pre caption="Changing the Monitor section">
487     # <i>nano -w /etc/X11/xorg.conf.d/40-monitor.conf</i>
488    
489 nightmorph 1.40 Section "Device"
490     Identifier "RadeonHD 4550"
491     Option "Monitor-DVI-0" "DVI screen"
492     EndSection
493     Section "Monitor"
494     Identifier "DVI screen"
495     Option "PreferredMode" "1440x900"
496 swift 1.1 EndSection
497     </pre>
498    
499     <p>
500 nightmorph 1.37 Run X (<c>startx</c>) to discover it uses the resolution you want.
501 swift 1.1 </p>
502    
503     </body>
504     </section>
505     <section>
506 nightmorph 1.41 <title>Multiple monitors</title>
507     <body>
508    
509     <p>
510 nightmorph 1.45 You can configure more than one monitor in <path>/etc/X11/xorg.conf.d/</path>.
511     All you have to do is give each monitor an identifer, then list its physical
512 nightmorph 1.41 position, such as "RightOf" or "Above" another monitor. The following example
513     shows how to configure a DVI and a VGA monitor, with the VGA monitor as the
514     right-hand screen:
515     </p>
516    
517 nightmorph 1.45 <pre caption="Configuring multiple monitors">
518     # <i>nano -w /etc/X11/xorg.conf.d/40-monitor.conf</i>
519    
520 nightmorph 1.41 Section "Device"
521     Identifier "RadeonHD 4550"
522     Option "Monitor-DVI-0" "DVI screen"
523     Option "Monitor-VGA-0" "VGA screen"
524     EndSection
525     Section "Monitor"
526     Identifier "DVI screen"
527     EndSection
528     Section "Monitor"
529     Identifier "VGA screen"
530     Option "RightOf" "DVI screen"
531     EndSection
532     </pre>
533    
534     </body>
535     </section>
536     <section>
537 nightmorph 1.32 <title>Configuring your keyboard</title>
538 swift 1.1 <body>
539    
540     <p>
541 nightmorph 1.45 To setup X to use an international keyboard, you just have to create the
542     appropriate config file in <path>/etc/X11/xorg.conf.d/</path>. This example
543     features a Czech keyboard layout:
544     </p>
545    
546     <pre caption="Using an international keyboard">
547     # <i>nano -w /etc/X11/xorg.conf.d/30-keyboard.conf</i>
548    
549     Section "InputClass"
550     Identifier "keyboard-all"
551     Driver "evdev"
552     Option "XkbLayout" "us,cz"
553     Option "XkbModel" "logitech_g15"
554     Option "XkbRules" "xorg"
555     Option "XkbOptions" "grp:alt_shift_toggle,grp:switch,grp_led:scroll,compose:rwin,terminate:ctrl_alt_bksp"
556     Option "XkbVariant" ",qwerty"
557     MatchIsKeyboard "on"
558     EndSection
559 swift 1.1 </pre>
560    
561     <p>
562 nightmorph 1.45 The "terminate" command (<c>terminate:ctrl_alt_bksp</c>) lets you kill the X
563     session by using the Ctrl-Alt-Backspace key combination. This will, however,
564     make X exit disgracefully -- something that you might not always want. It can be
565     useful when programs have frozen your display entirely, or when you're
566     configuring and tweaking your Xorg environment. Be careful when killing your
567     desktop with this key combination -- most programs really don't like it when you
568     end them this way, and you may lose some (or all) of what you were working on.
569 swift 1.1 </p>
570    
571 nightmorph 1.32 </body>
572     </section>
573     <section>
574     <title>Finishing up</title>
575     <body>
576 swift 1.1
577     <p>
578 nightmorph 1.32 Run <c>startx</c> and be happy about the result. Congratulations, you now
579 nightmorph 1.34 (hopefully) have a working Xorg on your system. The next step is to install a
580 nightmorph 1.45 useful window manager or desktop environment such as KDE, GNOME, or Xfce, but
581     that's not part of this guide. Information on installing these desktop
582     environments can be found in our <uri link="/doc/en/?catid=desktop">Gentoo
583     Desktop Documentation Resources</uri>.
584 swift 1.1 </p>
585    
586     </body>
587     </section>
588     </chapter>
589 nightmorph 1.32
590 nightmorph 1.45 <chapter id="resources">
591 swift 1.1 <title>Resources</title>
592     <section>
593 nightmorph 1.45 <title>Creating and editing config files</title>
594 swift 1.1 <body>
595    
596     <p>
597 nightmorph 1.32 First of all, <c>man xorg.conf</c> and <c>man evdev</c> provide quick yet
598     complete references about the syntax used by these configuration files. Be sure
599 nightmorph 1.45 to have them open on a terminal when you edit your configuration files!
600 nightmorph 1.27 </p>
601    
602     <p>
603 nightmorph 1.45 There are also many online resources on editing config files in
604     <path>/etc/X11/</path>. We only list few of them here; be sure to <uri
605     link="http://www.google.com">Google</uri> for more.
606 swift 1.1 </p>
607    
608     </body>
609     </section>
610 rane 1.18 <section>
611     <title>Other resources</title>
612     <body>
613    
614     <p>
615 nightmorph 1.27 More information about installing and configuring various graphical desktop
616     environments and applications can be found in the <uri
617     link="/doc/en/?catid=desktop">Gentoo Desktop Documentation Resources</uri>
618     section of our documentation.
619 rane 1.18 </p>
620    
621 nightmorph 1.29 <p>
622 nightmorph 1.45 If you're upgrading to <c>xorg-server</c> 1.9 from an earlier version, then be
623 nightmorph 1.40 sure to read the <uri
624 nightmorph 1.45 link="/proj/en/desktop/x/x11/xorg-server-1.9-upgrade-guide.xml">migration
625 nightmorph 1.29 guide</uri>.
626     </p>
627    
628 nightmorph 1.45 <p>
629     X.org provides many <uri link="http://www.x.org/wiki/FAQ">FAQs</uri> on their
630     website, in addition to their other documentation.
631     </p>
632    
633 rane 1.18 </body>
634     </section>
635 swift 1.1 </chapter>
636     </guide>

  ViewVC Help
Powered by ViewVC 1.1.20