Gentoo Archives: gentoo-project

From: Mike Frysinger <vapier@g.o>
To: gentoo-project@l.g.o
Subject: Re: [gentoo-project] utilizing GH functionality that Gentoo infra does not provide
Date: Thu, 31 Mar 2022 02:00:58
Message-Id: YkULY3Mfiesma9yV@vapier
In Reply to: Re: [gentoo-project] utilizing GH functionality that Gentoo infra does not provide by Alec Warner
1 On 29 Mar 2022 12:29, Alec Warner wrote:
2 > On Tue, Mar 29, 2022 at 10:56 AM Mike Frysinger wrote:
3 > > starting a dedicated thread for
4 > > https://archives.gentoo.org/gentoo-project/message/ec2b560480627371a7bda5c85924eddd
5 > >
6 > > GH provides a lot of functionality for free that Gentoo infra does not cover.
7 > > these are particularly useful for projects that are used beyond Gentoo.
8 >
9 > GH is non-free, and so in the spirit of the social contract, I do not
10 > believe it should be used. Arguably it shouldn't be used now, but we
11 > have not stood up an alternative. The alternative is currently in
12 > alpha (see notes below.)
13
14 this argument doesn't really hold water. we already have core packages (e.g.
15 portage & catalyst) that hard depend on 3rd party packages that only exist on
16 GH. we also have many 1st party packages (i.e. ones authored by Gentoo devs)
17 that only exist on GH. this includes core python packages as well as both of
18 the init systems that Gentoo uses (OpenRC & systemd).
19
20 the proposal isn't talking about using GH for code hosting. that remains on
21 Gentoo infra. it also isn't about issue tracking which we have bugs.g.o for.
22 this is about features that cost nothing and aren't problematic if they're
23 lost (i.e. GH shuts down).
24
25 further, let's see what the social contract actually says:
26 > We will release our contributions to Gentoo as free software, metadata or
27 > documentation, under the GNU General Public License version 2 (or later, at
28 > our discretion) or the Creative Commons - Attribution / Share Alike version
29 > 2 (or later, at our discretion). Any external contributions to Gentoo (in
30 > the form of freely-distributable sources, binaries, metadata or documentation)
31 > may be incorporated into Gentoo provided that we are legally entitled to do
32 > so. However, Gentoo will never depend upon a piece of software or metadata
33 > unless it conforms to the GNU General Public License, the GNU Lesser General
34 > Public License, the Creative Commons - Attribution/Share Alike or some other
35 > license approved by the Open Source Initiative (OSI).
36
37 all the code is still GPL-2, and we're hosting it.
38
39 if you're going to try and argue that the hosting services of software we
40 depend on all have to be FOSS, then that ship sailed long ago (if it even
41 ever made it to port). it's logically reductive to the point of irrelevance.
42 do we require our mirrors to only run FOSS when they host our distfiles or
43 rsync trees or git repos ? if we're running in a VM, do we require the VM
44 host to only run FOSS ? if it's running in a container, do we require the
45 container software & host to only run FOSS ? do we require the hardware
46 vendors themselves to be FOSS (i.e. Intel's ME & firmware) ? where exactly
47 does it end ?
48
49 > > * CI runs (e.g. GH actions)
50 >
51 > We have CI but it's mostly not self-service and the primary issue on
52 > the infra-side is always resources / people. I agree we should aim for
53 > something more accessible.
54
55 i don't see why we would waste our money & resources when there places like
56 GH are throwing tons of free resources. is our CI going to support multiple
57 OS's ? are we going to pay the licensing fees for running on proprietary
58 OS's (e.g. Windows) ? what about multiple Linux distros ? multiple arches ?
59 can it actually scale to all our needs ? who gets to maintain all that and
60 actually keep it working ? this is more than a full time job, and asking
61 every dev to chip in only leads to infra that risks falling apart every
62 other week.
63
64 does it really make sense to spend limited engineering time requiring
65 everyone to use these subpar systems ?
66
67 if people want to volunteer to work on it for Gentoo, that's fine of course,
68 but that doesn't mean we should require every Gentoo project to only use
69 these.
70
71 > > * Projects for task management
72 >
73 > I'm not sure what this is (I haven't used it.) We use bugzilla for
74 > task management (issues) and mailing lists (for discussion.) I'm not
75 > sure github issues are "better" but they do have some advantages; I've
76 > gotten complaints about bugzilla, particularly on mobile. Plus you
77 > cannot reply to bugs easily via email.
78 >
79 > For the time being the gitlab alpha does not intend to move issues out
80 > of bugzilla; nor use gitlab for discussions; aside from discussions on
81 > PRs (which will be on gitlab.)
82
83 the lack of e-mail gateway is kind of annoying. i'm not super tied to this
84 particular feature, just another one that i noticed could be of value, and
85 where bugzilla is a poor substitute. not sure how many projects would use
86 it in practice.
87
88 gitlab seems to support these though, so it's less of an issue.
89
90 > > * possibly even Discussions since it'll provide a clear/scoped space for
91 > > non-Gentoo users & devs. Gentoo forums are huge and require custom accts,
92 > > and mailing lists are huge and a bit restrictive old timey.
93 >
94 > We have an SSO solution (sso.gentoo.org) that we are rolling out for
95 > developers, and our gitlab (in alpha testing) will support external
96 > account providers (probably google, gitlab, github accounts.)
97 >
98 > I'm honestly unsure how to receive feedback like "mailing lists are a
99 > bit restrictive old timey". What does that mean?
100 >
101 > - It's hard to know which list to email.
102 > - I often have to subscribe to the list to post.
103 > - Hard to have pretty content in an email.
104
105 managing subscriptions is archaic. it's been archaic for years. you have
106 to manually construct the e-mail address to send messages to.
107 https://www.gentoo.org/get-involved/mailing-lists/instructions.html
108
109 jumping through these hoops just to start a conversation means people don't.
110 mailing lists have fallen out of favor as modern communication methods -- see
111 the rise of web-based services. i'm not suggesting we migrate to e.g. slack.
112
113 more to the point, we don't have localized low-friction spaces. we don't
114 have that many mailing lists. they lock out people (e.g. gentoo-dev) or
115 they're large & noisy (gentoo-users) or they're still larger in scope (e.g.
116 the arch lists). creating mailing lists is painful, and doesn't help that
117 much with the other points.
118
119 > > this is all orthogonal to the git content itself (objects, branches, tags,
120 > > etc...). those should remain in the read-only clobber mode that exists now.
121 > >
122 > > there is no downside for Gentoo here. it's all functionality that can be
123 > > had for free, does not introduce any risks, and many devs are already using
124 > > GH heavily for Gentoo projects -- albeit, they don't do it under the Gentoo
125 > > umbrella, they fork it into their own personal space and maintain it there.
126 > > we shouldn't be forcing devs & projects away from Gentoo for such basic
127 > > functionality.
128 >
129 > I think you present a 'free lunch' here and I'll just say "there is no
130 > such thing as a free lunch." The downside is that we present Gentoo as
131 > an open distro that doesn't depend on proprietary software, but is
132 > developed using Github, a proprietary solution that provides all this
133 > cool functionality that we don't have implemented in house. In general
134 > that's not a sustainable approach. I get that we make tradeoffs
135 > (firmware, drivers, being an obvious place where compromises are
136 > made.) I'm not sure I'm willing to support this one.
137
138 are you planning on mandating @system packages and all their deps to not
139 use GH ? or packages that Gentoo devs are maintaining that are only used
140 by Gentoo to not use GH ? or that those packages have to use GPL-2(+) ?
141 there's a number of core Gentoo projects right now that are absolutely
142 violating the social contract by using BSD licenses instead of GPL, but
143 no one is saying anything about it.
144
145 are you saying that things like Gentoo/Prefix are not welcome here just
146 because they run on Windows or macOS or other proprietary OS's ? there's
147 a lot of code that isn't useful at all when you take away these things.
148
149 i think you're extrapolating the social contract beyond what it actually is.
150 Gentoo isn't GNU. everything we produce is FOSS which is what the social
151 contract dictates. it isn't that everything has to be GPL down to the CPU.
152
153 not all Gentoo projects are purely about Gentoo. they might have started
154 here, and focus on here, but are usable beyond. how does kicking them out
155 of the Gentoo umbrella help anyone ?
156 -mike

Attachments

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