Re: aptitude has Priority: standard, why?
Stefano Zacchiroli wrote:
> It's tangential to the main topic of this thread, but you might want to
> give /usr/bin/apt a try: it abstracts over apt-get / apt-cache, offering
> a single CLI entry point to (some of) the functionalities of both.
I've used the new apt tool, and I do find it quite an improvement over
apt-get, but I still have several use cases for which I currently use
aptitude and for which I do not see an obvious alternative with apt:
- Every time I update, aptitude lets me browse newly added packages,
which I find quite helpful to keep up with what's being added in sid
or experimental.
- aptitude has a powerful search language, which I have not seen any
equivalent for in apt. For instance, I frequently use searches like
"?not(?automatic) ?reverse-Depends(?installed)", which shows me
packages I probably want to mark as automatic. And in addition to
search queries, aptitude supports limiting the current package list to
packages match a search query, or showing packages on the command line
that match a query. (grep-dctrl is probably the closest equivalent,
but its query language isn't as powerful, not least of which because
it doesn't provide composeable expressions like
?reverse-Depends(?installed).)
- aptitude provides a curses-style UI, which makes it easy to browse
packages. I can search for a package by various means, see its
description, quickly browse its dependencies (seeing at a glance which
ones I already have installed), and navigate from a package to its
dependencies and their dependencies, then back up. From this UI, I
can quickly operate on an entire set of packages; for instance, I can
hit M on the section heading for "libs" to mark all libraries as
automatic, or on the dependency list for a metapackage to mark all
dependencies of that metapackage as automatic. I can also stage
operations incrementally, such as marking some packages for
installation, reviewing the result, and incrementally modifying it
until it looks like what I want.
- aptitude's UI shows lists of packages with a consistent set of
information, rather than just a bare list of package names that's
harder to scan. I find it much easier in aptitude to see what a daily
upgrade will change. And if something is broken, (e.g. a package in
unstable that depends on a package only in experimental), aptitude
makes that fairly obvious, while apt just says that it didn't upgrade
that package.
- aptitude's UI makes it easy to see held packages at a glance.
Those are some of the reasons I use aptitude. I'd love to see some of
these use cases addressed in apt.
I actually *don't* particularly care for the aptitude dependency
resolver, particularly since it often seems to miss obvious solutions in
favor of awful ones; for instance, if I'm attempting to install one
package from experimental that depends on another package from
experimental, the correct answer is "install the other package from
experimental", not "cancel installation of the package I asked for", and
definitely not "uninstall half the system". It's easy enough to tell
aptitude what I actually want, by hitting R and A to reject or accept
parts of solutions, but apt more frequently seems to choose the right
thing to do on the first try. (Not always, but more often.)
- Josh Triplett
Reply to: