NAME
deborphan - Orphaned package finder
SYNOPSIS
deborphan [OPTION] ... [PACKAGE] ...
DESCRIPTION
deborphan finds packages that have no packages depending on them. The default operation is to search within the libs, oldlibs and introspection sections to hunt down unused libraries.
If it is invoked with an optional list of packages, only the dependencies on those packages will be checked. The results are printed to stdout as if the option --show-deps had been given. Searching for specific packages will show the package, regardless of its priority. It is possible to specify -, to read a list of packages from standard input.
OPTIONS
-f, --status-file=FILE
Use FILE as the status file.
-h, --help
Display a short help message and exit.
-v, --version
Display version information and exit.
OUTPUT
MODIFIERS
-d, --show-deps
Show a list of all installed packages and name the packages that depend on them.
-P, --show-priority
Show the priority of the packages found.
-s, --show-section
Show the sections the packages are in.
--no-show-section
Override showing sections when the default is to show them (see --all-packages).
-z, --show-size
Show the installed size of the packages found.
SEARCH
MODIFIERS
-a, --all-packages
Check all the packages, instead of only those in the libs section. Best used (if at all used) in combination with --priority. This option implies --show-section.
-e, --exclude=LIST
Excludes the packages named in LIST (a comma separated list) from the evaluation as if they didn’t exist in the status file.
-H, --force-hold
Ignore "hold" dpkg-flags on packages and thus display these packages. Without this option packages with the "hold" flag set will not be displayed. Please refer to dpkg(1) for more information about package flags. Due a bug in aptitude (Debian bug #137771) hold flags created by aptitude are ignored by deborphan.
--ignore-suggests
--ignore-recommends
Do not check if there is a package ’suggesting’ (--ignore-suggests) or ’recommending’ (--ignore-recommends) the package. When both options are used together, deborphan behaves as if the ’nice-mode’ mentioned below has been turned off.
-n, --nice-mode
Turn off nice-mode. Nice-mode checks if there is a package ’suggesting’ or ’recommending’ the package. If one is found, the package will be marked as in use, or, when --show-deps is used, print out the package suggesting the package as if it were depending on it.
-p, --priority=PRIORITY
Show only those packages with a priority equal to, or greater than PRIORITY. PRIORITY may be in the range of 1–5, or one of required, important, standard, optional, extra. Default value for PRIORITY is 2 (important).
--find-config
This option searches for uninstalled packages which still have configuration files on the system. It implies the -a option.
--libdevel
Also search in section "libdevel".
KEEP FILE
MANAGEMENT
-A, --add-keep PKG1 ... PKGn
Add packages to the list of packages which are never to be reported, regardless of their state. You may specify ’-’ to use standard input. Note that package names are case-sensitive.
-k, --keep-file=FILE
Use FILE to store the list of kept-back packages.
-L, --list-keep
Show the list of packages that are being kept back.
-R, --del-keep PKG1 ... PKGn
Remove packages from the list of packages which are never to be reported. You may specify ’-’ to use standard input. If there are no dependencies for this package next time deborphan is invoked, it will be reported again.
-Z, --zero-keep
Purge the entire list of packages that are being kept back. The only option possible in combination with this option is -A.
GUESSING
--guess-*
--no-guess-*
deborphan can try to guess what packages may not be of much use to you by examining the package’s name and/or description. It will pretend the package is in the main/libs section, and report it as if it were a library. This method is in no way perfect or even reliable, so beware when using this! It is also possible to tell deborphan e.g., to guess all interpreters but not Perl by using --guess-interpreters --no-guess-perl or to guess all but not Mono by using --guess-all --no-guess-mono. Please note that the --no-guess- option must occur after the --guess- option it modifies, this makes it possible to declare more complex things like to guess all, except interpreters but additionally try to guess perl.
The following options are to be prefixed by --guess- or (except only) by --no-guess-:
common |
This option tries to find common packages, i.e. packages with names ending in -common. | ||
data |
This option tries to find data packages, i.e. packages with names ending in -data. | ||
debug |
This option tries to find debugging libraries, i.e. packages with names ending in -dbg or -dbgsym. | ||
dev |
This option tries to find development packages, i.e. packages with names ending in -dev. Also see option --libdevel. | ||
doc |
This option tries to find documentation packages, i.e. packages with names ending in -doc. | ||
dummy |
This option tries to find dummy packages, i.e. packages with dummy or transitional in their short description. | ||
kernel |
This option tries to find kernel-modules. It tries to match (-modules|^nvidia-kernel)-.*[0–9]+\.[0–9]+\.[0–9]+. |
interpreters
Try to find all interpreter modules (i.e. imply ruby, pike, python, perl and mono).
mono |
This option tries to find mono libraries. It tries to match ^libmono. | ||
perl |
This option tries to find perl modules. It tries to match ^lib.*-perl$. | ||
pike |
This option tries to find pike modules. It tries to match ^pike[[:digit:]]*-. | ||
python |
This option tries to find python modules. It tries to match ^python[[:digit:]]*-. | ||
ruby |
This option tries to find ruby modules. It tries to match ^lib.*-ruby[[:digit:].]*$. |
section
This option tries to find libraries that were accidentally placed in the wrong section. It tries to match ^lib, but not if it ends in one of: -dbg, -dbgsym, -doc, -perl, or -dev.
all |
Try all of the above. | ||
only |
Ignore the package’s section completely, and just go for the name and/or description. This option must be used in conjunction with one or more of the --guess options listed above, or deborphan will not display anything. |
FILES
/var/lib/dpkg/status
Statuses of available packages. See the section INFORMATION ABOUT PACKAGES in dpkg’s man-page for more information.
/var/lib/deborphan/keep
A newline-separated list of packages to keep. Package names are in no particular order.
SEE ALSO
dpkg(8), dselect(8), cruft(8), xargs(1)
BUGS
If you report a bug, please include your /var/lib/dpkg/status file. That would help in reproducing the bugs.
AUTHORS
deborphan was written by Cris van Pelt <"Cris van Pelt"@tribe.eu.org>, then maintained by Peter Palfrader <weasel [AT] debian.org> and Carsten Hey <c.hey [AT] web.de>