Penguin
Note: You are viewing an old revision of this page. View the current version.

Debian's APT system is made up of many individual tools that allow you to do fun things with your packages and package database. Here's a list of them; this is not meant to be a command reference, so command-line flags, etc, are not discussed. This is simply meant to be a full list of available commands, with general descriptions, so that a reader can know what's out there and what he might want to research/install...


dpkg
This is the basic package utility, that handles installing packages, removing them, and getting information from them. All the other tools are frontends for dpkg, and many users rarely use it directly.

apt-get
Every Debian user knows this one; it's the basic tool that's used to organize the installation of packages (dpkg does the actual installing, apt-get handles dependencies, etc). Apt-get itself is text-mode, although it may ask installation questions in a X11 window depending on system configuration.

apt-cache
This command is used to search the contents of your local package database. Searches with apt-cache are different from searches with dpkg in that an apt-cache search will cover the entire contents whatever is in your sources list (as opposed to dpkg searches, which only search the contents of installed packages). Text-mode.

dselect
An ncurses-based frontend for apt-get that handles package dependencies, suggestions, recommendations, etc. Use of this program is recommended for not necessarily "advanced" users, but for people who are willing to wade through a very terse and sometimes confusing interface. Many people have blamed this tool for making sweeping changes to their package installations that they didn't intend to make. Approach with caution. :)

aptitude
Another ncurses-based frontend for apt-get that's a lot friendlier. Recommended as a precursor to, or replacement for, dselect.

synaptic
Originally designed for !SuSe? Linux, there is a Debian-adapted version of this X11-based apt-get frontend that works really well for what I call "package shopping"...going through the full list of what's available. I personally had problems doing the actual installing with synaptic, so personally I recommend running synaptic for package shopping, then opening an xterm and running apt-get at the command line to actually install...but that was a while ago and it's quite possible those issues are resolved now.

apt-file
Search for a filename installed by any package in the contents of sources.list.

apt-listchanges
Display the relevant changelog entries whenever a package is upgraded.

apt-build
Download the source package for something, build it on the fly, and install the newly built binary package. This normally isn't necessary, since Debian's packages will already be built against the libraries you have (since Debian, unlike other distributions, is a coherent package set rather than just an FTP site full of unrelated packages), but with apt-build you can optionally apply patches to the source tree after downloading but before building. The command "apt-build world" does what you'd expect it to do...I'm afraid of this and haven't tried it myself. :)

apt-cdrom
Add a CD-ROM with packages on it to your sources.list.

apt-rdepends
Generates recursive dependency trees for a package.

apt-spy
Generates a sources.list file from the current list of mirrors, after testing them for latency/bandwidth.

apt-show-versions
Shows all available versions of a package (allows wildcards), or all packages, and displays upgrade information where applicable.

dpkg-reconfigure
Allows you to reconfigure package preferences (the same questions that are asked when the package is installed).

apt-show-source
Variant of "apt-cache show" that shows information for the source version of the package named, rather than the binary version.

apt-listbugs
Shows critical bugs in named packages. Can be run anytime, but specifically intended to help users that track the "unstable" distribution from upgrading to a package that catastrophically breaks the system.

apt-zip
Allows non-networked machines to benefit from apt by exporting a list of packages selected for install, then later installing those packages from removable media after another machine has downloaded them.

apt-config
This one doesn't really count, as it's not meant to be used directly...this program is used by the other apt utilities to provide a standard interface to the apt configuration settings.

apt-ftparchive
Generates, from a directory of packages, the "Packages" and "Sources" control files used for an apt repository.

apt-move
Moves a collection of Debian packages into a proper "pool" directory hierarchy as used by a package repository.

apt-sortpkgs
Recreates Sources and Packages files with the records sorted and within each record, the fields sorted.

apt-extracttemplates
Extracts templates and install scripts from packages.

apt-proxy
Specialized HTTP proxy server made to proxy access to one or more apt repositories. This is very useful on a LAN, where the entire network can get packages from a central machine that only downloads from the mirrors once.

apt-proxy-import
Imports packages into a cache used by apt-proxy.

apt-setup
Sets up the sources.list file (this gets run during the initial OS install, for example)

apt-cacher
Alternative to apt-proxy

auto-apt
From the package description: auto-apt checks the file access of programs running within its environments, and if a program tries to access a file known to belong in an uninstalled package, auto-apt will install that package using apt-get.