Gentoo Archives: gentoo-dev

From: "Anthony G. Basile" <blueness@g.o>
To: Jaco Kroon <jaco@××××××.za>, gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] News item for eudev deprecation
Date: Tue, 24 Aug 2021 11:50:32
Message-Id: 5705e95c-b399-e732-0618-10ec64987ea4@gentoo.org
In Reply to: Re: [gentoo-dev] News item for eudev deprecation by Jaco Kroon
1 On 8/24/21 6:24 AM, Jaco Kroon wrote:
2 > Hi All,
3 >
4 > We run glibc based systems.  No musl.  But we don't use systemd.
5 >
6 > As little as a year back we still ran into issues with systemd-udev
7 > variant breaking systems, the fix of course was to nuke it and install
8 > eudev.  Are we certain there is nothing (eg, LVM integration was our
9 > biggest problem resulting in really crazy impossible to debug since we
10 > can't log in due to lvn snapshot creation/removal deadlocking with
11 > systemd-udev - no ask me not how, all I can tell you is that eudev never
12 > exhibited this behaviour) will break?
13 >
14 > Whilst I fully appreciate the difficult of all the various e* packages
15 > (elogind, eudev etc ..) and I most certainly do not have the capacity to
16 > maintain, and therefore I'm in full support of the concept of
17 > deprecating eudev, I'm very, very worried about us suddenly being back
18 > into the reboot-a-server-a-week scenario.  In the worst case we've lost
19 > some large filesystems almost certainly due to systemd-udev (we've had a
20 > number of filesystem crashes which was recovered with fsck, but after
21 > ditching systemd-udev and moving to eudev about two years back on this
22 > specific host we've had ZERO further problems other than a failed drive
23 > or two, none of which required a hard-reset to get back to a sane state).
24 >
25 > Kind Regards,
26 > Jaco
27
28 I kept eudev as conservative as possible which probably explains its
29 predictable behavior. Open bugs with the sys-fs/udev maintainers and
30 mark it critical if it is damaging filesystems.
31
32
33 >
34 > On 2021/08/22 22:14, Anthony G. Basile wrote:
35 >> Hi everyone,
36 >>
37 >> Yes! It is time to finally deprecate eudev! sys-fs/udev now builds
38 >> under musl! My original purpose for maintaining eudev was because
39 >> systemd + musl did not play well together when udev was absorbed into
40 >> the sytemd repo. Now thanks to patches from openembedded, they do, and
41 >> my original reason for maintaining eudev is no longer valid. So its
42 >> time to retire eudev. It has served its purpose as a stop-gap.
43 >>
44 >> To me, this is a success for musl, and I would like to thank all the
45 >> developers who have taken musl seriously enough to make this happen :)
46 >>
47 >> I am willing to transfer the eudev repo to another organization, but I
48 >> will not maintain it anymore and Base System doesn't want to either.
49 >> Let me warn people, to maintain it correctly you MUST become familiar
50 >> with its internals and watch what systemd is doing upstream to keep up.
51 >> This is not trivial. I learned a lot from eudev, and it did save musl
52 >> on gentoo, but there was a period there when it was taking up almost all
53 >> of my time. If you don't know what you're getting into, you don't want
54 >> to take on its maintenance.
55 >>
56 >>
57 >>
58 >> Title: eudev retirement on 2022-01-01
59 >> Author: Anthony G. Basile <blueness@g.o>
60 >> Posted: 2021-08-xx
61 >> Revision: 1
62 >> News-Item-Format: 2.0
63 >> Display-If-Installed: sys-fs/eudev
64 >>
65 >> sys-fs/udev is becoming the standard provider of udev on non-systemd
66 >> (e.g. OpenRC) systems. Users of systemd will continue to use the udev
67 >> services provided by the sys-apps/systemd package itself.
68 >>
69 >> The transition should be uneventful in most cases, but please read this
70 >> item in full to understand some possible corner cases.
71 >>
72 >> eudev will be retired and removed from Gentoo on 2022-01-01. We will
73 >> start masking eudev on 2021-10-01 and give people 3 months to prepare
74 >> their transition. You should ensure that sys-fs/eudev is not in your
75 >> world file by running
76 >>
77 >> emerge --deselect sys-fs/eudev
78 >>
79 >> in order for Portage to replace eudev with sys-fs/udev once the
80 >> package.mask is in place. We fully support udev on musl, whereas uclibc
81 >> will still have to rely on eudev before also being removed on 2022-01-01.
82 >>
83 >> **WARNING**
84 >>
85 >> If you happen to have an INSTALL_MASK with a blanket "*systemd*" glob,
86 >> you will inevitably break your system. sys-fs/udev contains "systemd" in
87 >> some of its filenames, hence a blanket filter rule will likely lead to a
88 >> non-functional udev installation.
89 >>
90 >> Rationale
91 >>
92 >> The integration of udev into the systemd git repo introduced numerous
93 >> problems for none-glibc systems, such as musl and uclibc. Several
94 >> options were considered, and the one chosen was to fork and maintain
95 >> udev independant of the rest of systemd. This was meant as a stop-gap
96 >> solution until such time as the problems with systemd on musl had been
97 >> resolved. This is now the case with patches provided by openembedded,
98 >> and my original reason for maintaining eudev is no longer relevant.
99 >>
100 >> I am willing to transfer eudev to another umbrella organisation or Linux
101 >> distribution that is willing to continue its maintenance, but
102 >> maintaining eudev cannot be done purely through proxy-maintaining and
103 >> requires an understanding of its internals. This is a steep learning
104 >> curve and must be an earnest effort. For this reason, the Base System
105 >> project has decided not to support euev as an option going forward.
106 >>
107 >
108
109
110 --
111 Anthony G. Basile, Ph.D.
112 Gentoo Linux Developer [Hardened]
113 E-Mail : blueness@g.o
114 GnuPG FP : 1FED FAD9 D82C 52A5 3BAB DC79 9384 FA6E F52D 4BBA
115 GnuPG ID : F52D4BBA