Re: Apt-get and aptitude man pages (was "aptitude synaptic gnome to be removed?")
On Sunday 03 July 2005 12:14, R. Clayton <email@example.com>
> I feel like answering RTFM again, but you've been reasonable and polite.
> Thank you for your courtesy.
> 'apt-get upgrade' is restricted (and therefore safer) in that:
> under no circumstances are currently installed packages removed,
> Neither the apt-get nor the aptitude man page make that distinction (which
> is not to say it's wrong, just that you can't learn it by RingTFM).
It's a direct quote from 'man apt-get'; it says that the action of 'upgrade'
is restricted in that it will not "under [any] circumstances" install new
packages or remove existing packages. Allowing a package manager to
removing packages at its discretion is simply not as safe.
I always verify the proposed action(s) of 'aptitude dist-upgrade' before
permitting it to continue; on occasion, as a set of related packages makes
its way into 'unstable', aptitude may want to remove some packages I use
because their dependencies are not currently satisfied. In my experience,
the situation is always resolved after some (unspecified) period of time --
I think the upgrade to KDE 3.3 took a matter of weeks.
The point is that the result of using 'dist-upgrade' on 'unstable' blindly
may be unsatisfactory to the user. This is what I meant when I said
'upgrade' is safer.
> It may be that dist-upgrade smartly resolves conflicts by removing
> currently installed packages, but the man page doesn't explicitly indicate
As you point out, the apt-get and aptitude man pages do not say this.
However, it's easily verified that 'apt-get dist-upgrade' and 'aptitude
dist-upgrade' may well remove existing packages and/or install new packages
to resolve dependencies. By adding the "-s" (or "--simulate") switch, you
may verify this without actually making any changes.
> The aptitude man page doesn't, except for the synopsis, mention
> dist-upgrade at all.
It does not, but the behavior is easily verified.
> As an aside, the apt-get and aptitude man pages describe different
> behaviors for upgrade. For apt-get, upgrade has the non-removal behavior
> described above. For aptitude, the upgrade behavior is "Installed
> packages will not be removed unless they are unused".
As I said, the behavior of 'apt-get' and 'aptitude', while similar, are not
> This is on a debian testing system, upgraded once a week.
Perhaps, then, you'll take the time to verify that what I said is a correct
description of the behavior of apt-get and aptitude.