Gentoo Archives: gentoo-dev

From: Ian Stakenvicius <axs@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Adding USE=udev to linux profiles
Date: Tue, 24 Jul 2018 17:15:36
Message-Id: ec6d8765-dbe2-009b-4ea2-bfe91fb31b87@gentoo.org
In Reply to: Re: [gentoo-dev] Adding USE=udev to linux profiles by Rich Freeman
1 On 2018-07-21 9:33 a.m., Rich Freeman wrote:
2 > On Sat, Jul 21, 2018 at 5:33 AM Zac Medico <zmedico@g.o> wrote:
3 >>
4 >> Sure, why not? So ^flag would mean that the flag state propagates from
5 >> the settings in IUSE.
6 >
7 > Presumably this could be overridden in subsequent profiles, or
8 > /etc/portage. That is, one profile might set a flag, and another
9 > profile could unset it, and then the final one could re-set it.
10 >
11 >> It's also conceivable that we could add a way for
12 >> profiles to modify the effective IUSE defaults, via new operators in
13 >> package.use or by introducing a new file such as package.use.default.
14 >
15 > That makes sense, or the syntax could be available in the ebuild. I
16 > imagine the better approach to take would depend on the nature of the
17 > incompatibility.
18 >
19
20 This is getting a little scary as to what is overriding what, within a
21 repo.
22
23 Lets take a look at what we -can- do right now:
24
25 (a) use flag can be set globally by the repo
26 (b) ebuild IUSE can set (and unset?) a flag's state
27 (c) make.defaults and package.use from the profile (that generally is
28 defined within the gentoo repo) sets/unsets a flag's state
29 (d) make.conf sets/unsets a flag's state
30 (e) /etc/portage/package.use sets/unsets a flag's state
31 (f) {,package.}use.{mask,force} from the profile overrides a-e
32 (g) /etc/portage/profile/{,package.}use.{mask,force} overrides f
33
34 That's a lot of possible state overriding.
35
36 Now as I understand it, the issue here is that there is no way in (d)
37 to undo what is done in (c) on a global per-flag basis, ie, from
38 make.defaults, such that IUSE(b) is honored, correct?
39
40 What if we just split (c) so that make.defaults (c1) and package.use
41 (c2) are applied independently? That way (d) is meant to override
42 (c1), and (e) is meant to override (c2), and if an end-user wants IUSE
43 to take priority over (c1)+(d) they can change USE_ORDER accordingly?
44
45 I believe with wildcards, that in (e) we can set global flag overrides
46 still via an atom (like "*/*::gentoo [flag]") in
47 /etc/portage/package.use, correct? So we end-users would still have
48 the ability to define global state of a flag with a single line even
49 if IUSE was prioritized above make.defaults+make.conf
50
51 Note that I'm not suggesting we change the default value of USE_ORDER
52 right now, only that if we split 'defaults' into 'makedefaults' and
53 'packagedefaults' that end-users could set it up themselves a lot more
54 easily by changing their own USE_ORDER default.

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Adding USE=udev to linux profiles Dennis Schridde <devurandom@×××.net>