Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Revisiting GLEP 81 (acct-*) policies (reviews, cross-distro syncing)
Date: Tue, 10 Dec 2019 05:28:39
Message-Id: b931dcf838596e4d686c1544d7bc5f14ce021f92.camel@gentoo.org
In Reply to: Re: [gentoo-dev] [RFC] Revisiting GLEP 81 (acct-*) policies (reviews, cross-distro syncing) by Alec Warner
1 On Mon, 2019-12-09 at 13:48 -0800, Alec Warner wrote:
2 > On Mon, Dec 9, 2019 at 12:17 AM Michał Górny <mgorny@g.o> wrote:
3 >
4 > > Hello,
5 > >
6 > > I think the policies proposed in GLEP 81 [1] were overenthusiastic
7 > > and they don't stand collision with sad Gentoo developer reality.
8 > > Instead of improving the quality of resulting packages, they rather
9 > > hamper their adoption and cause growing frustration.
10 > >
11 > > The problems I see today are:
12 > >
13 > >
14 > > 1. Mailing list reviews hamper the adoption of new user packages.
15 > >
16 > > Firstly, there are a few developers who obstructively refuse to
17 > > communicate with others and especially to use the public mailing lists.
18 > > While this is a separate problem, and a problem that needs to be
19 > > resolved, this GLEP can't resolve it. Of course, there is no reason to
20 > > believe that removing review requirement will actually make them migrate
21 > > their packages but it's at least one obstacle out of the way.
22 > >
23 > > Secondly, even developers capable of communication find the two stage
24 > > request-wait-commit workflow inconvenient. At any time, there are
25 > > at least a few requests waiting for being committed, possibly with
26 > > the developers forgetting about them.
27 > >
28 > >
29 > > 2. Mailing list reviews don't serve their original purpose.
30 > >
31 > > The original purpose of mailing list reviews was to verify that
32 > > the developers use new packages correctly. For example, Michael
33 > > Orlitzky has found a lot of unnecessary home directories specified.
34 > > Of course, that works only if people submit *ebuilds* for review.
35 > >
36 > > However, at some points developers arbitrarily decided to send only
37 > > numbers for review. This defeats the purpose of the review in the first
38 > > place.
39 > >
40 > >
41 > > 3. Cross-distro syncing has no purpose.
42 > >
43 > > One of the original ideas was to reuse UID/GID numbers from other
44 > > distros when available to improve sync. However, given the collisions
45 > > between old Gentoo UIDs and other distros, other distros themselves,
46 > > non-overlapping user/group names, etc. there seems to be little reason
47 > > to actually do it. If we even managed some overlap, it would be minimal
48 > > and quasi-random.
49 > >
50 > > While other distros provide a cheap way of choosing new UID/GID, it
51 > > doesn't seem that many people actually use it. Then we hit pretty
52 > > absurd situations when someone chooses one UID/GID, somebody else tells
53 > > him to use the one from other distro.
54 > >
55 > >
56 > > 4. Assignment mechanism is not collision-prone.
57 > >
58 > > The secondary goal of mailing list reviews is to prevent UID/GID
59 > > collisions. Sadly, it doesn't work there either. Sometimes two people
60 > > request the same UID/GID, and only sometimes somebody else notices.
61 > > In the end, people have hard time figuring out which number is the 'next
62 > > free', sometimes they discover the number's been taken when somebody
63 > > else commits it first.
64 > >
65 > >
66 > > All that considered, I'd like to open discussion how we could improve
67 > > things.
68 > >
69 > > My proposal would be to:
70 > >
71 > > a. split the UID/GID range into 'high' (app) and 'low' (system)
72 > > assignments, 'high' being >=100 and 'low' <100 (matching Apache suEXEC
73 > > defaults),
74 > >
75 > > b. UIDs/GIDs in the 'high' range can be taken arbitrarily (recommending
76 > > taking highest free), while in the 'low' range must be approved by QA,
77 > >
78 > > c. no review requirement for the 'high' range, just choose your UID/GID
79 > > straight of uid-gid.txt and commit it.
80 > >
81 >
82 > What is the mechanism to keep the uid-gid.txt aligned with tree content? is
83 > there a CI check that says I am using the new acct-* eclasses AND I have a
84 > UID / GID assigned that is not matching uid-gid.txt? I see the CI has
85 > "ConflictingAccountIdentifiers", is this already doing this work (checking
86 > that the ebuild matchines uid-gid.txt), or just scanning the whole tree and
87 > ensuring that 2 packages don't re-use the same ID?
88 >
89
90 The latter.
91
92 --
93 Best regards,
94 Michał Górny

Attachments

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