Gentoo Archives: gentoo-dev

From: james <garftd@×××××××.net>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Guidelines for IUSE defaults
Date: Thu, 02 Feb 2017 23:35:55
Message-Id: 3af43e5d-9be9-23dc-78d7-7d5a3fa48b8d@verizon.net
In Reply to: Re: [gentoo-dev] Guidelines for IUSE defaults by David Seifert
1 On 02/02/2017 04:40 PM, David Seifert wrote:
2 > On Thu, 2017-02-02 at 15:35 -0500, james wrote:
3 >> On 02/02/2017 01:01 PM, Rich Freeman wrote:
4 >>> On Thu, Feb 2, 2017 at 11:25 AM, Michael Orlitzky <mjo@g.o>
5 >>> wrote:
6 >>>>
7 >>>> If (base == minimal), then all of the upstream defaults need to
8 >>>> be added
9 >>>> to package.use for the upstream-defaults profile. That's bad,
10 >>>
11 >>> I'll go further and say that it is unacceptably bad.
12 >>>
13 >>>> but if
14 >>>> (base == upstream-defaults), then the important IUSE defaults
15 >>>> need to be
16 >>>> copy/pasted from our ebuilds into the minimal profile. The latter
17 >>>> is
18 >>>> more spiritually damning =)
19 >>>>
20 >>>
21 >>> So, I'll admit I've never been one that cared a great deal about
22 >>> minimalism so I appreciate that I may not be the best one to judge
23 >>> this, so let's go ahead and embrace your statement for the purpose
24 >>> of
25 >>> debate.
26 >>>
27 >>> Is there a better way we can have our cake and eat it too? I'll
28 >>> admit
29 >>> that a huge package.use on the minimal profile isn't a whole lot
30 >>> better than a huge package.use on all the other profiles.
31 >>>
32 >>> Do we need another form of syntax in individual ebuilds to try to
33 >>> separate out the various cases you cite? Does anybody care to
34 >>> actually suggest one?
35 >>
36 >> I think that unikernels are something everyone should be aware of
37 >> as they purport to be the latest trend in securing all sorts of
38 >> systems.
39 >> (a brief read).
40 >>
41 >> http://unikernel.org/
42 >>
43 >>
44 >> Perhaps we should not have a 'minimal profile', as it means so many
45 >> different things to so many different people. We have not even
46 >> surveyed
47 >> the user base...
48 >>
49 >> So if we think of all the possible profiles and sub-profiles as being
50 >> organized in a tree structure, it is better to figure out logical
51 >> organization of all profiles, imho.
52 >>
53 >> So how about profiles that are either under the embedded or basic
54 >> 'moniker' in the profile tree. So embedded is the least number of
55 >> packages possible, regardless of upstream, where folks build up
56 >> from
57 >> there to what they want as a finished system. Embedded, clusters,
58 >> HPC,
59 >> and such are compatible enough for what I'm building to be under the
60 >> same branch of the profile tree. If other folks want their cluster
61 >> works
62 >> under the basic part of the profile tree that is concerned with
63 >> upstream, then they have their part of the profile tree located
64 >> there.
65 >>
66 >> And the 'basic' part of the tree is similar to what we now call
67 >> 'default' and the names build up in whatever schema those target
68 >> builds
69 >> desire, like basic+headless, basic+kde, basic+?+whatever..... ?
70 >>
71 >> And is there any reason, if necessary that other needs cannot be
72 >> branched off, as necessary form the profile tree? Perhaps the main
73 >> root
74 >> is a state diagram of what is need and has links to relevant
75 >> documents.
76 >> That way the profile tree is a live system that can be enhance or
77 >> modified to serve all of Gentoo's diverse visions.
78 >>
79 >>
80 >>> I still think that we shouldn't encourage users to lightly deviate
81 >>> from all the upstream defaults. There are of course legitimate
82 >>> reasons for doing so, and you and I can probably appreciate when we
83 >>> should do this, but for somebody starting out we're giving them a
84 >>> lot
85 >>> of rope to hang themselves with.
86 >>
87 >> This is only the case because profiles are in general in a mess and
88 >> there are little in the way of conventions. What is so sacrosanct
89 >> about
90 >> upstream for a truly embedded gentoo system or a gentoo based IoT
91 >> device? How many of the gentoo-embedded devs even bother to read
92 >> gentoo-dev? Your vision seems to me to be tainted by the major
93 >> distros
94 >> and their visions, not be impolite, but they are way off course for h
95 >> ttp://www.easyjet.com/en/
96 >> secure systems, embedded systems, IoT, HPC and numerous other active
97 >> areas of Linux, imho.
98 >>
99 >>
100 >> Think about it, if upstream is so brilliant, and has our needs 'at
101 >> heart' then why have not the kernel-geniuses bothered to build a
102 >> logical, coherent semantic for kernel configurations, management,
103 >> security testing and such? If fact, if I were to be critical of
104 >> upstream, I'd say those and many other issues should have been
105 >> addressed
106 >> before the adventures of systemd were dictated upon the larger user
107 >> base. Upstream is an 'ad-hoc' mess, in the old days we called such
108 >> entities a clusterF*.
109 >>
110 >>
111 >> So those of us going back to minimal and basics and such venues, even
112 >> with clusters, could not care less about Mozilla, systemd and
113 >> thousands
114 >> of other upstream folks that have lost their pathway forward.
115 >> (deepest
116 >> apologies, but I have very strong feelings about "upstream*".
117 >>
118 >>
119 >> Many of the profiles in this and other recent threads, are just 'ad-
120 >> hoc'
121 >> naming structures and locations, and that historical flexibility
122 >> extend
123 >> to the devs is fantastic. This enhance/cleaning need of gentoo
124 >> profiles
125 >> needs to be well thought out and as flexible semantically as
126 >> possible.
127 >>
128 >>
129 >> It is absolutely a superior approach to not care at all what
130 >> upstream
131 >> does, to provide a pathway for embedded gentoo. That is a
132 >> fundamental
133 >> characteristic of what an embedded system is. Thanke the code, purge
134 >> 90+ percent of this, and then install it on a embedded system so
135 >> only what is needed is encluded. On a distro, you can pile on tons
136 >> of uncessary codes, for convenience and not care, but embedded,
137 >> it does matter. That is why so much of Iot is hacked and owned
138 >> by folks with nefarious intentions. Much of 'upstream' is growing
139 >> dumber by the day, and corporate manager and government interlopers
140 >> are just loving the cruft of 'upstream'.
141 >>
142 >>
143 >> Minimal is a close cousin to embedded, and now unikernels and
144 >> aggressive
145 >> HPC clusters are going that direction too in the name of
146 >> performance,
147 >> sane-management and reducing attack surfaces for the cloud or HPC
148 >> cluster (not all, but many).
149 >>
150 >>
151 >> Surely a branch of the gentoo profiles tree, could rigorously be
152 >> focused
153 >> on compatibility with upstream, but that inflexibility, if imposed
154 >> on everyone else, will only serve to further alienate gentoo-
155 >> embedded
156 >> and serve as a unnecessary wedge between some minimal, HPC and
157 >> unikernel
158 >> types of gentoo builds.
159 >>
160 >>
161 >>
162 >>> It is like building a kernel
163 >>> answering no to the largest number of questions possible while
164 >>> still
165 >>> actually building something. I'd actually be curious as to what
166 >>> that
167 >>> kernel would even be capable of doing (there are a lot of fairly
168 >>> essential things you can turn off in the kernel).
169 >>
170 >>
171 >> This is a whole other area of valid concern. Their was a GSoC project
172 >> last summer to work on organizing gentooish kernel builds, but that
173 >> is a
174 >> very big topic. Perhaps the profiles will have to be proposed but not
175 >> formalized until folks go out and do some kernel builds and testing
176 >> associated with a proposed profile organization?
177 >>
178 >>
179 >>> In the same way, we shouldn't be too quick to deviate from upstream
180 >>> defaults ourselves (#4 in your example), beyond actual integration
181 >>> work.
182 >>> I'll admit the current state is a bit of a compromise, but I don't
183 >>> think we should change it unless we're changing it to something
184 >>> significantly better. This is a pretty big-impact change.
185 >>
186 >>
187 >> Just formalize some new parts of the profile tree to not be required
188 >> to
189 >> be upstream compliant. Isn't that part of being a 'meta-
190 >> distribution'?
191 >>
192 >> In my future (and the future of many others) there will be
193 >> minimalistic
194 >> builds on clusters where any number to constructs including
195 >> compatibility which will all be solved, at the framework level, not
196 >> the
197 >> base distro level, to the extent possible. Folks are now running a
198 >> myriad of windows OS versions on linux (&clusters), so I have just
199 >> read
200 >> about a few days ago. So I'm proposing and working on gentoo
201 >> heterogeneous cluster where one can partition part to be for systemd
202 >> stuffage, part to be HPC, part to be extraordinarily secure, part to
203 >> be
204 >> aligned with a particularly commercial linux distro, and many other
205 >> differing needs based frameworks.
206 >>
207 >>
208 >> The minimal (lowest level) should be clear of all of those distro
209 >> encumbrances. CoreOS is taking this approach, as their bare metal
210 >> bootstrapping occurs completely and well before systemd or any other
211 >> PID1 schema is invoked or becomes a defacto requirement. Gentoo is
212 >> all
213 >> about freedom, right?
214 >>
215 >>
216 >> hth,
217 >> James
218 >>
219 >
220 > Dear James,
221 > can you please stop totally drifting off topic and rambling about stuff
222 > that is not relevant for the discussion at hand? We started at IUSE
223 > defaults and you end with unikernels and HPC. Please stop the rambling.
224 >
225 > hth,
226 > David
227 >
228 >
229 >
230
231 Hello David.
232
233 The third post integrated 'profiles' into the discussion,included here
234 since you must have missed that::
235
236 "
237 I'm not saying that we should have a minimal experience out-of-the-box,
238 only that the base profile should result in an effectively-minimal set
239 of USE flags. Adding IUSE defaults is essentially adding defaults to the
240 base profile. Why does dev-java/icedtea try to pull in GTK (and thus X)
241 on a headless server? That stuff belongs in a desktop profile, not in
242 the base one."
243 co
244
245 Many other comments followed up and further discussed profiles. Only
246 when I threw in my comments about the effects on profiles 'doth thy
247 protest'?
248
249
250 Please give me a break, just ignore what you need to.
251
252
253 hth,
254 James

Replies

Subject Author
Re: [gentoo-dev] Guidelines for IUSE defaults Ian Stakenvicius <axs@g.o>