Re: A case study of a new user turned off debian
On Tue, Nov 04, 2003 at 12:47:30AM -0500, Greg Stark wrote:
> So all it would take to make the tools handle this would be to somehow
> make apt aware of more revisions of packages. They're all in the pool
> after all. Short of making some king of humongous mega-Packages file with
> every revision of every package -- which apt wouldn't scale up to anyways
> -- they're currently unavailable to APT.
> The low hanging fruit here would be to have APT keep packages you had
> installed yourself in the cache rather than immediately discarding them as
> soon as they're upgraded. At a minimum keeping one extra revision would at
> least let you roll back. Something more flexible keeping old revisions for
> n days after being replaced would be even cooler.
So because it's not practical for apt to try to maintain a database of all
packages it has ever seen, in addition to the current (enormous) package
database, you're suggesting that apt try to maintain a database of all
packages it has ever installed. This seems to have exactly the same
problem (unbounded growth) on a somewhat smaller scale. What's more, it's
already been implemented at snapshot.debian.net.
Trying to roll back to an earlier version of a package is not a "beginner
friendly" sort of operation. If you don't know what's going on behind the
scenes, you're in for a world of pain even if the tools made it easier for
you to do this. Debian packages don't expect to be downgraded, and it's
rather unlikely to do the right thing for non-trivial packages.
> or perhaps a little less automatic,
> apt-cache show libc6
> to list the available revisions then explicitly
> apt-get install libc6:2.3.2-8
Which, surprisingly enough, is already implemented by apt, using '=' where
you have written ':'.
> Actually this wouldn't really have helped my friend at all because he was
> unlucky enough that the *first* version of libc6 from unstable that he saw
> happened to be the buggy one. That doesn't really happen that often to
> libc6 so he had particularly bad luck there.
So, in other words, implementing the feature you have described wouldn't
have fixed the problem in the first place.