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