On Fri, Apr 28, 2006 at 05:50:21PM +0300, Panu Matilainen wrote:
On Fri, 2006-04-28 at 08:43 -0500, Steven Pritchard wrote:
> Stupid question, but how hard would it be for a depsolver to work this
> out in reverse? For example, xmms-sid requires xmms, so when I'm
> installing xmms, notice that xmms-sid requires it, and suggest it as a
> possible enhancement?
I've thought about this - getting the reverse dependencies is not hard
at all, basically the depsolver could do the equivalent of this:
[root@weasel ~]# repoquery --whatrequires --alldeps perl-Kwiki
[...]
What's problematic with this approach is that it only works for
certain
types of packages, something resembling an application in other words.
Try it on a library and the results are probably not what you want.
So how would you fix that? Walk through all the file
provides/requires and all the other implicit dependencies? And if you
did all that, how painful would it be? :-)
Taking perl-Kwiki as an example, it lists
"Development/Libraries" as
it's rpm group,
That's because cpanspec is hard-coded to add that Group: tag.
it doesn't belong to any comps groups
That's because I haven't added any of my packages to comps. (Shame on
me, I know, it's on my todo list.)
and it doesn't look like an application in the sense that it
doesn't
put anything into your path
There's just the "kwiki" script in /usr/bin/...
(which is a very bad heuristics anyway since many library packages
have some utility binaries) etc. It'd be very likely to be classified
as a library of sorts by any obvious heuristics to determine whether
"suggests/enhances"-reverse depends logic should be applied.
Even having this available as a convoluted command involving repoquery
would be pretty cool. :-)
That's what Enhances is all about: the main package wouldn't
have to be
aware of those other packages, those plugin packages would just have to
add "Enhances: perl-Kwiki".
Ah, my sleep-deprived mind was reading that backwards. That makes a
whole lot more sense. ;-)
Steve
--
Steven Pritchard - K&S Pritchard Enterprises, Inc.
Email: steve(a)kspei.com
http://www.kspei.com/
Phone: (618)398-3000 Mobile: (618)567-7320