[Bug] `50-qmk.rules` Broken on systemd 258.
Describe the Bug
A change to systemd with version 258 seems to have broken a lot of people's udev rules, and now the provided udev rule file no longer works. I managed to solve this issue by finding someone in a similar situation and using their fix, but I don't know enough about udev rules or how things are supposed to work to propose a PR with this fix or any other potential fix. All I know is it seems this change by systemd is intentional and not being reverted anytime soon, so I thought to bring it up and hopefully help others avoid the headache I just spent all day figuring out.
Keyboard Used
No response
Link to product page (if applicable)
No response
Operating System
No response
qmk doctor Output
Is AutoHotKey / Karabiner installed
- [ ] AutoHotKey (Windows)
- [ ] Karabiner (macOS)
Other keyboard-related software installed
No response
Additional Context
No response
Sigh. systemd strikes again.
I'll try and have a look at it in the coming weeks but had some pretty significant IRL events occur so I can't promise anything.
With any luck we can leverage something on https://github.com/systemd/systemd/issues/39056. Irritating.
Hmm, the only rule which could be hit by that change is
# hid_listen
KERNEL=="hidraw*", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl"
So you were relying on that rule, and plugdev was not a system group?
That rule should probably be reduced to
KERNEL=="hidraw*", TAG+="uaccess"
(TAG+="udev-acl" is also something obsolete, and the plugdev group was found mostly in Debian, so the rule already generated warnings on other distros)
BTW, a better version of that rule (which actually checks HID usages instead of blindly opening access to all hidraw devices) is in https://github.com/qmk/qmk_udev, but it needs a compiled helper program.
So you were relying on that rule, and
plugdevwas not a system group?
I think because that rule exists the entire file fails to load. Any error scraps the whole thing.