Gentoo Archives: gentoo-dev

From: Alec Warner <antarus@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Rationalizing USE flags by narrowing the scope of them.
Date: Tue, 04 Jan 2022 05:34:26
Message-Id: CAAr7Pr8R8Vxk=8JEO5dK1jr=hA4EpgxCAfq4ksgBawxgUkdGiA@mail.gmail.com
In Reply to: Re: [gentoo-dev] Rationalizing USE flags by narrowing the scope of them. by Sam James
1 On Mon, Jan 3, 2022 at 7:39 PM Sam James <sam@g.o> wrote:
2 >
3 >
4 >
5 > On 3 Jan 2022, at 17:16, Alec Warner <antarus@g.o> wrote:
6 >
7 > [snip]
8 >
9 >
10 > I'm trying to understand your principles here. Like on what basis do
11 > you remove or add flags (in general).
12 >
13 > I want to remove:
14 > - bash-completion
15 >
16 >
17 > FWIW, I've managed to remove basically all instances of {bash,zsh}-completion
18 > and made upstream PRs (all of one of which have been merged!) for fixing
19 > `./configure` behaviour accordingly.
20 >
21 > This is in align with our small files policy: https://projects.gentoo.org/qa/policy-guide/installed-files.html#pg0301.
22 >
23 > - acl
24 > - ldap
25 >
26 >
27 > ACL is kind of similar to what Ionen said for PAM, i.e. sometimes
28 > people may want to turn it off and it makes sense to expose
29 > this option for those who do, but we don't need to try support it.
30
31 I feel like 'acl' or 'pam' or 'policykit' are not really USE flags in
32 the general sense. They are more like profile settings. You don't want
33 to toggle these flags, you want to switch profiles. I think
34 conceptually profile migrations are larger changes that require a
35 rebuild of a bunch of stuff, and typically have downtime (e.g. where
36 your system isn't expected to work the entire time.)
37
38 There are practical problems with profile proliferation, but I think
39 it is closer to what these flags represent, if that makes sense.
40
41 -A
42
43
44 >
45 > I think some of this kind of comes back to "how do we better
46 > make clear what is/isn't okay (supported)to customise?"
47 >
48 > LDAP is a fun one because IIRC we had it enabled by default
49 > for too long and it didn't really break anything when we turned
50 > It off.
51 >
52 > Overall, I think we kind of come back to this idea of
53 > trying to just set better IUSE defaults rather than
54 > in profiles, so that it's per-package where possible.
55 >
56 > - policykit
57 >
58 >
59 > This is a reasonable flag to keep given the heavy polkit
60 > dependency of spidermonkey (for now) and it's somewhat
61 > heavy-handed as a concept anyway.
62 >
63 > - readline
64 >
65 >
66 > readline is a tricky one because of its relation with libedit too.
67 >
68 > - sound
69 >
70 > (Part of this is just to have a meta discussion so we settle on some
71 > driving principles on why we keep one flag over the other.)
72 >
73 > I can easily craft a narrative for getting rid of ipv6, for example,
74 > but I cannot really craft a good narrative for getting rid of pam, or
75 > policykit, or ldap as flags. So why do we keep some and remove others?
76 >
77 >
78 >
79 > It's very hard to quantify :(
80 >
81 >
82 > Best,
83 > sam
84 >