On 07/21/2018 03:01 AM, Dennis Schridde wrote: > > What about adding a third operator, e.g. `^`, that resets a use flag to the > unset state? >
The behavior of USE (in profiles) is documented in the PMS, so I don't think we can add a new operator so easily. But, this is what the PMS has to say [0]... Incremental variables must stack between parent and child profiles in the following manner: Beginning with the highest parent profile, tokenise the variable’s value based on whitespace and concatenate the lists. Then, for any token T beginning with a hyphen, remove it and any previous tokens whose value is equal to T with the hyphen removed, or, if T is equal to -*, remove all previous values. It looks to me like *within (sub)profiles*, a USE="-foo" should undo USE=foo, rather than adding "-foo" to the list of tokens that get pushed down via USE_ORDER. [0] https://projects.gentoo.org/pms/7/pms.html#x1-560005.3.1