Translation(s): Dutch - English - Español - Français - Italiano -한국어 - Русский - 简体中文

(!) ?Discussion


Introduction

Aptitude is an Ncurses and command-line based front-end to numerous Apt libraries, which are also used by Apt, the default Debian package manager. Aptitude is text based and run from a terminal.

Aptitude has a number of useful features, including:

The primary command is "aptitude", as is the name of its primary Debian package.

Aptitude User Manual

Interactive Use

To run interactively, enter the following from a terminal:

aptitude

After running it, use:

The common use of aptitude in TUI (text user interface) is; run aptitude; press 'u' (update the lists of available packages); press 'U' (Mark all upgradable packages to be upgraded); (search/select some stuff to install, is optional); press 'g' (to see the pending actions and modify if needed); press 'g' (again, to start the download).

Some time when you need to resolve conflicts, you discover that you made a mistake; you can easily use 'Cancel pending actions' in the 'Actions' menu so that you can re-select.

When reviewing dependency resolutions (shown after pressing 'e'), press:

When reviewing pending actions, press:

See Accessing package information for understanding the letters in the package synopsis line (e.g., 'i' means "will be installed", 'p' means "not installed", etc.)

Commandline Use

Functions only useful as root

You can also use aptitude in the same manner as apt-get:

Update the packages list :

# aptitude update

Upgrade the packages :

# aptitude safe-upgrade

Install foo :

# aptitude install foo

Remove bar :

# aptitude remove bar

Purge foo :

# aptitude purge foo

Functions useful for every user

Search for packaging containing foo :

$ aptitude search foo

Personally, I still use apt-cache search foo to perform a search – aptitude search foo is slower. But you should try the aptitude search foo way. You should discover that the output is a bit different from apt-cache, in some cases, it may be useful to search for a package to see if it is already installed.

showing if a specific package is installed :

$ aptitude show foo

How to upgrade your distribution

Upgrading from one stable release to the next (e.g. Lenny to Squeeze) is done by following the release notes for your architecture. For most people with 32 bit systems that means the Release Notes for Intel x86. For most with 64 bit systems that means the Release Notes for AMD64.

Using full-upgrade in the regular course of events is no longer the recommended practice (unless you are running sid, in which case you should not need to be reading this.)

Minor release upgrades (e.g. from lenny 5.0.1 to 5.0.2) and security updates are done with safe-upgrade.

$ cat /etc/debian_version

Example for upgrading from, e.g., etch 4.0r1 to 4.0r2 ...etc., or applying security upgrades:

# aptitude update
# aptitude safe-upgrade

apt vs aptitude

Action

apt command

aptitude command

Install foo

apt install foo

aptitude install foo

Search foo

apt search foo

aptitude search foo

List installed packages

apt list

aptitude search ~i

Remove foo

apt remove foo

aptitude remove foo

List reverse dependencies

apt rdepends foo

aptitude search ~Dfoo

Print information on priorities for foo

apt policy foo (since Buster), apt-cache policy foo

aptitude versions foo

Show package information for foo

apt show foo

aptitude show foo

Download foo's sources

apt source foo

aptitude source foo

Download foo's sources and build a binary .deb package

apt source --compile foo

(none)

Advanced search patterns

Looking for packages installed from anything else than stable:

aptitude search '?narrow(?installed, !?archive(stable))'

Looking for packages installed from testing (assuming you have sources lists with stable and testing repositories):

aptitude search '?narrow(?installed, ?archive(testing) !?archive(stable))'

See Also

and ... apt.conf, preferences, sources.list, Aptitude::Parse-Description-Bullets=true, AptitudeTodo