1RPMORPHAN(1) User Contributed Perl Documentation RPMORPHAN(1)
2
3
4
6 rpmorphan - find orphaned packages
7
9 rpmorphan finds "orphaned" packages on your system. It determines which
10 packages have no other packages depending on their installation, and
11 shows you a list of these packages. It is clone of deborphan debian
12 software for rpm packages.
13
14 It will try to help you to remove unused packages, for exemple :
15
16 - after a distribution upgrade
17
18 - when you want to suppress packages after some tests
19
21 rpmorphan.pl [options] [targets]
22
23 options:
24
25 -help brief help message
26 -man full documentation
27 -V, --version print version
28
29 -verbose verbose
30 -dry-run simulate package remove
31 -fullalgo force full algorythm
32 -use-cache use cache to avoid rpm query
33 -clear-cache remove cache file
34 -gui display the graphical interface
35 -tk display the tk graphical interface
36 -curses display the curses graphical interface
37
38 -exclude pac exclude pac from results
39 -install-time +/-d apply on packages which are installed before (after) d days
40 -access-time d apply on packages which are not been accessed for d days (slow)
41
42 targets:
43
44 -package pac search if pac is an orphan package
45 -all apply on all packages
46 -guess-perl apply on perl packages
47 -guess-python apply on python packages
48 -guess-pike apply on pike packages
49 -guess-ruby apply on ruby packages
50 -guess-common apply on common packages
51 -guess-data apply on data packages
52 -guess-doc apply on documentation packages
53 -guess-dev apply on development packages
54 -guess-lib apply on library packages (this is the default target if none is specified)
55 -guess-all apply all -guess-* options (perl, python ...)
56 -guess-custom regex apply the given regex to filter to package's names to filter the output
57
58 keep file management
59
60 -keep-file file define the keep file to be used
61 -list-keep list permanent exclude list
62 -zero-keep empty permanent exclude list
63 -add-keep pac add pac package to permanent exclude list
64 -del-keep pac remove pac package from permanent exclude list
65
67 you should provide at least one target. this can be
68
69 -all all the installed rpm package
70
71 -package
72 one or several explicit package
73
74 -guess-*
75 pre-selected packages groups
76
77 -guess-custom
78 give a filter to select the packages you want study. you can
79 use regular expressions.
80
82 -help Print a brief help message and exits.
83
84 -man Print the manual page and exits.
85
86 -version
87 Print the program release and exit.
88
89 -verbose
90 The program works and print debugging messages.
91
92 -dry-run
93 this is a simulation mode : rpmorphan will show you what is the
94 result of package removing. The window's title is modified to
95 show this mode.
96
97 -use-cache
98 the rpm query may be long (10 to 30 s). If you will run an
99 rpmorphan tool several time, this option will allow to gain a
100 lot of time : it save the rpm query on a file cache (first
101 call), then use this cache instead quering rpm (others calls).
102
103 -clear-cache
104 to remove cache file. Can be used with -use-cache to write a
105 new cache.
106
107 -gui display a graphical interface which allow to show informations,
108 remove packages (an internal help is provided). This is
109 currently the same as the -tk option
110
111 -tk display a tk graphical interface which allow to show
112 informations, remove packages (an internal help is provided).
113 The Tk perl module is necessary to run the gui.
114
115 -curses display a curses graphical interface which allow to show
116 informations, remove packages (an internal help is provided).
117 The Curses::UI perl module is necessary to run the gui.
118
119 -exclude
120 this option will specify the packages to exclude from the
121 output. Can be used as '--exclude pac1 --exclude pac2' or
122 '--exclude "pac1, pac2"'
123
124 -install-time
125 install-time is a filter on the period from the package
126 installation date to now (in days). if set positive, it only
127 allow packages installed before x days. if set negative, it
128 only allow packages installed since x days.
129
130 -access-time
131 access-time is designed to filter packages which have not been
132 used since x days.
133
134 be careful : this option will slow the program
135
136 -fullalgo
137 for a small list of packages, rpmorphan use a different quicker
138 methode : rpm -e --test
139
140 this option can be used to force the use of the full algo
141
142 -package
143 search if the given package(s) is(are) orphaned. Can be used
144 as '--package pac1 --package pac2' or '--package "pac1, pac2"'
145
146 -all apply on all installed packages. The output should be
147 interpreted. For example lilo or grub are orphaned packages,
148 but are necessary to boot ...
149
150 the -install-time and -access-time options may be useful to
151 filter the list
152
153 -guess-perl
154 This option tries to find perl modules. It tries to match
155 "^perl"
156
157 -guess-python
158 This option tries to find python modules. It tries to match
159 "^python"
160
161 -guess-pike
162 This option tries to find pike modules. It tries to match
163 "^pike"
164
165 -guess-ruby
166 This option tries to find ruby modules. It tries to match
167 "^ruby"
168
169 -guess-common
170 This option tries to find common packages. It tries to match
171 "-common$"
172
173 -guess-data
174 This option tries to find data packages. It tries to match
175 "-data$"
176
177 -guess-doc
178 This option tries to find documentation packages. It tries to
179 match "-doc$"
180
181 -guess-data
182 This option tries to find data packages. It tries to match
183 "-data$"
184
185 -guess-dev
186 This option tries to find development packages. It tries to
187 match "-devel$"
188
189 -guess-lib
190 This option tries to find library packages. It tries to match
191 "^lib"
192
193 -guess-all
194 This is a short to tell : Try all of the above (perl, python
195 ...)
196
197 -guess-custom
198 this will allow you to specify your own filter. for exemple
199 "^wh" will match whois, whatsnewfm ...
200
201 -keep-file
202 define the keep file to be used. If not set, the
203 /var/lib/rpmorphan/keep will be used
204
205 -list-keep
206 list the permanent list of excluded packages and exit.
207
208 -zero-keep
209 empty the permanent list of excluded packages and exit.
210
211 -add-keep
212 add package(s) to the permanent list of excluded packages and
213 exit.
214
215 Can be used as '--add-keep pac1 --add-keep pac2' or '--add-keep
216 "pac1, pac2"'
217
218 -del-keep
219 remove package(s) from the permanent list of excluded packages
220 and exit.
221
222 Can be used as '--add-keep pac1 --add-keep pac2' or '--add-keep
223 "pac1, pac2"'
224
226 rpmorphan can be useful after a distribution upgrade, to remove
227 packages forgotten by the upgrade tool. It is interesting to use the
228 options "-all -install-time +xx'.
229
230 If you want to remove some recent tested packages, my advice is "-all
231 -install-time -xx'.
232
233 if you just want to clean your disk, use '-all -access-time xxx'
234
236 /var/lib/rpmorphan/keep : the permanent exclude list
237
238 /tmp/rpmorphan.cache : cache file to store rpm query. The cache file is
239 common to all rpmorphan tools
240
241 /var/log/rpmorphan.log : log of all deleted packages
242
244 the program can read rcfile if some exists. it will load in order
245
246 /etc/rpmorphanrc
247
248 ~/.rpmorphanrc
249
250 .rpmorphanrc
251
252 In this file,
253
254 # are comments,
255
256 and parameters are stored in the following format : parameter = value
257
258 example :
259
260 all = 1
261
262 curses = 1
263
265 rpmorphan uses standard perl module in console mode.
266
267 If you want to use the Tk graphical interface, you should install the
268 Tk module (perl-Tk rpm package).
269
270 If you want to use the curses interface, you should install the
271 Curses::UI perl module ( perl-Curses-UI rpm package).
272
273 If you want to speed up rpmorphan, you should install the RPM2 perl
274 module ( perl-RPM2 rpm package). On mandriva, the URPM perl module
275 (dependency from urpmi) will be used instead.
276
278 display orphaned libraries
279 rpmorphan
280
281 display all orphaned packages in a curses interface
282 rpmorphan --all --curses
283
284 display orphaned packages, not used since one year
285 rpmorphan --all -access-time +365
286
287 display all orphaned packages, installed in the last 10 days
288 rpmorphan --all -install-time -10
289
290 display all orphaned packages, installed one month ago (or more)
291 rpmorphan --all -install-time +30
292
294 Virtuals packages are not well (for now) taken in account. Let's see
295 an example : lilo and grub provide 'bootloader' virtual, which is
296 necessary for system boot. if the 2 are installed, they will be shown
297 all 2 as orphans (but you can not remove the 2). If you remove one of
298 them, the other is now longer shown as orphan.
299
300 the software can only work with one version of each software : we only
301 treat the first version seen
302
304 not known
305
307 to be written
308
310 this program can be used as "normal" user to show orphans, but you need
311 to run it as supersuser (root) to remove packages or apply changes in
312 the permanent exclude list
313
314 access-time and install-time options are "new" features, not available
315 in deborphan tool
316
317 For Fedora users : Yum offers a program called 'package-cleanup' which,
318 called with the '--leaves' option, can show quickly a list of unused
319 library packages.
320
321 For Mandriva users : the 'urpme --auto-orphans' command show quickly a
322 a list of unused library packages.
323
325 rpm(1) for rpm call
326
327 rpmusage(1)
328
329 rpmdep(1)
330
331 rpmduplicates(1)
332
334 should be allways 0
335
337 Copyright (C) 2006 by Eric Gerbier This program is free software; you
338 can redistribute it and/or modify it under the terms of the GNU General
339 Public License as published by the Free Software Foundation; either
340 version 2 of the License, or (at your option) any later version.
341
343 Eric Gerbier
344
345 you can report any bug or suggest to gerbier@users.sourceforge.net
346
347
348
349perl v5.10.0 2010-03-02 RPMORPHAN(1)