On Sun, 30 Aug 2009 19:06:02 +0200
Mounir Lamouri <volk...@gentoo.org> wrote:
> So I think we should add a new feature in PMS already used in Exherbo
> EAPI, USE flags requirements [1]. That means an ebuild should be able
> to say a USE flag is available only if some other ones are in a
> specific state. Let's take the mplayer example, if we have a line
> like this: USE_REQUIREMENTS="encode? ( mp2 mp3 faac x264 xvid )", PM
> should be able to show the user USE="mp3" will be ignored because he
> didn't set USE="encode" and the PM will disable this USE flag by
> himself. The same way, for ekiga:
> USE_REQUIREMENTS="kde? ( kontact )", PM should be able to show the
> user if he set USE="kontact", kde USE flag is enabled and the PM will
> enable this USE flag by himself.

Is the less expressive solution you're describing still useful enough
to make it worthwhile? When we were doing this for Exherbo, we
identified five types of inter-use-flag dependency:

* if a then b
* if a then not b
* at least one of a b c, possibly only if d
* exactly one of a b c, possibly only if d
* at most one of a b c, possibly only if d

Does Gentoo make use of all of these, and are there any cases that the
above doesn't cover? How would you express each of the above using
USE_REQUIREMENTS?

From a package manager perspective, it's much easier to give good
advice to the user if we're told by the ebuild exactly what's going on.

-- 
Ciaran McCreesh

Attachment: signature.asc
Description: PGP signature

Reply via email to