Skip to content

[RFC] replace eudev with udev - #62100

Open
classabbyamp wants to merge 10 commits into
void-linux:masterfrom
classabbyamp:udev
Open

[RFC] replace eudev with udev#62100
classabbyamp wants to merge 10 commits into
void-linux:masterfrom
classabbyamp:udev

Conversation

@classabbyamp

@classabbyamp classabbyamp commented Aug 18, 2026

Copy link
Copy Markdown
Member

We've been using eudev as our default device file manager since 2014. Lately, this project seems to have lost all development effort, with the latest release in 2023 and the latest commit in 2024. This means we don't get fixes or updates to any udev rules packaged with (e)udev, we don't get updates for handling new kernel behaviours, and more. There shouldn't any loss of functionality by switching.

Several other distros that don't use systemd for init also use udev:

  • Gentoo moved from eudev to udev several years ago (see the header here), whether or not the user uses the rest of systemd
  • Chimera Linux
  • Artix

Additionally, eudev was intended to be a temporary fork until systemd supported non-glibc systems (ref), and musl is now supported by upstream systemd.

This PR also introduces handling for notating dlopen()ed libraries with ELF notes (UAPI standard), which at this time requires python3 in hostmakedepends to run.

Testing the changes

  • I tested the changes in this PR: YES

New package

[ci skip] [skip ci] [ci-skip] [skip-ci]

@classabbyamp classabbyamp added remove Package removal new-package This PR adds a new package core core package labels Aug 18, 2026
@classabbyamp
classabbyamp force-pushed the udev branch 4 times, most recently from b61fc5e to 8b2d15a Compare August 18, 2026 21:17
…note.dlopen

based on the UAPI standard: https://uapi-group.org/specifications/specs/elf_dlopen_metadata/

for now, this check is optional, and only run if python is available
from hostmakedepends. When run, it reads the .note.dlopen section and
emits required shlibs for dependencies with the required or recommended
priority. Dependencies without a priority are assumed to be required.
for migration to udev
adapt hwdb hook to use udev-hwdb if available
repo renamed back to dracut, which changed the checksum
not rebuilding these packages at this time because it would be expensive
(chromium, webengine) and the eudev and udev libudev.so are
abi-identical. packages will be rebuilt over time and eventually we can
rebuild the last stragglers. provides=eudev on udev prevents dependency
errors.
@classabbyamp
classabbyamp marked this pull request as ready for review August 20, 2026 02:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core core package new-package This PR adds a new package remove Package removal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants