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

Debian's APT (Advanced Package Tool) 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