On Tue, 2005-09-27 at 18:23 +0900, Jason Stubbs wrote:
> 1) What to do if nothing is set?

Install everything.  If everything cannot be installed, due to
incompatibilities, then die.

> 2) What to do if an invalid value is set?
> 
>    a) install everything

Install everything.  If everything cannot be installed, due to
incompatibilities, then die.

> 3) How to ebuild behave regarding a USE_EXPAND variable?
> 
>    a) install everything chosen that is valid

Yes.

>    b) install only the first that is chosen that is valid
> 
> Of these, 1) and 2) absolutely must be whittled down to one standard. 
> Preferably, 3) should follow one standard as well. Not following one standard 
> will simply lead to users thinking, "but that's not what I wanted..!" It will 
> also lead portage to do needless recompiles due to the information available 
> being limited.
> 
> Next, storing the information of what choices are valid. If it can be 
> guaranteed that all packages supporting a variable (LINGUAS for example) have 
> exactly the same list of choices in all cases, storing the choice list in a 
> global file is acceptable. If not, each package absolutely must list what 
> choices are available for it. Not doing so means the flow may head into 2) in 
> the above list even when the user has set a valid choice for a different 
> package. Again, it's against the user's expectations.

Let's take an example of this...  Neverwinter Nights.  Currently, it
installs the language packs via LINGUAS.  If nothing is selected via
LINGUAS, then it installs English, which is considered the default.
Unfortunately, even trying to add -linguas_fr to package.use, still
results in the French language pack being installed over the English.  I
honestly do not know how to correct this.  I see a couple things that
would be needed.  For one, things in USE_EXPAND would need to be
negate-able in package.use.  The problem with NWN is that only one
language pack may be installed at any given time due to them providing
the same files.

You can see where I've been working with this on bug #106789.

> Anybody not caring enough to fix this, please don't respond with "wah! 
> work!?" 
> You've dug your own hole...

I would love to see this fixed.  I'm guessing that this would mean
defining all of the USE_EXPAND capabilities in IUSE, correct?

-- 
Chris Gianelloni
Release Engineering - Strategic Lead
Games - Developer
Gentoo Linux

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to