RPM Soft dependencies (Was: Re: Agenda for the 2009-05-26 Packaging Committee meeting)

Roberto Ragusa mail at robertoragusa.it
Mon Jun 1 19:21:23 UTC 2009


Seth Vidal wrote:
> 
>> And how do you define "library"? There's no reliable way to
>> distinguish them
>> from applications.
> 
> This is part of the problem. It would be nice to have all things which
> are strictly libraries add a "provides: Library something" and, of
> course, to have all libs split from all apps.

Why should libraries be special? They are not.

Libraries dragged as dependencies are candidate for removal when
nothing currently installed is depending on them.
Libraries installed explicitly by the user must not be removed
(maybe I need them for a not-packaged or manually compiled app).

s/Libraries/Apps -> same rules have to apply

Apps dragged as dependencies could be volatile, apps the user
decided to install must stay.

Please do not limit the issue to lib/not-lib. Things are more complex
(well, maybe they are actually simpler...)

For example:

a) wireshark-gnome (depends on wireshark)
b) wireshark (depends on libpcap)
c) libpcap (depends on libutilswhichsomedevelopersliketouse)
d) libutilswhichsomedevelopersliketouse

It makes a lot of difference if a user

- has installed a) and dragged b) c) d) for dependencies
(removing a) could try to remove everything)

or

- has installed c) and d) for own use/development, then some day
installs a) which drags b)
(removing a) should only try to remove b) )

- has installed c) and d) for own use/development, then some day
installs b), then some day installs a)
(removing a) should not try to remove anything else )

There is only one use case a little tricky:
if I have a), which dragged b) c) and d), and now I want to
mark b) as wanted, what should I do? maybe:
  # yum install b)
  To be installed:
    none
  To be updated:
    none
  To be marked as user-installed:
    b)
  Proceed? (y/n)
  y
  Operation complete.

The semantics is simple and clear, we just need a good name for
the "wanted" stuff.

wanted?
user-installed?
pinned?

Best regards.
-- 
   Roberto Ragusa    mail at robertoragusa.it




More information about the devel mailing list