Feature request: when you install a package you often need other
packages to be installed as well. Could you make a list of those
dependant extra installed packages? So if peope uninstall the first
package you can also deinstall the packages it depended on. Of course
only if no other packages depend on them.


urpme already does this



No, it doesn't. What Han is asking for is this. Say you installed foo and urpmi pulled in libbar and libmoo as things foo depended on. If you then urpme foo, libbar and libmoo don't get uninstalled.

Which is current behaviour.

If, however,
you urpme'd libbar, foo *would* be uninstalled. That is, urpme
uninstalls things that depend on the package you call to be urpme'd, but
not things the package you call to be urpme'd depends upon. Clear?

Yep. So you would like a switch / option to be added that when you remove foo (urpme foo --something) that it'll suggest to remove libbar and libmoo as wel. Hmmm... Interesting. What critera will be used to remove those packages? Should start with "lib"? Only the top-level ones?

Dependency example:
A Requires B
B Requires C
B Requires D
C Requires D
E Requires D

urpme A would also suggest to remove B?
urpme A would also suggest to remove B and C?

urpme A cannot remove B, C and D, since E depends on D.

question is, how deep do you want this to go? Do you want to prune until you hit a branch (ie E)?

I've been playing with this myself a bit. And decided to take a different aproach:

I made a list of packages that I want installed on my system, and then run a script (http://eijk.homelinux.org/build/bin/min.sh) against it. The packages that I can de-install will be printed to your screen (or with "./min.sh remove" they will be removed). I am running into a limitation in urpmq with this script. If you get have a Requires that can be satisfied by two Provides (automake, webfetch, etc) then urpmq cannot figure out what the dependencies of these packages actually are:

$ urpmq -dp webfetch
wget|curl

What I'm looking for is that urpmq makes a descision on which one of these choices to persue, so that "urpmq -dp webfetch" would actually print something like (lended from urpmq -dp wget):

$ urpmq -dp webfetch
sash
info-install
perl|wml
db2
wget
ldconfig
libopenssl0.9.7
libbzip2_1
perl-base
grep
libtermcap2
perl
libgdbm2
glibc
bash
bzip2
libpcre

How it makes the descision is open for discussion. Snoop into the rpmdb on the system to see if one of them is installed, if not make a choice (random?).

Probably not. Remind me not to become a teacher. :)

Wasn't that bad... How am I doing? not teacher material either I guess :-)

regards,

Stefan

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature



Reply via email to