On 07/21/2018 12:01 AM, Dennis Schridde wrote:
> On Friday, 20 July 2018 08:25:05 CEST Michael Orlitzky wrote:
>> On 07/20/2018 02:12 AM, Mart Raudsepp wrote:
>>> Ok, I can see that point of view for make.conf.
>>> I can't agree with changes in other profiles though, as other profile
>>> will fall under the same category in USE_ORDER (in fact, it's the same
>>> thing, as the end USE from "defaults" comes from your selected profile
>>> and it's "parent" cascade, not taken from linux profile). But maybe you
>>> have it tested and know it's a problem. Have you?
>>
>> Yes, when you set USE=foo in profile A and USE="-foo" in profile A/B,
>> the end result is USE="foo -foo" which is the same thing as USE="-foo".
>> The default portage USE_ORDER makes the profile flags more important
>> than IUSE defaults, so the USE="-foo" from the profile clobbers any
>> IUSE="+foo" defaults.
>>
>> If no default was set in profile A, then no override would be necessary
>> in profile A/B, and the resulting USE="" would not override the IUSE
>> default.
> 
> It appears to me that the difficulty stems from use flags being tri-state 
> (enabled, disabled, unset), but us having only operators to enable (+) and 
> disable (-) them in make.conf and profiles.
> 
> What about adding a third operator, e.g. `^`, that resets a use flag to the 
> unset state?

Sure, why not? So ^flag would mean that the flag state propagates from
the settings in IUSE. It's also conceivable that we could add a way for
profiles to modify the effective IUSE defaults, via new operators in
package.use or by introducing a new file such as package.use.default.
-- 
Thanks,
Zac

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to