/[gentoo]/xml/htdocs/doc/en/gentoolkit.xml
Gentoo

Contents of /xml/htdocs/doc/en/gentoolkit.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.23 - (hide annotations) (download) (as text)
Thu Nov 2 18:41:52 2006 UTC (7 years, 8 months ago) by nightmorph
Branch: MAIN
Changes since 1.22: +8 -9 lines
File MIME type: application/xml
Removed XMMS references, bug 153830

1 vapier 1.11 <?xml version="1.0" encoding="UTF-8"?>
2 nightmorph 1.23 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoolkit.xml,v 1.22 2006/01/01 11:51:43 neysx Exp $ -->
3 drobbins 1.1 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4    
5 cam 1.9 <guide link="/doc/en/gentoolkit.xml">
6 drobbins 1.1 <title>Gentoolkit</title>
7 cam 1.9
8     <author title="Author">
9     <mail link="mbutcher@aleph-null.tv">Matt Butcher</mail>
10 drobbins 1.1 </author>
11 cam 1.9 <author title="Editor">
12     <!-- zhen@gentoo.org -->John P. Davis
13 swift 1.5 </author>
14 erwin 1.7 <author title="Editor">
15     <mail link="erwin@gentoo.org">Erwin</mail>
16     </author>
17 neysx 1.13 <author title="Editor">
18 fox2mike 1.21 <mail link="fox2mike@gentoo.org">Shyam Mani</mail>
19 neysx 1.13 </author>
20     <author title="Editor">
21     <mail link="neysx@gentoo.org">Xavier Neys</mail>
22     </author>
23 yoswink 1.20 <author title="Editor">
24     <mail link="karltk@gentoo.org">Karl Trygve</mail>
25     </author>
26     <author title="Editor">
27     <mail link="yoswink@gentoo.org">José Luis Rivero</mail>
28     </author>
29 drobbins 1.1
30     <abstract>
31 cam 1.9 Gentoolkit is a suite of tools to ease the administration of a Gentoo system.
32     This document covers the basics of some of the tools present in Gentoolkit.
33 drobbins 1.1 </abstract>
34    
35 yoswink 1.20 <!-- Licensed under GFDL -->
36    
37 nightmorph 1.23 <version>1.9</version>
38     <date>2006-11-02</date>
39 drobbins 1.1
40     <chapter>
41 cam 1.9 <title>Introduction</title>
42     <section>
43     <title>What is Gentoolkit?</title>
44     <body>
45    
46     <p>
47 neysx 1.13 Gentoo is a unique distribution and presents some complexities that simply
48 cam 1.9 don't exist for other distributions. As Gentoo developers and contributors
49     discovered some of these complexities, they also wrote tools to help users and
50     administrators work around them. Many of these tools have been contributed to
51 neysx 1.13 the Gentoo project and are included in the package
52 cam 1.9 <c>app-portage/gentoolkit</c>.
53     </p>
54    
55 neysx 1.13 <note>
56     As of now, there are two versions of gentoolkit: <c>app-portage/gentoolkit</c>
57     and <c>app-portage/gentoolkit-dev</c>. While the former contains administration
58     scripts, the latter contains scripts specific to help development on Gentoo.
59 yoswink 1.20 If you are a developer, you can have your scripts included into
60     <c>gentoolkit-dev</c> by contacting the Gentoolkit maintainer. This document
61     discusses gentoolkit only.
62 neysx 1.13 </note>
63    
64 cam 1.9 <p>
65 neysx 1.13 Gentoolkit contains a whole bunch of useful tools to help manage your packages
66 neysx 1.15 and keep track of what is going on in your system. Most users --&nbsp;particularly
67 neysx 1.13 those who update systems often&nbsp;-- will benefit from having gentoolkit
68     installed.
69 cam 1.9 </p>
70    
71     </body>
72     </section>
73     <section>
74     <title>Installation</title>
75     <body>
76    
77     <p>
78     Just as with any Gentoo package, installation is just a simple emerge.
79     </p>
80    
81 neysx 1.13 <pre caption="Getting gentoolkit">
82 cam 1.10 # <i>emerge gentoolkit</i>
83 cam 1.9 </pre>
84    
85     <note>
86     Many of the tools in gentoolkit reveal important information about your system
87 neysx 1.13 or require root privilege. For that reason, some of the programs may only be
88     executed (or only function properly) if run by a user with root permission.
89 cam 1.9 </note>
90    
91     </body>
92     </section>
93     <section>
94     <title>Finding Documentation</title>
95     <body>
96    
97     <p>
98 neysx 1.13 Any documentation that a program might have (other than man pages) is stored in
99 cam 1.9 <path>/usr/doc/gentoolkit-[version]/[program-name]/</path>.
100     </p>
101 cam 1.10
102 cam 1.9 </body>
103     </section>
104 drobbins 1.1 </chapter>
105 cam 1.10
106 drobbins 1.1 <chapter>
107 neysx 1.13 <title>equery</title>
108 cam 1.9 <section>
109     <title>Introduction</title>
110     <body>
111 cam 1.10
112 cam 1.9 <p>
113 yoswink 1.20 <c>equery</c> is a tool that supports some features of <c>epm</c> (and the
114     deprecated <c>qpkg</c>) together with its own set of features that make it
115 swift 1.18 really useful. <c>equery --help</c> gives you the full set of options.
116 yoswink 1.20 <c>equery</c> will eventually replace <c>etcat</c> in a future release of
117     Gentoolkit.
118 neysx 1.13 </p>
119    
120     <note>
121     Not all features listed by <c>equery --help</c> have been implemented yet.
122 yoswink 1.20 Those that have not been, are mentioned clearly. You will also see that
123     every command has a short option, e.g. <c>b</c> instead of <c>belongs</c>.
124     </note>
125    
126     <note>
127     Be aware that equery currently changes the format of the output if it is
128     sent through a pipe. The piped format is intended to be easier to parse by
129     tools, but has turned out to be less popular and will probably change in
130     the future. If you write scripts that employ equery, you should be aware
131     of this.
132 neysx 1.13 </note>
133 cam 1.9
134 neysx 1.13 </body>
135     </section>
136     <section>
137 yoswink 1.20 <title>Finding the Package That a File Came From</title>
138     <body>
139    
140     <p>
141     <c>equery</c> also provides the functionality of finding the package that a
142     file came from, using <c>belongs</c> command (or just <c>b</c>).
143     </p>
144    
145     <pre caption="Finding the ebuild that installed a given file">
146 nightmorph 1.23 # <i>equery belongs /usr/bin/audacious</i>
147     [ Searching for file(s) /usr/bin/audacious in *... ]
148     media-sound/audacious-1.1.2 (/usr/bin/audacious)
149 yoswink 1.20 </pre>
150    
151     <p>
152     By using the <c>-f</c> option, you may search for packages with files
153     matching any regular expression. The <c>-e</c> option is useful for
154     terminating your search immediately when a match is found.
155     </p>
156    
157     </body>
158     </section>
159     <section>
160     <title>Verifying Package Integrity</title>
161     <body>
162    
163     <p>
164     Sometimes it is useful to check a package's integrity. <c>equery</c> can
165     verify md5 sums as well as timestamps to indicate when a package might
166     have been corrupted, replaced, or removed.
167     </p>
168    
169     <pre caption="OK package integrity">
170     # <i>equery check gentoolkit</i>
171     [ Checking app-portage/gentoolkit-0.2.0 ]
172     * 54 out of 54 files good
173     </pre>
174    
175     <p>
176     Please note that if you change configuration files after installation,
177     these may be reported as "not good".
178     </p>
179    
180     </body>
181     </section>
182     <section>
183     <title>List of all packages depending on ...</title>
184     <body>
185    
186     <p>
187     <c>equery</c> is able to list all direct dependencies matching a package.
188     The function we should use to do this is <c>depends</c> and it's as easy as:
189     </p>
190    
191     <pre caption="Looking for packages depending on pygtk">
192     # <i>equery depends pygtk</i>
193     [ Searching for packages depending on pygtk... ]
194     app-office/dia-0.93
195     dev-python/gnome-python-2.0.0-r1
196     gnome-extra/gdesklets-core-0.26.2
197     media-gfx/gimp-2.0.4
198     x11-libs/vte-0.11.11-r1
199     </pre>
200    
201     </body>
202     </section>
203     <section>
204     <title>Dependency Graphs</title>
205     <body>
206    
207     <p>
208     <c>equery</c> is capable of giving us a dependency graph for a specified
209     package. The dependency graph gives a listing of all the packages that have
210     direct and indirect dependencies on the package in question.
211     </p>
212    
213     <pre caption="Dependency Graph for cdrtools">
214     # <i>equery depgraph cdrtools</i>
215     Displaying dependencies for app-cdr/cdrtools-2.01_alpha37
216     `-- app-cdr/cdrtools-2.01_alpha37
217     `-- sys-libs/glibc-2.3.4.20040808 (virtual/libc)
218     `-- sys-kernel/linux-headers-2.4.22 (virtual/os-headers)
219     `-- sys-apps/baselayout-1.10.4
220     `-- sys-apps/sysvinit-2.85-r1
221     `-- sys-apps/gawk-3.1.3-r1
222     `-- sys-apps/util-linux-2.12-r4
223     `-- sys-apps/sed-4.0.9
224 neysx 1.22 `-- sys-libs/ncurses-5.4-r4
225     `-- sys-apps/pam-login-3.14
226     `-- sys-libs/pam-0.77-r1
227 yoswink 1.20 `-- sys-libs/cracklib-2.7-r10
228     `-- sys-apps/miscfiles-1.3-r1
229     `-- app-arch/gzip-1.3.5-r1
230     `-- sys-apps/portage-2.0.50-r10
231     </pre>
232    
233     <p>
234     For example, while glibc is a direct dependency for cdrtools,linux-headers
235     are an indirect dependency. Note that the output also includes information
236     about virtual packages. In the example above, <c>cdrtools</c> is actually
237     written to require virtual/libc, not sys-libs/glibc, but on the given
238     system in the example sys-libs/glibc provides virtual/libc.
239     </p>
240    
241     </body>
242     </section>
243     <section>
244     <title>Listing Files Belonging to an Ebuild</title>
245     <body>
246    
247     <p>
248     <c>equery</c> can list the files that belong to an installed ebuild. If I
249     don't know the files that Gentoolkit has installed on the system, I will
250     use <c>equery</c> to show them.
251     </p>
252    
253     <pre caption="Listing files">
254     #<i> equery files gentoolkit</i>
255     [ Searching for packages matching gentoolkit... ]
256     app-portage/gentoolkit-0.2.0
257     * Contents of app-portage/gentoolkit-0.2.0:
258     /usr
259     /usr/bin
260     /usr/bin/equery
261     /usr/bin/etcat
262     /usr/bin/euse
263     /usr/bin/glsa-check
264     /usr/bin/qpkg
265     /usr/bin/revdep-rebuild
266     /usr/lib
267     /usr/lib/gentoolkit
268     /usr/lib/gentoolkit/pym
269     /usr/lib/gentoolkit/pym/gentoolkit
270     /usr/lib/gentoolkit/pym/gentoolkit/__init__.py
271     /usr/lib/gentoolkit/pym/gentoolkit/gentoolkit.py
272     /usr/lib/gentoolkit/pym/gentoolkit/pprinter.py
273     /usr/lib/gentoolkit/pym/glsa.py
274     /usr/sbin
275     /usr/share
276     /usr/share/doc
277     /usr/share/doc/gentoolkit-0.2.0_pre10
278    
279     [...]
280     </pre>
281    
282     <p>
283     The command <c>files</c> of <c>equery</c> provide some options to modify
284     the output. You can look them all up in the <c>equery</c> man page.
285     </p>
286    
287     </body>
288     </section>
289     <section>
290     <title>Looking for packages that use a specific USE flag</title>
291     <body>
292    
293     <p>
294     If you want to find which packages on your system that make use of a specific
295     USE flag, <c>equery</c> has the function <c>hasuse</c>:
296     </p>
297    
298     <pre caption="Searching packages which use mozilla USE flag">
299     # <i>equery hasuse mozilla</i>
300     [ Searching for USE flag mozilla in all categories among: ]
301     * installed packages
302     [I--] [ ] dev-java/blackdown-jre-1.4.2.01 (1.4.2)
303     [I--] [ ] mail-client/evolution-2.0.2 (2.0)
304     </pre>
305    
306     </body>
307     </section>
308     <section>
309     <title>Listing Packages</title>
310     <body>
311    
312     <p>
313     <c>equery</c> has a power feature to list packages belonging to our system,
314     portage or even an overlay. Let's try this:
315     </p>
316    
317     <pre caption="Listing packages with equery">
318     # <i>equery list gentoolkit</i>
319     [ Searching for package 'gentoolkit' in all categories among: ]
320     * installed packages
321     [I--] [ ] app-portage/gentoolkit-0.2.0 (0)
322     </pre>
323    
324     <p>
325     The standard query will search our installed packages for the name given.
326     If found, the following info will be displayed: the package location between
327     the first square brackets (I for Installed packages, P for Portage, O for
328     Overlay), the possibles masks between the second (~ by keyword, - by arch or
329     M hard masked), then the category and complete name and last of all, the slot
330     in which the package is stored.
331     </p>
332    
333     <p>
334     Another example, this time we are going to use the local options in order
335     to look for packages in our portage tree and overlay.
336     </p>
337    
338     <pre caption="Using local options with equery">
339     # <i>equery list -p -o vim</i>
340     [ Searching for package 'vim' in all categories among: ]
341     * installed packages
342     [I--] [ ] app-editors/vim-6.3-r4 (0)
343     * Portage tree (/usr/portage)
344     [-P-] [M~] app-editors/vim-7.0_alpha20050126 (0)
345     [-P-] [M~] app-editors/vim-7.0_alpha20050201 (0)
346     [-P-] [ ] app-editors/vim-6.3-r2 (0)
347     [-P-] [M~] app-editors/vim-7.0_alpha20050122 (0)
348     [-P-] [M~] app-editors/vim-core-7.0_alpha20050126 (0)
349     [-P-] [ ] app-editors/vim-core-6.3-r3 (0)
350     [-P-] [M~] app-editors/vim-core-7.0_alpha20050122 (0)
351     [-P-] [M~] app-editors/vim-core-7.0_alpha20050201 (0)
352     [-P-] [ ] app-editors/vim-core-6.3-r4 (0)
353     * overlay tree (/opt/ebuilds)
354     </pre>
355    
356     </body>
357     </section>
358     <section>
359     <title>Finding Package Sizes</title>
360 neysx 1.13 <body>
361    
362     <p>
363     Ever been curious to find out how much space a specific package is occupying?
364     Since a package could have its files over a number of directories, the usual
365     <c>du -hc</c> might not give you the correct figure. Not to worry, here comes
366     <c>equery</c> to the rescue!
367     </p>
368    
369     <pre caption="Package Size">
370     # <i>equery size openoffice-bin</i>
371     * app-office/openoffice-bin-1.1.2
372 neysx 1.22 Total Files : 2908
373     Total Size : 223353.31 KiB
374 neysx 1.13 </pre>
375    
376     <p>
377 yoswink 1.20 As you can see, <c>equery</c> prints the total space used in kilobytes and
378     also lists the total number of files the package has.
379 cam 1.9 </p>
380 cam 1.10
381 cam 1.9 </body>
382     </section>
383     <section>
384 neysx 1.13 <title>Package-wise list of USE Flags</title>
385 cam 1.10 <body>
386 cam 1.9
387     <p>
388 yoswink 1.20 <c>equery</c> can be used to give us information about what USE flags
389     are being used by a specific package. It also tells us what our current USE
390     flags are for a package and also what USE flags are available for the package.
391 cam 1.9 </p>
392 cam 1.10
393 neysx 1.13 <pre caption="Set and Unset USE Flags">
394     # <i>equery uses ethereal</i>
395     [ Colour Code : set unset ]
396     [ Legend : (U) Col 1 - Current USE flags ]
397     [ : (I) Col 2 - Installed With USE flags ]
398 drobbins 1.1
399 neysx 1.13 U I [ Found these USE variables in : net-analyzer/ethereal-0.10.6 ]
400     - - adns : Adds support for the adns DNS client library
401     + + gtk : Adds support for x11-libs/gtk+ (The GIMP Toolkit)
402     - - ipv6 : Adds support for IP version 6
403     - - snmp : Adds support for the Simple Network Management Protocol if available
404     + + ssl : Adds support for Secure Socket Layer connections
405     + + gtk2 : Use gtk+-2.0.0 over gtk+-1.2 in cases where a program supports both.
406 neysx 1.14 - - debug : Tells configure and the makefiles to build for debugging. Effects vary across packages,
407     but generally it will at least add -g to CFLAGS. Remember to set FEATURES=nostrip too
408 cam 1.10 </pre>
409    
410 cam 1.9 <p>
411 neysx 1.13 I have installed ethereal with only the gtk, ssl and gtk2 flags set, but the
412     other USE flags for ethereal are adns, ipv6, snmp and debug. For more
413     information on USE flags, please refer to the <uri
414 neysx 1.17 link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">USE Flags</uri>
415 neysx 1.15 chapter of the <uri link="/doc/en/handbook/">Gentoo Handbook</uri>.
416 cam 1.9 </p>
417    
418 neysx 1.13 </body>
419     </section>
420     <section>
421     <title>Where's the ebuild?</title>
422     <body>
423    
424 cam 1.9 <p>
425 neysx 1.13 We can also find out which ebuild is being used for a specific package using
426     <c>equery</c>. This is done my using the <c>equery which</c> command which
427     displays the full path to the ebuild.
428 cam 1.9 </p>
429 cam 1.10
430 neysx 1.13 <pre caption="Displaying the ebuild path">
431     # <i>equery which cdrtools</i>
432     /usr/portage/app-cdr/cdrtools/cdrtools-2.01_alpha37.ebuild
433     </pre>
434 cam 1.10
435 neysx 1.13 </body>
436     </section>
437 drobbins 1.1 </chapter>
438 cam 1.10
439 drobbins 1.1 <chapter>
440 neysx 1.13 <title>euse</title>
441 cam 1.9 <section>
442     <title>Introduction</title>
443     <body>
444 cam 1.10
445 swift 1.19 <warn>
446     <c>euse</c> is currently broken as it does not support cascading profiles well.
447     </warn>
448    
449 cam 1.9 <p>
450 neysx 1.13 <c>euse</c> is a tool to see, set and unset USE flags at various places. For
451     more information on USE flags, please refer to the <uri
452 swift 1.19 link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">USE Flags</uri>.
453     Please see <c>euse -h</c> for complete help and all options.
454 cam 1.9 </p>
455 cam 1.10
456 cam 1.9 </body>
457     </section>
458     <section>
459 swift 1.19 <title>Viewing, Setting and Unsetting USE Flags</title>
460 neysx 1.13 <body>
461    
462     <p>
463 swift 1.19 The <c>euse -a</c> command reads the current active USE flags and displays
464     them.
465 neysx 1.13 </p>
466    
467 swift 1.19 <note>
468     There are 5 &quot;columns&quot; that <c>euse</c> now uses to show whether a
469     flag is set/unset and where all the flag has been set. The columns are as
470     follows -- +/-, set in the Environment, set in make.Conf, set in make.Defaults,
471     and set in make.Globals. The output looks like [+ECDG].
472     </note>
473    
474     <pre caption="Viewing all active USE flags">
475     # <i> euse -a</i>
476     X [+ CD ]
477     aalib [+ ]
478     acpi [+ C ]
479     alsa [+ C ]
480     apache2 [+ C ]
481     apm [+ D ]
482     avi [+ D ]
483     berkdb [+ D ]
484     bitmap-fonts [+ D ]
485     bonobo [+ ]
486     cdr [+ C ]
487     crypt [+ CD ]
488     cscope [+ C ]
489     cups [+ CD ]
490     curl [+ ]
491     emboss [+ D ]
492     encode [+ D ]
493     esd [+ ]
494     ethereal [+ C ]
495     fam [+ ]
496     fbcon [+ C ]
497     font-server [+ D ]
498     foomaticdb [+ D ]
499     fortran [+ D ]
500     gd [+ C ]
501     gdbm [+ D ]
502     gif [+ CD ]
503     gimpprint [+ C ]
504     gnome [+ CD ]
505     gphoto2 [+ ]
506     gpm [+ CD ]
507     gstreamer [+ C ]
508     gtk [+ D ]
509     gtk2 [+ CD ]
510     gtkhtml [+ C ]
511     guile [+ ]
512     imagemagick [+ ]
513     imlib [+ CD ]
514     imlib2 [+ ]
515     innodb [+ ]
516     ipv6 [+ D ]
517     javascript [+ C ]
518     jpeg [+ CD ]
519     kde [+ D ]
520     ldap [+ ]
521     libg++ [+ CD ]
522     libwww [+ CD ]
523     mad [+ CD ]
524     mbox [+ C ]
525     md5sum [+ C ]
526     mikmod [+ CD ]
527     mmx [+ C ]
528     motif [+ CD ]
529     mozilla [+ C ]
530     mp3 [+ ]
531     mpeg [+ CD ]
532     mpeg4 [+ C ]
533     mysql [+ C ]
534     ncurses [+ CD ]
535     nls [+ D ]
536     nvidia [+ C ]
537     odbc [+ ]
538     offensive [+ ]
539     oggvorbis [+ CD ]
540     opengl [+ CD ]
541     oss [+ D ]
542     pam [+ CD ]
543     pdflib [+ CD ]
544     perl [+ CD ]
545     png [+ CD ]
546     python [+ CD ]
547     qt [+ D ]
548     quicktime [+ CD ]
549     readline [+ CD ]
550     ruby [+ ]
551     sdl [+ CD ]
552     slang [+ D ]
553     spell [+ CD ]
554     sse [+ C ]
555     ssl [+ CD ]
556     svga [+ CD ]
557     tcltk [+ C ]
558     tcpd [+ D ]
559     tiff [+ C ]
560     truetype [+ CD ]
561     truetype-fonts [+ D ]
562     type1-fonts [+ D ]
563     usb [+ C ]
564     vanilla [+ C ]
565     x86 [+ C ]
566     xml [+ ]
567     xml2 [+ D ]
568     xosd [+ C ]
569     xv [+ CD ]
570     xvid [+ C ]
571     zlib [+ CD ]
572 neysx 1.13 </pre>
573    
574     <p>
575 swift 1.19 Similarly you can use the <c>euse -a -g</c> command to only view active global
576     USE flags. The <c>euse -a -l</c> command does the same for active local USE
577     flags.<c>-g</c> &amp; <c>-l</c> are suboptions to <c>euse</c> and need an
578     option before them (like <c>-a</c>) to function correctly.
579     </p>
580    
581     <pre caption="Viewing active local USE flags">
582     # <i>euse -a -l</i>
583     bitmap-fonts [+ D ]
584     font-server [+ D ]
585     fortran [+ D ]
586     gimpprint [+ C ]
587     imlib2 [+ ]
588     md5sum [+ C ]
589     mpeg4 [+ C ]
590     nvidia [+ C ]
591     offensive [+ ]
592     truetype [+ CD ]
593     truetype-fonts [+ D ]
594     type1-fonts [+ D ]
595 neysx 1.13 </pre>
596 cam 1.9
597 swift 1.19 <p>
598     We can also use <c>euse</c> to set or unset use flags. The commands used for
599     this are <c>euse -E flagname</c> (enable a flag) and <c>euse -D flagname</c>
600     (disable a flag).
601     </p>
602    
603     <warn>
604     Do not use the <c>euse -E</c> or <c>euse -D</c> commands by themselves (without
605     a flag). It will set/unset ALL USE flags in <c>/etc/make.conf</c>. Although a
606     backup is kept at <path>/etc/make.conf.euse_backup</path>, please be careful
607     while using <c>euse -E</c> or <c>euse -D</c>.
608     </warn>
609    
610     <pre caption="Setting and Unsetting USE flags">
611     <comment>(Enabling a USE Flag)</comment>
612     # <i> euse -E 3dfx</i>
613     /etc/make.conf was modified, a backup copy has been placed at /etc/make.conf.euse_backup
614    
615     <comment>(/etc/make.conf after the command)</comment>
616     USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc ethereal fbcon gd \
617     gif gimpprint gnome gpm gstreamer gtk2 gtkhtml imlib imlib2 \
618     innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
619     mikmod mmx motif mozilla mpeg mpeg4 mysql ncurses nvidia \
620     oggvorbis odbc offensive opengl pam pdflib perl png python \
621     quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \
622 nightmorph 1.23 vanilla X xml2 xosd xv xvid x86 zlib 3dfx"
623 swift 1.19
624     <comment>(Disabling the USE Flag)</comment>
625     # <i> euse -D 3dfx</i>
626     /etc/make.conf was modified, a backup copy has been placed at /etc/make.conf.euse_backup
627    
628     <comment>(/etc/make.conf after the command)</comment>
629     USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc ethereal fbcon gd \
630     gif gimpprint gnome gpm gstreamer gtk2 gtkhtml imlib imlib2 \
631     innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
632     mikmod mmx motif mozilla mpeg mpeg4 mysql ncurses nvidia \
633     oggvorbis odbc offensive opengl pam pdflib perl png python \
634     quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \
635 nightmorph 1.23 vanilla X xml2 xosd xv xvid x86 zlib -3dfx"
636 cam 1.10 </pre>
637    
638 cam 1.9 <note>
639 neysx 1.13 <c>euse</c> does not physically remove the flag from make.conf. It just adds a
640     - (minus) before the flag to unset it. You may have to manually clean up your
641     make.conf to avoid unwanted variables.
642 cam 1.9 </note>
643 cam 1.10
644 cam 1.9 </body>
645     </section>
646 drobbins 1.1 </chapter>
647    
648     <chapter>
649 neysx 1.13 <title>Other tools</title>
650 cam 1.9 <section>
651 neysx 1.13 <title>revdep-rebuild</title>
652 cam 1.9 <body>
653 cam 1.10
654 cam 1.9 <p>
655 neysx 1.13 This tool is Gentoo's Reverse Dependency rebuilder. It will scan your installed
656     ebuilds to find packages that have become broken as a result of an upgrade of a
657     package they depend on. It can emerge those packages for you but it can also
658     happen that a given package does not work anymore with the currently installed
659 neysx 1.16 dependencies, in which case you should upgrade the broken package to a more
660 neysx 1.13 recent version. revdep-rebuild will pass flags to emerge which lets you use the
661     <c>--pretend</c> flag to see what is going to be emerged again before you go any
662     further.
663 cam 1.9 </p>
664    
665 neysx 1.13 <pre caption="Running revdep-rebuild in pretend mode">
666     # <i>revdep-rebuild -p</i>
667    
668     Checking reverse dependencies...
669     Packages containing binaries and libraries broken by any package update,
670     will be recompiled.
671 cam 1.10
672 neysx 1.13 Collecting system binaries and libraries... done.
673     (/root/.revdep-rebuild.1_files)
674 cam 1.10
675 neysx 1.13 Collecting complete LD_LIBRARY_PATH... done.
676     (/root/.revdep-rebuild.2_ldpath)
677 cam 1.10
678 neysx 1.13 Checking dynamic linking consistency...
679     broken /usr/lib/ao/plugins-2/libarts.so (requires libartsc.so.0)
680     broken /usr/lib/kde3/libkpresenterpart.so (requires libartskde.so.1 libqtmcop.so.1
681     libsoundserver_idl.so.1 libkmedia2_idl.so.1 libartsflow.so.1 libartsflow_idl.so.1 libmcop.so.1)
682     broken /usr/lib/ruby/site_ruby/1.8/i686-linux/fox.so (requires libFOX-1.0.so.0)
683     broken /usr/lib/xine/plugins/1.0.0/xineplug_ao_out_arts.so (requires libartsc.so.0)
684     broken /usr/lib/perl5/vendor_perl/5.8.0/i686-linux/auto/SDL_perl/SDL_perl.so (requires libSDL_gfx.so.0)
685     broken /usr/lib/libloudmouth-1.so.0.0.0 (requires libgnutls.so.10)
686     broken /usr/bin/k3b (requires libartskde.so.1 libqtmcop.so.1 libsoundserver_idl.so.1 libkmedia2_idl.so.1
687     libartsflow.so.1 libartsflow_idl.so.1 libmcop.so.1)
688     broken /usr/bin/lua (requires libhistory.so.4)
689     broken /usr/bin/lyx (requires libAiksaurus-1.0.so.0)
690     broken /usr/bin/luac (requires libhistory.so.4)
691     broken /usr/bin/avidemux2 (requires libartsc.so.0)
692     broken /usr/bin/pptout (requires libxml++-0.1.so.11)
693     broken /usr/bin/xml2ps (requires libxml++-0.1.so.11)
694     done.
695     (/root/.revdep-rebuild.3_rebuild)
696 cam 1.9
697 neysx 1.13 Assigning files to ebuilds... done.
698     (/root/.revdep-rebuild.4_ebuilds)
699 cam 1.10
700 neysx 1.13 Evaluating package order... done.
701     (/root/.revdep-rebuild.5_order)
702 cam 1.10
703 neysx 1.13 All prepared. Starting rebuild...
704     emerge --oneshot --nodeps -p =app-cdr/k3b-0.11.14 =app-office/koffice-1.3.2 =app-office/lyx-1.3.4 \
705     =app-office/passepartout-0.2 =dev-lang/lua-5.0.2 =dev-ruby/fxruby-1.0.29 =media-libs/libao-0.8.5 \
706     =media-libs/xine-lib-1_rc5-r3 =media-video/avidemux-2.0.26 =net-libs/loudmouth-0.16
707 cam 1.10
708 neysx 1.13 These are the packages that I would merge, in order:
709 drobbins 1.1
710 neysx 1.13 Calculating dependencies ...done!
711     [ebuild R ] app-cdr/k3b-0.11.14
712     [ebuild R ] app-office/koffice-1.3.2
713     [ebuild R ] app-office/lyx-1.3.4
714     [ebuild R ] app-office/passepartout-0.2
715     [ebuild R ] dev-lang/lua-5.0.2
716     [ebuild R ] dev-ruby/fxruby-1.0.29
717     [ebuild R ] media-libs/libao-0.8.5
718     [ebuild R ] media-libs/xine-lib-1_rc5-r3
719     [ebuild R ] media-video/avidemux-2.0.26
720     [ebuild R ] net-libs/loudmouth-0.16
721 cam 1.10
722 neysx 1.13 Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
723     </pre>
724 cam 1.10
725     <p>
726 neysx 1.13 If you need to rebuild some packages, you may run <c>revdep-rebuild</c> without
727     the <c>-p</c> flag and the listed packages will be emerged again.
728 cam 1.9 </p>
729    
730     </body>
731     </section>
732 cam 1.10
733 cam 1.9 <section>
734 neysx 1.13 <title>glsa-check</title>
735 cam 1.9 <body>
736 cam 1.10
737     <p>
738 neysx 1.13 <c>glsa-check</c> is mainly a test tool that keeps track of the various GLSA's
739     (Gentoo Linux Security Advisory) and will eventually be integrated into
740     <c>emerge</c> and <c>equery</c>. For more information, please visit the <uri
741 neysx 1.15 link="/proj/en/portage/glsa-integration.xml">Portage GLSA Integration
742     Page</uri>.
743 swift 1.19 </p>
744 cam 1.10
745 cam 1.9 </body>
746     </section>
747 drobbins 1.1 </chapter>
748 neysx 1.13
749 vapier 1.11 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20