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
signature.asc
Description: This is a digitally signed message part