Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: "Chí-Thanh Christopher Nguyễn" <chithanh@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Changing order of default virtual/udev provider
Date: Wed, 17 Feb 2016 12:43:52
Message-Id: 20160217134334.090671cc.mgorny@gentoo.org
In Reply to: Re: [gentoo-dev] Changing order of default virtual/udev provider by "Chí-Thanh Christopher Nguyễn"
1 On Tue, 16 Feb 2016 23:41:33 +0100
2 Chí-Thanh Christopher Nguyễn <chithanh@g.o> wrote:
3
4 > Alexis Ballier schrieb:
5 > >>> If it's just that, it's not limited to udev, but anything using
6 > >>> kdbus/bus1, and would mean openrc/${favorite init system} will have
7 > >>> to do the same thing anyway. But again, almost 2 years is extremely
8 > >>> old considering all the flux that has been around kbus.
9 > >>
10 > >> OpenRC itself can for now just ignore kdbus, bus1, or whatever kernel
11 > >> IPC system comes next.
12 > >
13 > > Well, as Lennart wrote it, kbus would have needed some initialisation.
14 > > Just like we have a dbus init script, openrc would have a kdbus one.
15 > >
16 > >> But if upstream udev makes use of the systemd
17 > >> userspace interface to the kernel IPC system, then OpenRC would have
18 > >> to implement the same interface in order to have working udev.
19 > >
20 > > As I understand it, a kernel IPC doesn't need systemd to work. udev
21 > > might use wrappers from libsystemd, or libbus1, just like we have
22 > > programs using libv4l or libbluetooth currently.
23 >
24 > In a follow-up, upstream wrote about how you should only run udev together
25 > with systemd, and if you don't want to do that (spelling as in original):
26 >
27 > "we will not support the udev-on-netlink case anymore. I see three options:
28 > a) fork things, b) live with systemd, c) if hate systemd that much, but
29 > love udev so much, then implement an alternative userspace for kdbus to
30 > do initialiuzation/policy/activation."
31 > https://lists.freedesktop.org/archives/systemd-devel/2014-May/019664.html
32 >
33 > So it seems a bit more than only initialization is needed.
34
35 You're missing the third option which is a sane option, and jump
36 straight to pitchforks.
37
38 As I see it, *if* this becomes a necessity, we're quite like are going
39 to provide KDBUS parts of systemd the way we provide udev parts right
40 now. After all, libsystemd-bus will be useful to more applications.
41
42 Of course, someone may want to fork that into libebus just for the sake
43 of renaming.
44
45 And after all, as it has already been noted, there are people
46 interested in maintaining non-systemd userspace for KDBUS. Which is
47 kinda the obvious choice, unlike forking something.
48
49 > >> Also given the close relationship between systemd and udev, there is
50 > >> no guarantee that supporting other users of kdbus/bus1 will make udev
51 > >> automagically work. As these two are released together, there is no
52 > >> reason to have a stable, public API between them.
53 > >
54 > > Yes, which would mean systemd requires matching udev, not the other way
55 > > around. I'm a bit clueless here: Do you have any pointers on the recent
56 > > trends on this side ?
57 >
58 > I have only upstream's statements from 2014. They talk about a kdbus
59 > userspace that systemd will provide to udev, which will be necessary for udev
60 > to function.
61 > If and when upstream comes forward with statements about whether udev will
62 > only use public and stable API, these concerns could be either dispelled or
63 > confirmed.
64
65 And here you have my statement, from today:
66
67 I declare that eudev will be discontinued. You should either move to
68 systemd, to alternative device manager or fork it. This is your last
69 call, Gentoo users!
70
71 Now please copy it to slashdot, reddit or whatever cool kids use these
72 days, and make sure to request at least half of existing eudev users
73 switch to something else because of the above statement.
74
75 Does it matter that I haven't contributed a single line to eudev code?
76 eudev upstream is Gentoo, and I'm a Gentoo developer. So I'm part of
77 upstream. Even if I don't touch eudev, I'm part of the upstream.
78 In fact, I think I even have commit access there!
79
80 If Lennart's single statement from 2014 is a reason to use eudev
81 instead of systemd-udevd, my statement from today is a more important
82 reason not to use eudev.
83
84 --
85 Best regards,
86 Michał Górny
87 <http://dev.gentoo.org/~mgorny/>

Replies