aptitude
is another package manager based on apt
, as apt-get
, apt-cache
, synaptic
and adept
. One great advantage is the way aptitude handles dependencies (depend, recommend, conflict packages).
aptitude
lists auto-installed packages in /var/lib/aptitude/pkgstates
, automatically removes unused auto-installed packages (when they are not a dependency of any other package for example) and logs history in /var/log/aptitude
.
Synaptic
only logs history (> File > History) and apt-get
does not log at all and relies on dpkg
‘s.
Edit: apt-get has now an autoremove option.
This is why it is not recommended to alternatively use aptitude
and apt-get
, aptitude
‘s log will not be complete and problems may be encountered when removing packages (many packages to remove for example). If aptitude
suggests removing packages when you know they are needed, you should reinstall them with aptitude
so that they make it to the log file.
This is how an upgrade looks like in the log file :
Log complete. Aptitude 0.4.1: log report Sun, Dec 17 2006 19:02:07 +0100 IMPORTANT: this log only lists intended actions; actions which fail due to dpkg problems may not be completed. Will install 5 packages, and remove 0 packages. 5337kB of disk space will be used =========================================================== [UPGRADE] gdm 2.16.1-0ubuntu4 -> 2.16.1-0ubuntu4.1 [UPGRADE] language-pack-en 1:6.10+20061019 -> 1:6.10+20061130 [UPGRADE] language-pack-fr 1:6.10+20061019 -> 1:6.10+20061204 [UPGRADE] language-pack-gnome-en 1:6.10+20061019 -> 1:6.10+20061201 [UPGRADE] language-pack-gnome-fr 1:6.10+20061019 -> 1:6.10+20061205 ===========================================================
Do not believe that using aptitude
will allow you to mix Ubuntu repositories with non-Ubuntu ones in your sources.list ;-)
aptitude
interface in a terminal
Run aptitude
in a terminal, you’ll get to a two parts ncurses interface :
Clic on the top menu (or CTRL-t) to see the different possibilities and keyboard shortcuts. CTRL-t will get you back to the main screen. The bottom of the screen shows a short description of the menu. If you enter ?, you will get to a help screen.
aptitude
will warn you for broken dependencies, will tell you why and suggest solutions.
When update-manager
pops you up for an upgrade, you can run it from CLI (see below) or from a terminal. If you did not start aptitude
in root mode, you can do it now from the action
menu.
Hit “u” to mark upgradable packages, and “U” to run the upgrade :
aptitude
in CLI
Main options are : install
, remove
, purge
, show
, search
, update
, upgrade
, dist-upgrade
. See man aptitude
.
If conflitcs are present when installing or removing packages, aptitude
will warn you make some suggestions.
For example :
~ $ aptitude show aptitude E: /home/isabella/.aptitude/config - Unable to open %s for writing (13 Permission denied) Package: aptitude State: installed Automatically installed: no Version: 0.4.1-1.1ubuntu7 Priority: important Section: admin Maintainer: Ubuntu Core Developers Uncompressed Size: 7881k Depends: libapt-pkg-libc6.4-6-3.51, libc6 (>= 2.4-1), libgcc1 (>= 1:4.1.1-12), libncursesw5 (>= 5.4-5), libsigc++-2.0-0c2a (>= 2.0.2), libstdc++6 (>= 4.1.1-12) Recommends: aptitude-doc-en | aptitude-doc Suggests: libparse-debianchangelog-perl, tasksel, debtags Description: terminal-based apt frontend aptitude is a terminal-based apt frontend with a number of useful features, including: a mutt-like syntax for matching packages in a flexible manner, dselect-like persistence of user actions, the ability to retrieve and display the Debian changelog of most packages, and a command-line mode similar to that of apt-get. aptitude is also Y2K-compliant, non-fattening, naturally cleansing, and housebroken.
Tips and tricks
- You did not start
aptitude
in sudo mode and you need to be root to do something ? When needed,aptitude
will offer to gain root priviledges and will prompt you for your password (no more need to launchsynaptic
in root mode to look for informations on a package ^^) - The configuration file is ~/.aptitude/
- You do not like the default color theme ? You can change it all in the configuration file
- You can run a simulation with -s
- Search and show options for packages informations
- When an upgrade is difficult, aptitude will perform the least harmful action first. If it fails, or is not enough, running a second upgrade will end up with more aggressive actions (CTRL + U to cancel).
References
New aptitude actions
To install a complete manual in english : sudo aptitude install aptitude-doc-en
and then read /usr/share/doc/aptitude/html/en/index.html.