1 |
On 07/21/2018 12:01 AM, Dennis Schridde wrote: |
2 |
> On Friday, 20 July 2018 08:25:05 CEST Michael Orlitzky wrote: |
3 |
>> On 07/20/2018 02:12 AM, Mart Raudsepp wrote: |
4 |
>>> Ok, I can see that point of view for make.conf. |
5 |
>>> I can't agree with changes in other profiles though, as other profile |
6 |
>>> will fall under the same category in USE_ORDER (in fact, it's the same |
7 |
>>> thing, as the end USE from "defaults" comes from your selected profile |
8 |
>>> and it's "parent" cascade, not taken from linux profile). But maybe you |
9 |
>>> have it tested and know it's a problem. Have you? |
10 |
>> |
11 |
>> Yes, when you set USE=foo in profile A and USE="-foo" in profile A/B, |
12 |
>> the end result is USE="foo -foo" which is the same thing as USE="-foo". |
13 |
>> The default portage USE_ORDER makes the profile flags more important |
14 |
>> than IUSE defaults, so the USE="-foo" from the profile clobbers any |
15 |
>> IUSE="+foo" defaults. |
16 |
>> |
17 |
>> If no default was set in profile A, then no override would be necessary |
18 |
>> in profile A/B, and the resulting USE="" would not override the IUSE |
19 |
>> default. |
20 |
> |
21 |
> It appears to me that the difficulty stems from use flags being tri-state |
22 |
> (enabled, disabled, unset), but us having only operators to enable (+) and |
23 |
> disable (-) them in make.conf and profiles. |
24 |
> |
25 |
> What about adding a third operator, e.g. `^`, that resets a use flag to the |
26 |
> unset state? |
27 |
|
28 |
Sure, why not? So ^flag would mean that the flag state propagates from |
29 |
the settings in IUSE. It's also conceivable that we could add a way for |
30 |
profiles to modify the effective IUSE defaults, via new operators in |
31 |
package.use or by introducing a new file such as package.use.default. |
32 |
-- |
33 |
Thanks, |
34 |
Zac |