/[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.24 - (hide annotations) (download) (as text)
Fri Nov 17 19:26:57 2006 UTC (8 years ago) by nightmorph
Branch: MAIN
Changes since 1.23: +38 -50 lines
File MIME type: application/xml
overhauled gentoolkit.xml for use flag & package changes, bug 155500

1 vapier 1.11 <?xml version="1.0" encoding="UTF-8"?>
2 nightmorph 1.24 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoolkit.xml,v 1.23 2006/11/02 18:41:52 nightmorph 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 nightmorph 1.24 <author title="Editor">
30     <mail link="nightmorph@gentoo.org">Joshua Saddler</mail>
31     </author>
32 drobbins 1.1
33     <abstract>
34 cam 1.9 Gentoolkit is a suite of tools to ease the administration of a Gentoo system.
35     This document covers the basics of some of the tools present in Gentoolkit.
36 drobbins 1.1 </abstract>
37    
38 yoswink 1.20 <!-- Licensed under GFDL -->
39    
40 nightmorph 1.24 <version>1.10</version>
41     <date>2006-11-17</date>
42 drobbins 1.1
43     <chapter>
44 cam 1.9 <title>Introduction</title>
45     <section>
46     <title>What is Gentoolkit?</title>
47     <body>
48    
49     <p>
50 neysx 1.13 Gentoo is a unique distribution and presents some complexities that simply
51 cam 1.9 don't exist for other distributions. As Gentoo developers and contributors
52     discovered some of these complexities, they also wrote tools to help users and
53     administrators work around them. Many of these tools have been contributed to
54 neysx 1.13 the Gentoo project and are included in the package
55 cam 1.9 <c>app-portage/gentoolkit</c>.
56     </p>
57    
58 neysx 1.13 <note>
59     As of now, there are two versions of gentoolkit: <c>app-portage/gentoolkit</c>
60     and <c>app-portage/gentoolkit-dev</c>. While the former contains administration
61     scripts, the latter contains scripts specific to help development on Gentoo.
62 yoswink 1.20 If you are a developer, you can have your scripts included into
63     <c>gentoolkit-dev</c> by contacting the Gentoolkit maintainer. This document
64     discusses gentoolkit only.
65 neysx 1.13 </note>
66    
67 cam 1.9 <p>
68 neysx 1.13 Gentoolkit contains a whole bunch of useful tools to help manage your packages
69 neysx 1.15 and keep track of what is going on in your system. Most users --&nbsp;particularly
70 neysx 1.13 those who update systems often&nbsp;-- will benefit from having gentoolkit
71     installed.
72 cam 1.9 </p>
73    
74     </body>
75     </section>
76     <section>
77     <title>Installation</title>
78     <body>
79    
80     <p>
81     Just as with any Gentoo package, installation is just a simple emerge.
82     </p>
83    
84 neysx 1.13 <pre caption="Getting gentoolkit">
85 cam 1.10 # <i>emerge gentoolkit</i>
86 cam 1.9 </pre>
87    
88     <note>
89     Many of the tools in gentoolkit reveal important information about your system
90 neysx 1.13 or require root privilege. For that reason, some of the programs may only be
91     executed (or only function properly) if run by a user with root permission.
92 cam 1.9 </note>
93    
94     </body>
95     </section>
96     <section>
97     <title>Finding Documentation</title>
98     <body>
99    
100     <p>
101 neysx 1.13 Any documentation that a program might have (other than man pages) is stored in
102 cam 1.9 <path>/usr/doc/gentoolkit-[version]/[program-name]/</path>.
103     </p>
104 cam 1.10
105 cam 1.9 </body>
106     </section>
107 drobbins 1.1 </chapter>
108 cam 1.10
109 drobbins 1.1 <chapter>
110 neysx 1.13 <title>equery</title>
111 cam 1.9 <section>
112     <title>Introduction</title>
113     <body>
114 cam 1.10
115 cam 1.9 <p>
116 nightmorph 1.24 <c>equery</c> is a tool that displays a great deal of useful information about
117     the packages on your system and much more. <c>equery --help</c> gives you the
118     full set of options.
119 neysx 1.13 </p>
120    
121     <note>
122     Not all features listed by <c>equery --help</c> have been implemented yet.
123 yoswink 1.20 Those that have not been, are mentioned clearly. You will also see that
124     every command has a short option, e.g. <c>b</c> instead of <c>belongs</c>.
125     </note>
126    
127     <note>
128 nightmorph 1.24 Be aware that equery currently changes the format of the output if it is sent
129     through a pipe. The piped format is intended to be easier to parse by tools, but
130     you can also turn it off by adding the <c>--no-pipe</c> option. If you write
131     scripts that employ equery, you should be aware 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 nightmorph 1.24 # <i>equery files gentoolkit</i>
255 yoswink 1.20 [ 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 nightmorph 1.24 <pre caption="Searching packages which use the mozilla USE flag">
299 yoswink 1.20 # <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 nightmorph 1.24 # <i>equery uses wireshark</i>
395 neysx 1.13 [ 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 nightmorph 1.24 U I [ Found these USE variables in : net-analyzer/wireshark-0.99.4 ]
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     - - kerberos : Adds kerberos support
404     - - portaudio : Adds support for the crossplatform portaudio audio API
405     - - selinux : !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
406     - - snmp : Adds support for the Simple Network Management Protocol if available
407     + + ssl : Adds support for Secure Socket Layer connections
408     - - threads : Adds threads support for various packages. Usually pthreads
409 cam 1.10 </pre>
410    
411 cam 1.9 <p>
412 nightmorph 1.24 I have installed wireshark with only the gtk and ssl flags set, but there are
413     several other USE flags for wireshark still available. For more information on
414     USE flags, please refer to the <uri
415 neysx 1.17 link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">USE Flags</uri>
416 neysx 1.15 chapter of the <uri link="/doc/en/handbook/">Gentoo Handbook</uri>.
417 cam 1.9 </p>
418    
419 neysx 1.13 </body>
420     </section>
421     <section>
422     <title>Where's the ebuild?</title>
423     <body>
424    
425 cam 1.9 <p>
426 neysx 1.13 We can also find out which ebuild is being used for a specific package using
427     <c>equery</c>. This is done my using the <c>equery which</c> command which
428     displays the full path to the ebuild.
429 cam 1.9 </p>
430 cam 1.10
431 neysx 1.13 <pre caption="Displaying the ebuild path">
432     # <i>equery which cdrtools</i>
433     /usr/portage/app-cdr/cdrtools/cdrtools-2.01_alpha37.ebuild
434     </pre>
435 cam 1.10
436 neysx 1.13 </body>
437     </section>
438 drobbins 1.1 </chapter>
439 cam 1.10
440 drobbins 1.1 <chapter>
441 neysx 1.13 <title>euse</title>
442 cam 1.9 <section>
443     <title>Introduction</title>
444     <body>
445 cam 1.10
446 cam 1.9 <p>
447 neysx 1.13 <c>euse</c> is a tool to see, set and unset USE flags at various places. For
448     more information on USE flags, please refer to the <uri
449 swift 1.19 link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">USE Flags</uri>.
450     Please see <c>euse -h</c> for complete help and all options.
451 cam 1.9 </p>
452 cam 1.10
453 cam 1.9 </body>
454     </section>
455     <section>
456 swift 1.19 <title>Viewing, Setting and Unsetting USE Flags</title>
457 neysx 1.13 <body>
458    
459     <p>
460 swift 1.19 The <c>euse -a</c> command reads the current active USE flags and displays
461     them.
462 neysx 1.13 </p>
463    
464 swift 1.19 <note>
465     There are 5 &quot;columns&quot; that <c>euse</c> now uses to show whether a
466     flag is set/unset and where all the flag has been set. The columns are as
467     follows -- +/-, set in the Environment, set in make.Conf, set in make.Defaults,
468     and set in make.Globals. The output looks like [+ECDG].
469     </note>
470    
471     <pre caption="Viewing all active USE flags">
472     # <i> euse -a</i>
473     X [+ CD ]
474     aalib [+ ]
475     acpi [+ C ]
476     alsa [+ C ]
477     apache2 [+ C ]
478     apm [+ D ]
479     avi [+ D ]
480     berkdb [+ D ]
481     bitmap-fonts [+ D ]
482     bonobo [+ ]
483     cdr [+ C ]
484     crypt [+ CD ]
485     cscope [+ C ]
486     cups [+ CD ]
487     curl [+ ]
488     emboss [+ D ]
489     encode [+ D ]
490     esd [+ ]
491     fam [+ ]
492     fbcon [+ C ]
493     font-server [+ D ]
494     foomaticdb [+ D ]
495     fortran [+ D ]
496     gd [+ C ]
497     gdbm [+ D ]
498     gif [+ CD ]
499     gimpprint [+ C ]
500     gnome [+ CD ]
501     gphoto2 [+ ]
502     gpm [+ CD ]
503     gstreamer [+ C ]
504     gtk [+ D ]
505     gtkhtml [+ C ]
506     guile [+ ]
507     imagemagick [+ ]
508     imlib [+ CD ]
509     innodb [+ ]
510     ipv6 [+ D ]
511     javascript [+ C ]
512     jpeg [+ CD ]
513     kde [+ D ]
514     ldap [+ ]
515     libg++ [+ CD ]
516     libwww [+ CD ]
517     mad [+ CD ]
518     mbox [+ C ]
519     md5sum [+ C ]
520     mikmod [+ CD ]
521     mmx [+ C ]
522     motif [+ CD ]
523     mozilla [+ C ]
524     mp3 [+ ]
525     mpeg [+ CD ]
526     mpeg4 [+ C ]
527     mysql [+ C ]
528     ncurses [+ CD ]
529     nls [+ D ]
530     nvidia [+ C ]
531     odbc [+ ]
532     offensive [+ ]
533 nightmorph 1.24 ogg [+ CD ]
534 swift 1.19 opengl [+ CD ]
535     oss [+ D ]
536     pam [+ CD ]
537     pdflib [+ CD ]
538     perl [+ CD ]
539     png [+ CD ]
540     python [+ CD ]
541     qt [+ D ]
542     quicktime [+ CD ]
543     readline [+ CD ]
544     ruby [+ ]
545     sdl [+ CD ]
546     slang [+ D ]
547     spell [+ CD ]
548     sse [+ C ]
549     ssl [+ CD ]
550     svga [+ CD ]
551     tcltk [+ C ]
552     tcpd [+ D ]
553     tiff [+ C ]
554     truetype [+ CD ]
555     usb [+ C ]
556     vanilla [+ C ]
557     x86 [+ C ]
558     xml [+ ]
559     xosd [+ C ]
560     xv [+ CD ]
561     xvid [+ C ]
562     zlib [+ CD ]
563 neysx 1.13 </pre>
564    
565     <p>
566 swift 1.19 Similarly you can use the <c>euse -a -g</c> command to only view active global
567     USE flags. The <c>euse -a -l</c> command does the same for active local USE
568     flags.<c>-g</c> &amp; <c>-l</c> are suboptions to <c>euse</c> and need an
569     option before them (like <c>-a</c>) to function correctly.
570     </p>
571    
572     <pre caption="Viewing active local USE flags">
573     # <i>euse -a -l</i>
574     bitmap-fonts [+ D ]
575     font-server [+ D ]
576     fortran [+ D ]
577     gimpprint [+ C ]
578     md5sum [+ C ]
579     mpeg4 [+ C ]
580     nvidia [+ C ]
581     offensive [+ ]
582     truetype [+ CD ]
583 neysx 1.13 </pre>
584 cam 1.9
585 swift 1.19 <p>
586     We can also use <c>euse</c> to set or unset use flags. The commands used for
587     this are <c>euse -E flagname</c> (enable a flag) and <c>euse -D flagname</c>
588     (disable a flag).
589     </p>
590    
591     <warn>
592     Do not use the <c>euse -E</c> or <c>euse -D</c> commands by themselves (without
593     a flag). It will set/unset ALL USE flags in <c>/etc/make.conf</c>. Although a
594     backup is kept at <path>/etc/make.conf.euse_backup</path>, please be careful
595     while using <c>euse -E</c> or <c>euse -D</c>.
596     </warn>
597    
598     <pre caption="Setting and Unsetting USE flags">
599     <comment>(Enabling a USE Flag)</comment>
600     # <i> euse -E 3dfx</i>
601     /etc/make.conf was modified, a backup copy has been placed at /etc/make.conf.euse_backup
602    
603     <comment>(/etc/make.conf after the command)</comment>
604 nightmorph 1.24 USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon gd \
605     gif gimpprint gnome gpm gstreamer gtkhtml imlib \
606 swift 1.19 innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
607     mikmod mmx motif mozilla mpeg mpeg4 mysql ncurses nvidia \
608 nightmorph 1.24 ogg odbc offensive opengl pam pdflib perl png python \
609 swift 1.19 quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \
610 nightmorph 1.24 vanilla X xosd xv xvid x86 zlib 3dfx"
611 swift 1.19
612     <comment>(Disabling the USE Flag)</comment>
613     # <i> euse -D 3dfx</i>
614     /etc/make.conf was modified, a backup copy has been placed at /etc/make.conf.euse_backup
615    
616     <comment>(/etc/make.conf after the command)</comment>
617 nightmorph 1.24 USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon gd \
618     gif gimpprint gnome gpm gstreamer gtkhtml imlib \
619 swift 1.19 innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
620     mikmod mmx motif mozilla mpeg mpeg4 mysql ncurses nvidia \
621 nightmorph 1.24 ogg odbc offensive opengl pam pdflib perl png python \
622 swift 1.19 quicktime readline sdl spell sse ssl svga tcltk tiff truetype usb \
623 nightmorph 1.24 vanilla X xosd xv xvid x86 zlib -3dfx"
624 cam 1.10 </pre>
625    
626 cam 1.9 <note>
627 neysx 1.13 <c>euse</c> does not physically remove the flag from make.conf. It just adds a
628     - (minus) before the flag to unset it. You may have to manually clean up your
629     make.conf to avoid unwanted variables.
630 cam 1.9 </note>
631 cam 1.10
632 cam 1.9 </body>
633     </section>
634 drobbins 1.1 </chapter>
635    
636     <chapter>
637 neysx 1.13 <title>Other tools</title>
638 cam 1.9 <section>
639 neysx 1.13 <title>revdep-rebuild</title>
640 cam 1.9 <body>
641 cam 1.10
642 cam 1.9 <p>
643 neysx 1.13 This tool is Gentoo's Reverse Dependency rebuilder. It will scan your installed
644     ebuilds to find packages that have become broken as a result of an upgrade of a
645     package they depend on. It can emerge those packages for you but it can also
646     happen that a given package does not work anymore with the currently installed
647 neysx 1.16 dependencies, in which case you should upgrade the broken package to a more
648 neysx 1.13 recent version. revdep-rebuild will pass flags to emerge which lets you use the
649     <c>--pretend</c> flag to see what is going to be emerged again before you go any
650     further.
651 cam 1.9 </p>
652    
653 neysx 1.13 <pre caption="Running revdep-rebuild in pretend mode">
654     # <i>revdep-rebuild -p</i>
655    
656     Checking reverse dependencies...
657     Packages containing binaries and libraries broken by any package update,
658     will be recompiled.
659 cam 1.10
660 neysx 1.13 Collecting system binaries and libraries... done.
661     (/root/.revdep-rebuild.1_files)
662 cam 1.10
663 neysx 1.13 Collecting complete LD_LIBRARY_PATH... done.
664     (/root/.revdep-rebuild.2_ldpath)
665 cam 1.10
666 neysx 1.13 Checking dynamic linking consistency...
667     broken /usr/lib/ao/plugins-2/libarts.so (requires libartsc.so.0)
668     broken /usr/lib/kde3/libkpresenterpart.so (requires libartskde.so.1 libqtmcop.so.1
669     libsoundserver_idl.so.1 libkmedia2_idl.so.1 libartsflow.so.1 libartsflow_idl.so.1 libmcop.so.1)
670     broken /usr/lib/ruby/site_ruby/1.8/i686-linux/fox.so (requires libFOX-1.0.so.0)
671     broken /usr/lib/xine/plugins/1.0.0/xineplug_ao_out_arts.so (requires libartsc.so.0)
672     broken /usr/lib/perl5/vendor_perl/5.8.0/i686-linux/auto/SDL_perl/SDL_perl.so (requires libSDL_gfx.so.0)
673     broken /usr/lib/libloudmouth-1.so.0.0.0 (requires libgnutls.so.10)
674     broken /usr/bin/k3b (requires libartskde.so.1 libqtmcop.so.1 libsoundserver_idl.so.1 libkmedia2_idl.so.1
675     libartsflow.so.1 libartsflow_idl.so.1 libmcop.so.1)
676     broken /usr/bin/lua (requires libhistory.so.4)
677     broken /usr/bin/lyx (requires libAiksaurus-1.0.so.0)
678     broken /usr/bin/luac (requires libhistory.so.4)
679     broken /usr/bin/avidemux2 (requires libartsc.so.0)
680     broken /usr/bin/pptout (requires libxml++-0.1.so.11)
681     broken /usr/bin/xml2ps (requires libxml++-0.1.so.11)
682     done.
683     (/root/.revdep-rebuild.3_rebuild)
684 cam 1.9
685 neysx 1.13 Assigning files to ebuilds... done.
686     (/root/.revdep-rebuild.4_ebuilds)
687 cam 1.10
688 neysx 1.13 Evaluating package order... done.
689     (/root/.revdep-rebuild.5_order)
690 cam 1.10
691 neysx 1.13 All prepared. Starting rebuild...
692     emerge --oneshot --nodeps -p =app-cdr/k3b-0.11.14 =app-office/koffice-1.3.2 =app-office/lyx-1.3.4 \
693     =app-office/passepartout-0.2 =dev-lang/lua-5.0.2 =dev-ruby/fxruby-1.0.29 =media-libs/libao-0.8.5 \
694     =media-libs/xine-lib-1_rc5-r3 =media-video/avidemux-2.0.26 =net-libs/loudmouth-0.16
695 cam 1.10
696 neysx 1.13 These are the packages that I would merge, in order:
697 drobbins 1.1
698 neysx 1.13 Calculating dependencies ...done!
699     [ebuild R ] app-cdr/k3b-0.11.14
700     [ebuild R ] app-office/koffice-1.3.2
701     [ebuild R ] app-office/lyx-1.3.4
702     [ebuild R ] app-office/passepartout-0.2
703     [ebuild R ] dev-lang/lua-5.0.2
704     [ebuild R ] dev-ruby/fxruby-1.0.29
705     [ebuild R ] media-libs/libao-0.8.5
706     [ebuild R ] media-libs/xine-lib-1_rc5-r3
707     [ebuild R ] media-video/avidemux-2.0.26
708     [ebuild R ] net-libs/loudmouth-0.16
709 cam 1.10
710 neysx 1.13 Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
711     </pre>
712 cam 1.10
713     <p>
714 neysx 1.13 If you need to rebuild some packages, you may run <c>revdep-rebuild</c> without
715     the <c>-p</c> flag and the listed packages will be emerged again.
716 cam 1.9 </p>
717    
718     </body>
719     </section>
720 cam 1.10
721 cam 1.9 <section>
722 neysx 1.13 <title>glsa-check</title>
723 cam 1.9 <body>
724 cam 1.10
725     <p>
726 neysx 1.13 <c>glsa-check</c> is mainly a test tool that keeps track of the various GLSA's
727     (Gentoo Linux Security Advisory) and will eventually be integrated into
728     <c>emerge</c> and <c>equery</c>. For more information, please visit the <uri
729 neysx 1.15 link="/proj/en/portage/glsa-integration.xml">Portage GLSA Integration
730     Page</uri>.
731 swift 1.19 </p>
732 cam 1.10
733 cam 1.9 </body>
734     </section>
735 drobbins 1.1 </chapter>
736 neysx 1.13
737 vapier 1.11 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20