Gentoo Archives: gentoo-doc-cvs

From: Shyam Mani <fox2mike@×××××××××××.org>
To: gentoo-doc-cvs@l.g.o
Subject: [gentoo-doc-cvs] cvs commit: modular-x-howto.xml
Date: Mon, 02 Jan 2006 08:02:49
Message-Id: 200601020802.k0282ea9015039@robin.gentoo.org
1 fox2mike 06/01/02 08:02:38
2
3 Modified: xml/htdocs/doc/en metadoc.xml
4 Added: xml/htdocs/doc/en modular-x-howto.xml
5 Log:
6 Happy New Year :) Adding modular X howto, initial version on sekretarz's request. Thanks to John Myers <electronerd at electronerdia dot net> for converting the original text to GuideXML and Josh_B for his consent ;) Bumping metadoc as needed.
7
8 Revision Changes Path
9 1.128 +7 -2 xml/htdocs/doc/en/metadoc.xml
10
11 file : http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/doc/en/metadoc.xml?rev=1.128&content-type=text/x-cvsweb-markup&cvsroot=gentoo
12 plain: http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/doc/en/metadoc.xml?rev=1.128&content-type=text/plain&cvsroot=gentoo
13 diff : http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/doc/en/metadoc.xml.diff?r1=1.127&r2=1.128&cvsroot=gentoo
14
15 Index: metadoc.xml
16 ===================================================================
17 RCS file: /var/cvsroot/gentoo/xml/htdocs/doc/en/metadoc.xml,v
18 retrieving revision 1.127
19 retrieving revision 1.128
20 diff -u -r1.127 -r1.128
21 --- metadoc.xml 1 Jan 2006 10:16:33 -0000 1.127
22 +++ metadoc.xml 2 Jan 2006 08:02:38 -0000 1.128
23 @@ -1,9 +1,9 @@
24 <?xml version='1.0' encoding="UTF-8"?>
25 -<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/metadoc.xml,v 1.127 2006/01/01 10:16:33 rane Exp $ -->
26 +<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/metadoc.xml,v 1.128 2006/01/02 08:02:38 fox2mike Exp $ -->
27 <!DOCTYPE metadoc SYSTEM "/dtd/metadoc.dtd">
28
29 <metadoc lang="en">
30 -<version>1.56</version>
31 +<version>1.57</version>
32 <members>
33 <lead>swift</lead>
34 <lead>neysx</lead>
35 @@ -376,6 +376,7 @@
36 <file id="mips-faq">/doc/en/gentoo-mips-faq.xml</file>
37 <file id="mysql-upgrading">/doc/en/mysql-upgrading.xml</file>
38 <file id="gcc-upgrading">/doc/en/gcc-upgrading.xml</file>
39 + <file id="modular-x-howto">/doc/en/modular-x-howto.xml</file>
40 </files>
41 <docs>
42 <doc id="name-logo">
43 @@ -1188,5 +1189,9 @@
44 <memberof>upgrade</memberof>
45 <fileid>gnome-upgrade</fileid>
46 </doc>
47 + <doc id="modular-x-howto">
48 + <memberof>upgrade</memberof>
49 + <fileid>modular-x-howto</fileid>
50 + </doc>
51 </docs>
52 </metadoc>
53
54
55
56 1.1 xml/htdocs/doc/en/modular-x-howto.xml
57
58 file : http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/doc/en/modular-x-howto.xml?rev=1.1&content-type=text/x-cvsweb-markup&cvsroot=gentoo
59 plain: http://www.gentoo.org/cgi-bin/viewcvs.cgi/xml/htdocs/doc/en/modular-x-howto.xml?rev=1.1&content-type=text/plain&cvsroot=gentoo
60
61 Index: modular-x-howto.xml
62 ===================================================================
63 <?xml version="1.0" encoding="UTF-8"?>
64 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/modular-x-howto.xml,v 1.1 2006/01/02 08:02:38 fox2mike Exp $ -->
65
66 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
67
68 <guide link="/doc/en/modular-x-howto.xml">
69 <title>Migrating to Modular X HOWTO</title>
70
71 <author title="Author">
72 <mail link="spyderous@g.o">Donnie Berkholz</mail>
73 </author>
74 <author title="Author">
75 <mail link="joshuabaergen@g.o">Joshua Baergen</mail>
76 </author>
77
78 <abstract>
79 This guide shows you how to migrate to modular X.Org.
80 </abstract>
81
82 <!-- The content of this document is licensed under the CC-BY-SA license -->
83 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
84 <license/>
85
86 <version>1.0</version>
87 <date>2006-01-02</date>
88
89 <chapter>
90 <title>Migrating to Modular X</title>
91
92 <section>
93 <title>Introduction</title>
94 <body>
95
96 <p>
97 To keep old packages from getting in the way, we're going to clean out all the
98 old xorg-x11 cruft before installing modular X. This isn't absolutely crucial,
99 but it will help ensure a smooth migration.
100 </p>
101 </body>
102 </section>
103
104 <section>
105 <title>First step: Clean out your old X</title>
106 <body>
107
108 <p>
109 Before you start, make sure you have a package of the old, monolithic xorg-x11
110 built with <c>USE=dlloader</c> if the <c>dlloader</c> flag was available in that
111 version. It's not available in versions &gt;=6.8.99.15.
112 </p>
113
114 <pre caption="Backing up the old xorg-x11">
115 # <i>emerge gentoolkit</i>
116 # <i>quickpkg xorg-x11</i>
117 </pre>
118
119 <p>
120 Get rid of the monolithic installation:
121 </p>
122
123 <pre caption="Unmerging the monolitic installation">
124 # <i>emerge -Ca xorg-x11</i>
125 # <i>rm -rf /usr/lib/opengl/xorg-x11</i>
126 # <i>rm -rf /usr/lib/libGL*</i>
127 </pre>
128
129 <p>
130 You definitely want a backup copy of the monolithic xorg-x11 so you can mix and
131 match parts if desired.
132 </p>
133
134 <p>
135 The later steps are helpful in getting rid of symlinks created by
136 <c>opengl-update</c>.
137 </p>
138
139 <p>
140 If your <path>/usr/X11R6</path> isn't a symlink to <path>/usr</path>, delete it
141 and start from scratch. But first, save a list of all the packages installing
142 there.
143 </p>
144
145 <pre caption="Make a package list">
146 # <i>if [[ ! -L /usr/X11R6 ]]; \
147 then equery belongs /usr/X11R6 > usr-x11r6-packages \
148 &amp;&amp; rm -rf /usr/X11R6; fi</i>
149 </pre>
150
151 </body>
152 </section>
153
154 <section>
155 <title>Second step: Installing modular X</title>
156 <body>
157
158 <p>
159 First, add the required packages to <path>/etc/portage/package.unmask</path>.
160 Open <path>/usr/portage/profiles/package.mask</path> in a text editor of your
161 choice, then copy and paste the full modular X mask over to
162 <path>package.unmask</path>. Do the same with <path>package.keywords</path> if
163 you're running stable.
164 </p>
165
166 <p>
167 For direct rendering, you'll want to activate the <c>dri</c> USE flag.
168 </p>
169
170 <p>
171 Now, install the metabuild. This will install the server and popular
172 applications, giving you a working desktop implementation of X:
173 </p>
174
175 <pre caption="Installing the modular metabuild">
176 # <i>emerge xorg-x11</i>
177 </pre>
178
179 <p>
180 Note that this install tries to be rather minimal, so things like xcursor-themes
181 are not installed by default.
182 </p>
183
184 <p>
185 Next, install some drivers. This will vary depending on your input and video
186 hardware, so take a look in <path>/usr/portage/x11-drivers/</path>. Here's a
187 sample:
188 </p>
189
190 <pre caption="Installing some drivers">
191 # <i>emerge xf86-input-mouse xf86-input-keyboard xf86-video-ati</i>
192 </pre>
193
194 <note>
195 With modular installed, external drivers such as nvidia-glx and wacom as well as
196 some vnc apps may not work if they install things to
197 <path>/usr/lib/modules</path> instead of <path>/usr/lib/xorg/modules</path>.
198 Many of these will have modular X detection added to the installation process
199 and thus will need to be re-merged after modular X install.
200 </note>
201 </body>
202 </section>
203 </chapter>
204
205 <chapter>
206 <title>Caveats/Common Problems</title>
207 <section>
208 <title>'emerge -u world' wants to install xorg-x11</title>
209 <body>
210
211 <p>
212 This is because the tree isn't fixed for modular dependencies yet. You can help
213 the porting effort by reading the <uri
214 link="http://dev.gentoo.org/~spyderous/xorg-x11/porting_to_modular_x_howto.txt">Porting
215 to Modular X HowTo</uri> and filing bugs with patches to the individual package
216 maintainers. The maintainers will be listed in <path>metadata.xml</path> in the
217 same directory as the package and the <c>herdstat</c> package will speed up
218 querying for them.
219 </p>
220
221
222 </body>
223 </section>
224 <section>
225 <title>Driver problems</title>
226 <body>
227
228 <p>
229 I've had reports that:
230 </p>
231
232 <ul>
233 <li>ati won't start X
234 <ul>
235 <li>But it works fine on my FireGL 8800</li>
236 <li>
237 Resolved by moving <path>/usr/lib/xorg/modules/multimedia</path> out of
238 the way
239 </li>
240 </ul>
241 </li>
242 <li>vesa locks up box with an mga card</li>
243 <li>vga produces a very weird-looking screen, divided into quarters</li>
244 </ul>
245 </body>
246 </section>
247 <section>
248 <title>Getting glxinfo/glxgears</title>
249 <body>
250
251 <p>
252 The best way to deal with this is undecided by upstream so far, so there's an
253 ebuild in my overlay contributed by <mail
254 link="cardoe@g.o">Cardoe</mail>. Alternately, you can build them by hand.
255 </p>
256
257 <p>
258 Option 1:
259 <uri>http://dev.gentoo.org/~spyderous/overlay/x11-misc/glx-utils/</uri>
260 </p>
261
262 <p>
263 I'm not going to tell you how to use an overlay, so if you don't know and are
264 too lazy to read the docs, use option 2.
265 </p>
266
267 <p>
268 Option 2: Build by hand
269 </p>
270
271 <pre caption="Build by hand">
272 # <i>emerge freeglut</i>
273 # <i>tar zxvf /usr/portage/distfiles/Mesa-6.3.1.1.tar.gz</i>
274 # <i>cd Mesa-6.3.1.1/configs</i>
275 # <i>ln -s linux-dri-x86 current</i>
276 # <i>cd ../progs/xdemos</i>
277 # <i>make glxinfo</i>
278 # <i>make glxgears</i>
279 # <i>cp glxinfo glxgears /usr/bin/</i>
280 </pre>
281
282 <p>
283 To get some debugging info from glxinfo to help in getting direct rendering
284 working:
285 </p>
286
287 <pre caption="Getting some debug info from glxinfo">
288 # <i>LIBGL_DEBUG=verbose glxinfo</i>
289 </pre>
290
291 </body>
292 </section>
293 <section>
294 <title>Mouse protocol autodetection</title>
295 <body>
296
297 <p>
298 If you have <c>Protocol "auto"</c> set in xorg.conf for your mouse, it may not
299 work. You may need to specify <c>Protocol "ExplorerPS/2"</c> or <c>"IMPS/2"</c>
300 for your wheel to work.
301 </p>
302
303 </body>
304 </section>
305 <section>
306 <title>Where are imake/xmkmf?</title>
307 <body>
308
309 <p>
310 These are now in the tree. However, <c>gccmakedep</c> is not modularized yet
311 and thus the <c>imake</c> build system is still broken for some packages.
312 </p>
313 </body>
314 </section>
315 <section>
316 <title>Everything in /usr/lib/xorg disappeared!</title>
317 <body>
318
319 <p>
320 Remerge &gt;=xorg-server-0.99.1-r4. This was a temporary bug in the ebuild that
321 resulted in deletion after removal of a package. Instead,
322 <path>/usr/lib/xorg</path> should have only been deleted when no xorg-server
323 remained on the system.
324 </p>
325
326 </body>
327 </section>
328 <section>
329 <title>gdm/kdm don't work</title>
330 <body>
331
332 <p>
333 If you installed modular X on a fresh Gentoo installation, you may not have a
334 <path>/usr/X11R6</path> -&gt; <path>/usr</path> symlink. Try creating one; no
335 ebuild does yet.
336 </p>
337
338 <p>
339 You can help get things out of <path>/usr/X11R6</path> by fixing the packages
340 that do it and filing bugs.
341 </p>
342
343 </body>
344 </section>
345 <section>
346 <title>Other Issues</title>
347 <body>
348
349 <ul>
350 <li>
351 The <c>trap</c> module will give errors on starting X, because the
352 modular <c>xorg-server</c> doesn't build it yet. You may want to copy it
353 over from your old X installation.
354 </li>
355 <li>
356 Make sure your <path>xorg.conf</path> doesn't list <c>ModulePath</c>,
357 because this directory changed from <path>/usr/lib/modules</path> to
358 <path>/usr/lib/xorg/modules</path>.
359 </li>
360 </ul>
361
362 </body>
363 </section>
364 </chapter>
365 </guide>
366
367
368
369 --
370 gentoo-doc-cvs@g.o mailing list