[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: packages removed by Release Manager just reveal older versions

Joey Hess wrote:
(This question is appropriate for the debian-user mailing list,

Dan Jacobson wrote:

there seems no mechanism at present to warn the user that he shouldn't
install it, even if he has done apt-get update from the mirrors.  In
bug 202919 you will see I was just lucky something stopped

I guess I'm hoping for a warning that a package is 'out of fashion'
when I try to apt-get install it.

The problem is that you are using a demonstration frontend for the apt
library, instead of a real package manager.
aptitude or even dselect will display packages that are not in the
archive as "obsolete" or "local", making it easy to tell when you have
something outdated.

If you are installing something that isn't already installed, then you must be getting it from somewhere, hence it must be in the archive somewhere. OP's problem was that he had some old [sid] CDs. I can't think of a straight forward way that any package manager can figure out that you would rather not install packages that are in one of your sources listed in sources.list[and both aptitude and apt-get do tell you where they are getting a package from in the download phase[ie the fact that he had to insert the CDs to install the packages is a warning]]. While I am going to rebut some of these points, I should point out that aptitude is my preferred package manager.


Seven reasons why you should be using aptitude instead of apt-get.

1. aptitude can look just like apt-get

   If you run 'aptitude update' or 'aptitude upgrade' or 'aptitude
   install', it looks and works just like apt-get, with a few enhancements.
   So there is no learning curve.

aptitude doesn't support the '-t' switch. While some people would say that you shouldn't really be using '-t' anyway, a lot of people do use it.

2. aptitude sanely handles recommends

   A long-standing failure of apt-get has been its lack of support for
   the Recommends relationship. Which is a problem because many packages
   in Debian rely on Recommends to pull in software that the average user
   generally uses with the package. This is a not uncommon cause of
   trouble, even though apt-get recently became able to at least mention
   recommended packages, it's easy to miss its warnings.

   Aptitude supports Recommends by default, and can be confgigured to
   support Suggests too. It even supports installing recommended packages
   when used in command-line mode.

This can also tend to pull in a lot of packages that you don't really want if you aren't dilligent, though this can of course be disabled fairly easily or worked around.

3. aptitude tracks automatically installed packages

   Stop worrying about pruning unused libraries and support packages from
   your system. If you use aptitude to install everything, it will keep
   track of what packages are pulled in by dependencies alone, and remove
   those packages when they are no longer needed.

undeniable advantage, things like deborphan are just hacks compared to aptitude.

4. use aptitude as a normal user and avoid hosing your system

   Maybe you didn't know that you can run aptitude in gui mode as a regular
   user. Make any changes you'd like to try out. If you get into a real
   mess, you can hit 'q' and exit, your changes will not be saved.
   (aptitude also lets you use ctrl-u to undo changes). Since it's running
   as a normal user, you cannot hose your system until you tell aptitude to
   do something, at which point it will prompt you for your root password.

I've gotten burned once or twice by aptitude reverting my changes when I become root[it isn't totally reproducible]. Also, apt-get can be used to try things out as a normal user if you add '-o Debug::noLocking=on' to the command.

5. aptitude has a powerful UI and searching capabilities

   Between aptitude's categorical browser and its great support for
   mutt-style filtering and searching of packages by name, description,
   maintainer, dependencies, etc, you should be able to find packages
   faster than ever before using aptitude.

maybe I am just not familiar with aptitude enough, but I find searching for packages with grep-dctrl easier[or even apt-cache]

6. aptitude makes it easy to keep track of obsolete software

   If Debian stops distributing a package, apt will leave it on your system
   indefinitly, with no warnings, and no upgrades. Aptitude lists such
   packages in its "Obsolete and Locally Created Packages" section, so you
   can be informed of the problem and do something about it.

This is really just a corollary to 3. It isn't a problem if directly installed packages become obsolete; if you use a program there is no point removing it.

7. aptitude has an interface to the Debian task system

   Aptitude lets you use Debian's task system as it was designed to be
   used. You can browse the available tasks, select a task for install, and
   then dig into it and de-select parts of the task that you don't want.
   apt-get has no support for tasks, and aptitude is better even than
   special purpose tools like tasksel.

another advantage, though I don't use tasks much.

Attachment: pgpmyG_Q_it43.pgp
Description: PGP signature

Reply to: