Replace epkginfo with 'equery meta'. The original script is available in the deprecat...
[gentoolkit.git] / man / revdep-rebuild.1
1 .TH "revdep\-rebuild" "1" "" "gentoolkit" ""
2 .SH "NAME"
3 revdep\-rebuild \- Gentoo: Reverse Dependency Rebuilder
4 .SH "SYNOPSIS"
5 .B revdep\-rebuild
6 [OPTIONS] [\-\-] [EMERGE OPTIONS]
7 .SH "DESCRIPTION"
8 revdep\-rebuild scans libraries and binaries for missing shared library dependencies and attempts to fix them by re\-emerging those broken binaries and shared libraries.  It is useful when an upgraded package breaks other software packages that are dependent upon the upgraded package.
9 .SH "OPTIONS"
10 .TP 
11 .B \-C | \-\-nocolor
12 Turn off colored output. (This option is also passed to portage.)
13 .TP
14 .B \-d | \-\-debug
15 Print way too much information (uses bash's set -xv)
16 .TP      
17 .B \-e | \-\-exact
18 Emerge the most recent version of found packages, without regard to SLOT.
19 .TP 
20 .B \-h | \-\-help
21 Print usage.
22 .TP
23 .B \-i | \-\-ignore
24 Delete temporary files from previous runs.
25 .TP
26 .B \-k | \-\-keep\-temp
27 Force revdep\-rebuild not to delete temporary files after it successfully rebuilds packages. This option will NOT prevent revdep\-rebuild from deleting inconsistent or out\-of\-date temporary files.
28 .TP
29 .B \-\-library NAME | -L NAME
30 Search for reverse dependencies for a particular library or group of libraries, rather than every library on the system. Emerge packages that use the named library. NAME can be a full path to a library or basic regular expression.  (See regex(7).)
31 .TP 
32 .B \-l | \-\-no\-ld\-path
33 Do not set LD_LIBRARY_PATH. \fBNote:\fR Using this option will cause revdep-rebuild to report some false positives.
34 .TP 
35 .B \-o | \-\-no-order
36 Do not check the build order against the deep dependency list.  This will make revdep-rebuild faster, but it can cause emerge failures.  Please try revdep\-rebuild without \-o before reporting any bugs.
37 .TP 
38 .B \-p | \-\-pretend
39 Do a dry-run.  Do not delete temporary files.  (\-k \-p is redundant, but harmless.)  \-\-pretend is assumed when not running revdep\-rebuild as root.
40 .TP 
41 .B \-P | \-\-no\-progress
42 Turn off the progress meter
43 .TP 
44 .B \-q | \-\-quiet
45 Print less output and disable the progress meter.  (This option is also passed to portage.)
46 .TP
47 .B \-v | \-\-verbose
48 More output.  (Prints the revdep\-rebuild search environment.)
49 .TP
50 .B Options after -- are ignored by revdep-rebuild and passed directly to emerge.
51 .SH "CONFIGURATION"
52 revdep\-rebuild no longer uses hardcoded paths. To change the default behavior the following variables can be changed by the user.
53
54 LD_LIBRARY_MASK \- Mask of specially evaluated libraries
55 .LP 
56 SEARCH_DIRS \- List of directories to search for executables and libraries
57 .LP 
58 SEARCH_DIRS_MASK \- List of directories to not search
59
60 You can prepend to these variables by setting the variable in your environment prior to execution, by placing an entry in /etc/make.conf, or by placing a file in /etc/revdep\-rebuild containing the appropriate variables.
61
62 The variables are read and set in the following order:
63
64 environment settings \- one time changes by user
65 .br 
66 /etc/make.conf \- persistent changes by user
67 .br 
68 /etc/revdep\-rebuild/* \- persistent changes by ebuild authors
69
70 While a user can edit and modify the files in the /etc/revdep\-rebuild directory, please be aware that the /etc/revdep\-rebuild directory is not under configuration protection and files can be removed and/or overwritten by an ebuild. To change this add /etc/revdep\-rebuild to the CONFIG_PROTECT variable in /etc/make.conf.
71
72 An entry of "\-*" means to clear the variable from that point forward.
73 Example: SEARCH_DIRS="/usr/bin \-*" will set SEARCH_DIRS to contain only /usr/bin
74
75 revdep\-rebuild honors the NOCOLOR and PORTAGE_NICENESS variables from /etc/make.conf
76 .SH "EXAMPLES"
77 It is recommended that when running revdep\-rebuild that the following command be used initially:
78 .br 
79 \fBrevdep\-rebuild \-\-ignore \-\-pretend\fR
80
81 To search the entire system, while excluding /mnt and /home:
82 .br 
83 \fBenv SEARCH_DIRS="/ \-*" SEARCH_DIRS_MASK="/mnt /home" revdep\-rebuild\fR
84
85 To rebuild packages that depend on libkdecore.so.4 from KDE 3.3:
86 .br 
87 \fBrevdep\-rebuild \-\-library /usr/kde/3.3/lib/libkdecore.so.4\fR
88
89 To rebuild packages that depend upon libImlib.so and libImlib2.so:
90 .br 
91 \fBrevdep\-rebuild \-\-library libImlib[2]*.so.*\fR
92
93 .SH "FILES"
94 .P
95 revdep\-rebuild keeps several pseudo-temporary files in /var/cache/revdep\-rebuild/. Deleting these files can improve accuracy at the cost of speed:
96 .TP 15
97 .I 0_env.rr
98 Contains environment variables
99 .TP
100 .I 1_files.rr
101 Contains a list of files to search
102 .TP
103 .I 2_ldpath.rr
104 Contains the LDPATH
105 .TP
106 .I 3_broken.rr
107 Contains the list of broken files
108 .TP
109 .I 3_errors.rr
110 Contains the ldd error output
111 .TP
112 .I 4_raw.rr
113 Contains the raw list of packages
114 .TP
115 .I 4_owners.rr
116 Contains the file owners
117 .TP
118 .I 4_pkgs.rr
119 Contains the unsorted bare package names
120 .TP
121 .I 4_ebuilds.rr
122 Contains the unsorted atoms
123 .TP
124 .I 5_order.rr
125 Contains the sorted atoms
126 .TP
127 .I 6_status.rr
128 Contains the ldd error output
129
130 .SH "EXIT STATUS"
131 revdep\-rebuild returns a zero exit status if it \fBand emerge\fR succeeds, and a nonzero exit status otherwise.
132 .SH "BUGS"
133 .LP 
134 Report bugs to <http://bugs.gentoo.org>. Please do not report emerge failures caused by \-o or \-e. Please include your files from /var/cache/revdep\-rebuild/, your emerge \-\-info, and patches. ;)
135
136 .SH "SEE ALSO"
137 emerge(1), portage(5), regex(7)