Gentoo Archives: gentoo-dev

From: Fabio Erculiani <lxnay@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: Making systemd more accessible to "normal" users
Date: Wed, 01 May 2013 14:14:54
Message-Id: CAN3AtvptGEnXX2y5GEj4BWBwUkmvxjC0u=n=jeu0SH0_U7SXyQ@mail.gmail.com
In Reply to: [gentoo-dev] Re: Making systemd more accessible to "normal" users by "Steven J. Long"
1 On Wed, May 1, 2013 at 2:54 PM, Steven J. Long
2 <slong@××××××××××××××××××.uk> wrote:
3 > On Wed, May 01, 2013 at 12:04:00PM +0200, Fabio Erculiani wrote:
4 >> PLEASE DO NOT START A FLAME WAR AND READ ON FIRST.
5 >> THIS IS NOT A POST AGAINST OPENRC.
6 >>
7 >> With the release of Sabayon 13.04 [1] and thanks to the efforts I put
8 >> into the systemd-love overlay [2], systemd has become much more
9 >> accessible and easy to migrate to/from openrc. Both are able to
10 >> happily coexist and logind/consolekit detection is now done at
11 >> runtime.
12 >
13 > That's great: well done :-)
14 >
15 > Can I just check: what about people not using consolekit nor logind?
16
17 This has nothing to do with it. If you don't want consolekit nor
18 logind just USE="-consolekit -systemd".
19 It looks like you haven't clear what I'm writing about, though.
20
21 >
22 >> It is sad to say that the "territoriality" in base-system (and
23 >> toolchain) is not allowing any kind of progress [3] [4]. This is
24 >> nothing new, by the way.
25 >
26 > I don't think you help yourself by making that kind of remark: when I read
27 > those bugs I see some valid concerns being raised, which you just ignore.
28 > For instance, wrt "nonsensical blockers" I too would like to know some
29 > examples, as was queried in comment 27 [3]. In fact it was the first thing
30 > that came to mind when reading your post, as I thought where possible things
31 > were just installed for systemd (such as unit files) even when the user
32 > is not using it.
33
34 Have you ever tried to fully migrate to systemd from openrc? Clearly not.
35
36 >
37 > > There are several components that need patching in order to work as
38 >> expected with systemd:
39 >> - polkit needs a patch that enables runtime detection of logind/consolekit
40 >> - pambase needs to drop USE=systemd and always enable the optional
41 >> module pam_systemd.so
42 >
43 > Again, what about people not using consolekit, nor logind, with no intention
44 > of ever installing systemd? I've got nothing against this so long as it
45 > is guaranteed not to break my pam setup. As-is I feel *very* wary of a change
46 > that unconditionally requires a 'pam_systemd.so'. Please note I am not hostile
47 > to your aims: I am merely seeking reassurance.
48
49 Do you know how pam works? And did you understand the meaning of my
50 words? Do you know what optional means in this context?
51
52 >
53 >> - genkernel needs to migrate to *udev (or as I did, provide a --udev
54 >> genkernel option), mdev is unable to properly activate LVM volumes and
55 >> LVM is actually working by miracle with openrc.
56 >
57 > Why is that such a "miracle"? openrc has worked with lvm since the beginning
58 > afair, and is both clean, portable C, and modular.
59
60 Do you know how LVM and udev and systemd interact wrt volumes activation?
61
62 >
63 >> Alternatively, we should migrate to dracut.
64 >> - networkmanager need not to install/remove files depending on
65 >> USE=systemd but rather detect systemd at runtime, which is a 3 lines
66 >> script.
67 >
68 > Sounds reasonable; since I don't use it, that can't affect me in any case.
69
70 My goal wrt openrc is to keep the current level of support and just
71 make systemd users' life easier.
72
73 >
74 >> - openrc-settingsd needs to support eselect-settingsd, which makes
75 >> possible to switch the settingsd implementation at runtime, between
76 >> openrc and systemd. This also removes the silly conflict between
77 >> openrc-settingsd and systemd friends.
78 >> - genkernel should at least support plymouth (work in progress my side)
79 >> - other ~490 systemd units are missing at this time and writing them
80 >> could also be a great GSoC project (don't look at me, I'm busy
81 >> enough).
82 >>
83 >> All this would come with no cost for the current openrc state
84 >> (actually, my initramfs speed improvements patches in genkernel.git
85 >> also benefit openrc).
86 >> If Gentoo is about choice, we should give our users the right to
87 >> choose between the init system they like the most.
88 >
89 > I must be missing something as I thought they already had that choice.
90
91 Please, write about something you actually manage to _know_. And also,
92 please do read my post title.
93 This is not a flamewar topic, I want to discuss about improving the
94 systemd experience.
95
96 >
97 > From reading the bug, the only pro of your approach is that the user
98 > does not have to edit the kernel command-line to try out a new init.
99 > Initially, you tried to sell this as "lowering the bar" which is actually
100 > a con afaic: if someone is trying to run Gentoo and is incapable of
101 > dealing with the kernel command-line, it's likely they won't be able to
102 > install it; they certainly won't be able to maintain it, ime.
103 >
104 > Later, we get the "some EFI bootloaders don't allow it." Could you elaborate
105 > on how a system we install grub to, won't allow us to change anything?
106 > I am not doubting you: I just think we need more explanation of the exact
107 > context where we can install Gentoo, but not a bootloader.
108
109 Being Gentoo does not absolutely mean that we have to craft watches
110 and play VHS with the tongue every time we want to do something.
111 Making things easy is an orthogonal concept!
112
113 >
114 >> It looks like there is some consensus on the effort of making systemd
115 >> more accessible,
116 >
117 > Sure there is: there's also consensus that this approach is wrong for
118 > Gentoo. And I have to concur, without further reasoning from you. Switching
119 > init isn't done that often, and when it is a Gentoo user is expected to
120 > deal with configuration. In this case, it's a doddle to set the command-line
121 > to init=/sbin/fubar to try it, and then when it's running the user can
122 > change the symlink, or just revert as they choose.
123 >
124 > If they can't handle the above, they shouldn't be on Gentoo imo. And sabayon
125 > already sets up systemd, so I don't see the use-case frankly. Apart from making
126 > Gentoo base-system more suitable for direct usage in Sabayon, which is not our
127 > problem.
128
129 That's not absolutely the point, I am sorry. The topic here is to
130 improve the systemd experience, if you are an openrc user that doesn't
131 care about systemd and other stuff, you are off topic.
132
133 >
134 > What are the effects for other downstreams? Funtoo for instance, has been
135 > swimming against the upstream udev/systemd mania, from glancing at their site
136 > recently. Have you consulted with other downstreams about their needs and got
137 > buy-in from them too? That would strengthen your case, tho imo it's weak
138 > irrespective of what systemd-preferring downstreams want: after all, they're
139 > distros, not Gentoo users, and are supposed to be expert at setting things up.
140 >
141 > So I just don't see which Gentoo users this is helping. Making it even more
142 > trivial to change init than it already is, is actually a bad thing in my eyes.
143 > It gives the impression that it can be undertaken lightly which is simply bad
144 > practice.
145
146 We should stop thinking about Gentoo like a guru-distro. Gentoo is
147 about choice, but choice != complexity. Making things easier is not
148 against our Manifesto.
149 Gentoo is about choice, which to me also means "embrace diversitiy".
150 If you want to keep living in your little world, fine, you can and
151 you're very welcome, but also people who want to have fun with new
152 stuff should get the same respect. Implementing new stuff also means
153 making things easier, especially in the systemd case.
154
155 >
156 >> while there are problems with submitting bugs about
157 >> new systemd units of the sort that maintainers just_dont_answer(tm).
158 >> In this case, I am just giving 3 weeks grace period for maintainers to
159 >> answer and then I usually go ahead adding units (I'm in systemd@ after
160 >> all).
161 >
162 > AFAIK it's been policy for a while that systemd unit files should be installed
163 > by default, for all the reasons you've given. I can't see a maintainer being
164 > bothered by the systemd herd adding them when they have no interest: after all
165 > users can already set an INSTALL_MASK, and it makes binpkgs more useful.
166 >
167
168 Thanks for reminding me a policy I am supposed to already know about.
169
170 >> The only remaining problem is about eselect-sysvinit, for this reason,
171 >> I am probably going to create a new separate pkg called
172 >> _sysvinit-next_, that contains all the fun stuff many developers were
173 >> not allowed to commit (besides my needs, there is also the need of
174 >> splitting sysvinit due to the issues reported in [4]). I am sure that
175 >> a masked alternative sysvinit ebuild won't hurt anybody and will make
176 >> Gentoo a bit more fun to use.
177 >>
178 >> The final outcome will hopefully be:
179 >> - easier to migrate from/to systemd, at runtime, with NO recompilation
180 >> at all (just enable USE=systemd and switch the device manager from
181 >> *udev to systemd -- unless somebody wants to drop the udev part from
182 >> systemd, if at all possible)
183 >
184 > How is adding USE=systemd to a system with it switched off (ie: enabling it),
185 > *not* going to lead to recompilation?
186 >
187
188 Because you enable it once and for all and still have a _WORKING_ openrc.
189 Please take more time reading about what's in my overlay before jumping the gun.
190
191 >> - we give the users the right to choose without driving them nuts with
192 >> weird emerge-fu.
193 >
194 > What weird "emerge-fu"? You haven't outlined any at all. Unless you mean
195 > changing a USE flag and the standard emerge process, which isn't what anyone
196 > here would think of as "emerge-fu": just normal usage.
197 >
198 > Also, if you can't handle emerge, you really should be on another distro.
199 >
200
201 Same as above. You're talking about something you haven't even managed
202 to try. I'm sorry to tell you.
203
204 >> - we make possible to support new init systems in future, and even
205 >> specific init wrappers (bootchart anyone?)
206 >
207 > Which is possible already, so this is null.
208
209 It is not.
210
211 >
212 >> - we prepare the path towards a painless migration from consolekit
213 >> (deprecated for long time now) to logind (we probably need to fork it
214 >> off the systemd pkg -- upstream projects are _dropping_ consolekit
215 >> support right now!)
216 >
217 > Some people don't use either. For good reason, but let's not get into a
218 > flamewar: let's leave it as that "choice" thing you mentioned before. I
219 > take it those users will not see any breakage beyond missing "features"?
220
221 This doesn't affect such users.
222
223 >
224 >> - we put back some fun into Gentoo
225 >
226 > Eh, I've been having much more fun since I got rid of semantic-craptop,
227 > switched to mutt[A], and turned off all nubkit-related flags. My KDE came
228 > back to me, and runs smooth just like 3.5 used to :) Then I replaced my
229 > /bin/sh with /bin/bb which sped up bootup by an order of perceived
230 > magnitude, and also sped up the _rest_ of my system. Of course, the latter
231 > is only possible because Unix is designed on a modular basis, and we can
232 > still swap components in and out on Linux (for now.)
233
234 You're not the user I'm trying to work for. But yet nothing would
235 change for you.
236
237 >
238 >> If you want to see a working implementation of my systemd-love
239 >> efforts, just go download [1] and see things working yourself.
240 >>
241 >> [1] http://www.sabayon.org/release/press-release-sabayon-1304
242 >> [2] https://github.com/Sabayon/systemd-love
243 >> [3] For instance: https://bugs.gentoo.org/show_bug.cgi?id=465236
244 >> [4] "useless crap": https://bugs.gentoo.org/show_bug.cgi?id=399615
245 >
246 > Again, I don't think you help your case with this remark. I expected the
247 > "useless crap" to be a reference to lennart-ware. In fact, he was pointing
248 > out that he told you all 8 months ago to raise it upstream: several commands
249 > had already been migrated in upstream git according to another comment. So
250 > the "useless crap" was in fact what he'd usually call whining ime, about the
251 > lack of a "magic fix."
252
253 Please join Gentoo first.
254
255 >
256 > Please note: I fully support your effort to make it easy to switch back
257 > and forth (I actually believe many people who try out openrc will stay with it.)
258 > I just don't think that adding a fragile eselect module (along with "this needs
259 > investigation" as things come up) is the way to do it. Nor does it solve
260 > any real problem in the Gentoo context. Nor should someone change init on a whim,
261 > without being ready to handle configuration.
262 >
263 > In fact, dumbing down Gentoo is dangerous imo. It makes it far more likely
264 > that user will mess up something else more significant, likely leading to data
265 > loss. Gentoo, like Unix, doesn't stop you from doing stupid things, as that
266 > would stop you doing clever things. If you're not ready for that (which the
267 > install process beats into you) then you're better off not using it, afaic.
268 >
269 > That last is actually the reason I haven't put our installer out to users on
270 > the forum: I don't think it's a good idea to have an automated install unless
271 > you've done at least 2 manual ones. And that would go out the window with
272 > an easy installer. Perhaps that's why you feel Sabayon users need the Gentoo
273 > bar lowered.
274 >
275 > To my mind the answer to that is to educate them some more, and make it clear
276 > that Gentoo is not Sabayon for that very reason. It's not meant to hold your
277 > hand: it's far more likely to slap you on the wrist. Or indeed shoot your foot
278 > off if, and only if, you tell it to.
279
280 Thanks for your feedback.
281
282 >
283 > Regards,
284 > steveL.
285 >
286 > [A] "kmail to mutt with maildir and procmail"
287 > http://forums.gentoo.org/viewtopic-t-945868.html
288 >
289 > --
290 > #friendly-coders -- We're friendly, but we're not /that/ friendly ;-)
291 >
292
293
294
295 --
296 Fabio Erculiani

Replies

Subject Author
[gentoo-dev] Re: Re: Making systemd more accessible to "normal" users "Steven J. Long" <slong@××××××××××××××××××.uk>