Gentoo Archives: gentoo-dev

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: [RFC] Forced/automatic USE flag constraints (codename: ENFORCED_USE)
Date: Wed, 31 May 2017 12:38:55
Message-Id: pan$10fd8$e8a2cde6$7f98564e$ffe5a0ce@cox.net
In Reply to: Re: [gentoo-dev] [RFC] Forced/automatic USE flag constraints (codename: ENFORCED_USE) by Alexis Ballier
1 Alexis Ballier posted on Wed, 31 May 2017 09:32:57 +0200 as excerpted:
2
3 >> For example:
4 >>
5 >> foo? ( bar )
6 >>
7 >> would mean 'if you have USE=foo, then USE=bar is enabled as well'. Not
8 >> 'find some random solution which satisfies this'. In other words, here
9 >> changing USE=foo into USE=-foo is not an acceptable solution.
10 >
11 >
12 > What if I specifically set USE=-bar in make.conf ? Do we really want PM
13 > to override that without telling me ?
14
15 Yes, override (tho the telling me bit would be up to the PM
16 implementation and could be as indirect as simply showing the new pulled-
17 in package in ask/pretend) because USE flags always control options and
18 don't disable mandatory requirements, which is what this scenario is
19 ultimately describing, even if it's /conditional/ mandatory.
20
21 If a user cares enough about not wanting whatever USE=bar pulls in,
22 they'll notice the pull-in in ask/pretend and abort the merge,
23 investigating and changing config or deciding they don't need that
24 package after all, just as they do with mandatory pull-ins now.
25
26 As for more direct indications, portage could and I'd expect would
27 indicate the USE override the same as it does for profile-masked and new-
28 version-deleted USE flags now, putting them in parentheses so the user
29 knows they no longer apply. I'm not familiar enough with other PMs to
30 know if/how they indicate such things, but I'd imagine they could
31 similarly treat it to the way they do masked flags today. After all,
32 it's simply another method of masking, only in this case it's dynamic, by
33 the PM at solve time.
34
35 --
36 Duncan - List replies preferred. No HTML msgs.
37 "Every nonfree program has a lord, a master --
38 and if you use the program, he is your master." Richard Stallman