[NEW IDEA] Automatic removal of dependencies

Mark Rosenstand mark at borkware.net
Sat Apr 22 12:20:28 UTC 2006


On Fri, 2006-04-21 at 20:18 -0400, Jeff Spaleta wrote:
> On 4/21/06, Leon <sdl.web at gmail.com> wrote:
> > Basically they want to divide packages (of course installed by package
> > manager; those installed using source, the user has to track
> > themselves) into two groups: one is installed by the user (explicitly
> > 'yum install') and the other is those required to satisfy the
> > dependence.
> 
> Oh i get it..  and what I'm saying is I think you under-estimate how
> difficult it will be to robustly use automatical removal of
> dependancies marked for autoremoval without causing problems with crap
> that is not tracked by the package management system.  I think you
> underestimate how often people install tools that were part of an
> automatically included dependancy which end up being used in scripts
> that were written locally that are not tracked in the rpm system.
> Little perl scripts, little shell scripts, little python scripts,
> little php scripts. Hell anyone running any sort of website with php
> enabled is most likely running some sort of not rpm managed php junk
> that is in fact configured to exec other binaries, binaries which may
> be marked as an indirect dependancy of some other package which would
> be removed via the automatic dependance removal feature.

It really isn't needed to do it automatically. Debian have a package
called debfoster (at least they had in 2002), which checks the
interdependencies of all your packages and for then asks whether you
want to remove each package that aren't needed by any others, e.g.:

	Package A keeps these packages installed: G, K, O, R
	Do you wish to keep package A? [Y/n]

This has the obvious advantage that you don't have to add yet a piece of
info to the ever-bloated rpm database.

Gentoo also do it. IIRC it has a command which lists all packages that
were not installed explicitly and which no other package depends upon
(which is a nice, logical list), but then they have to ruin an otherwise
nice feature by automatically removing all said packages after 10
seconds if not interrupted.




More information about the devel mailing list