/[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.30 - (hide annotations) (download) (as text)
Tue Jun 26 04:14:39 2007 UTC (7 years, 6 months ago) by nightmorph
Branch: MAIN
Changes since 1.29: +55 -3 lines
File MIME type: application/xml
updated gentoolkit guide for bug 171446

1 vapier 1.11 <?xml version="1.0" encoding="UTF-8"?>
2 nightmorph 1.30 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoolkit.xml,v 1.29 2007/06/26 04:02:53 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.30 <version>1.12</version>
41     <date>2007-06-25</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 nightmorph 1.26 <path>/usr/share/doc/gentoolkit-[version]/[program-name]/</path>.
103 cam 1.9 </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.25 <pre caption="Searching packages which use the firefox USE flag">
299     # <i>equery hasuse firefox</i>
300     [ Searching for USE flag firefox in all categories among: ]
301 yoswink 1.20 * installed packages
302 nightmorph 1.25 [I--] [ ] dev-python/gnome-python-extras-2.14.0-r1 (0)
303     [I--] [ ] media-video/totem-2.16.4 (0)
304 yoswink 1.20 </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 nightmorph 1.27 Overlay), the possible masks between the second (~ by keyword, - by arch or
329 yoswink 1.20 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 neysx 1.28 <c>equery</c>. This is done by using the <c>equery which</c> command which
428 neysx 1.13 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 nightmorph 1.25 # <i>euse -a</i>
473 swift 1.19 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 nightmorph 1.25 firefox [+ C ]
494 swift 1.19 font-server [+ D ]
495     foomaticdb [+ D ]
496     fortran [+ D ]
497     gd [+ C ]
498     gdbm [+ D ]
499     gif [+ CD ]
500     gimpprint [+ C ]
501     gnome [+ CD ]
502     gphoto2 [+ ]
503     gpm [+ CD ]
504     gstreamer [+ C ]
505     gtk [+ D ]
506     gtkhtml [+ C ]
507     guile [+ ]
508     imagemagick [+ ]
509     imlib [+ CD ]
510     innodb [+ ]
511     ipv6 [+ D ]
512     javascript [+ C ]
513     jpeg [+ CD ]
514     kde [+ D ]
515     ldap [+ ]
516     libg++ [+ CD ]
517     libwww [+ CD ]
518     mad [+ CD ]
519     mbox [+ C ]
520     md5sum [+ C ]
521     mikmod [+ CD ]
522     mmx [+ C ]
523     motif [+ CD ]
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.25 USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \
605     firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \
606 swift 1.19 innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
607 nightmorph 1.25 mikmod mmx motif 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.25 USE="alsa acpi apache2 -arts cups cdr crypt cscope -doc fbcon \
618     firefox gd gif gimpprint gnome gpm gstreamer gtkhtml imlib \
619 swift 1.19 innodb -java javascript jpeg libg++ libwww mad mbox md5sum \
620 nightmorph 1.25 mikmod mmx motif 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     <section>
721 neysx 1.13 <title>glsa-check</title>
722 cam 1.9 <body>
723 cam 1.10
724     <p>
725 neysx 1.13 <c>glsa-check</c> is mainly a test tool that keeps track of the various GLSA's
726     (Gentoo Linux Security Advisory) and will eventually be integrated into
727     <c>emerge</c> and <c>equery</c>. For more information, please visit the <uri
728 neysx 1.15 link="/proj/en/portage/glsa-integration.xml">Portage GLSA Integration
729     Page</uri>.
730 swift 1.19 </p>
731 cam 1.10
732 cam 1.9 </body>
733     </section>
734 nightmorph 1.30 <section>
735     <title>eread</title>
736     <body>
737    
738     <p>
739     <c>eread</c> is a simple utility to display elog files produced by
740     >=<c>portage-2.1</c>. You can set the saving of elog files by setting a couple
741     of variables in <path>/etc/make.conf</path>:
742     </p>
743    
744     <pre caption="Enabling elog in /etc/make.conf">
745     PORTAGE_ELOG_CLASSES="log"
746     PORTAGE_ELOG_SYSTEM="save"
747     </pre>
748    
749     <note>
750     This is just one way of saving elog messages. For more information on how
751     Portage's elog system works, please refer to the appropriate page in the <uri
752     link="/doc/en/handbook/handbook-x86.xml?part=3&amp;chap=1#doc_chap4">Portage
753     Handbook</uri>.
754     </note>
755    
756     <p>
757     Once you've set up elog to your satisfaction, just run <c>eread</c> to view your
758     log files.
759     </p>
760    
761     <pre caption="Using eread">
762     $ <i>eread</i>
763    
764     This is a list of portage log items. Choose a number to view that file or type q to quit.
765    
766     1) app-portage:gentoolkit-0.2.4_pre2:20070320-000256.log
767     2) app-portage:gentoolkit-0.2.4_pre2:20070320-000258.log
768     3) app-portage:gentoolkit-0.2.4_pre2:20070320-000319.log
769     4) app-portage:gentoolkit-0.2.3:20070320-000408.log
770     Choice?
771     </pre>
772    
773     <p>
774     Select a number and the file will be displayed using the paging program
775     specified in the PAGER environment variable. If PAGER is not set, it will use
776     <c>less</c>.
777     </p>
778    
779     <p>
780     After displaying the elog item, you will be prompted if you want to delete the
781     file.
782     </p>
783    
784     </body>
785     </section>
786 drobbins 1.1 </chapter>
787 neysx 1.13
788 vapier 1.11 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20