On 21 May 2003, seth vidal wrote: > > > While doing removals, one encounters the usual dependency resolution > > problem that yum addresses in installs, but in the other direction where > > it is conceivably even more difficult. It is easy to add packages to > > satisfy dependencies -- it is REALLY HARD to disentangle packages for > > safe removal. > > > > > > Here yum is a bit more easily confused and doesn't seem to always want > > to do the right thing. > > 1. what version of yum > 2. what version of rhl - 7.3? > > under 7.3 libuser requires openldap > usermode requires libuser > util-linux requires usermode > nfs-utils requires util-linux (specifically /sbin/nologin) Yah, but how did you work this out? Hopefully a step short of a loop iterating search of rpm -R... Then there are all the questions you can't answer, with a big: <sigh> such as why it makes SENSE for usermode/libuser to require LDAP. That essentially makes it a fixed requirement for all RH systems to be installable at all, which is plain nuts -- I had no trouble removing e.g. NIS which is a hell of a lot more common in use and STILL useless on a laptop or home network. But this is just whining... </sigh> > so you get a removal dependency cascade. > > So what happens is this - yum gets to a point where it doesn't know what > else it can remove nor what to remove. > > sometimes this is b/c there are insufficient dep/req information in any > package to figure out where it should be. > > sometimes it's b/c at some point you remove enough things and your > system doesn't exist. > > > a yum depends pkgname is on the todo list > (http://linux.duke.edu/yum/yum-todo.ptml) but it is not as easy as it > seems at first glance. Especially if you want to see dep lists for > not-installed programs. > > > > Or am I being very silly and does yum already do all of this? > > yum doesn't do all of this - and some of those ideas are VERY VERY > complex in terms of producing them. > > it is something I want to work on wrt to the new depresolution stuff but > it's not going to happen tomorrow. Yeah, if I actually knew python I might even tackle them myself to help out. If I had time I might even learn python. Of course if I had time I'd be tempted to do things like write "rpm-splitter" -- a nasty little routine that could unpack package.rpm in e.g. /var/tmp, run ldd on all executables purporting to use something in the package, run ldd and ar on all the components OF the package, and split off those components (only) into package-stub.*.rpm. Or a high end src rpm analyzer, that literally scans for the cross-package dependencies and builds chains. Of course if I wrote those tools, I'd start some sort of business as they'd be really valuable. In this particular case the interesting question is whether libuser can be broken out not to need openldap but to use it if it is there... I'll bet it can, since it de facto does in 99% of its operations. <double sigh> Back to worming out packages from my laptop. 77 MB to go. rgb > > -sv > > Robert G. Brown http://www.phy.duke.edu/~rgb/ Duke University Dept. of Physics, Box 90305 Durham, N.C. 27708-0305 Phone: 1-919-660-2567 Fax: 919-660-2525 email:rgb@xxxxxxxxxxxx