Summary: | sys-apps/systemd-utils: Hyprland cant launch after systemd-utils-255.7-r1 update | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | diodorov |
Component: | Current packages | Assignee: | Gentoo systemd Team <systemd> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | diodorov |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=923258 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Hyprland crashlog |
Please elaborate on the udev rules you modified to resolve the issue. I only reverted changes made in this commit https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4d9ce81a38433b3355781a60301c085c31fe7f5 if I understood the question correct As I understood without them I can make Hyprland get to work back, but I need to make all udev rules manually 70-uaccess.rules 71-seat.rules 73-seat-late.rules These rules should be provided by elogind. Do you not have elogind installed? 99-systemd.rules These rules should have no effect if you are not running systemd. Please verify this. Yup. sys-auth/elogind-252.9 installed with next use-flags +acl -audit +cgroup-hybrid -debug -doc +pam +policykit -test Inside /usr/lib/udev/rules.d/ I have those three rules and don't have 99-systemd.rules But currently, I'm on a patched systemd-utils ok. I find out where the problem is. I installed the latest systemd-utils and it removed three deleted rules. Then I reinstalled elogind and it creates those three rules again. Without this step, those rules doesn't exist I think it was necessary to forcefully rebuild elogind after systemd-utils-255.7-r1 update Ah, I think I grasp what happened. 1. elogind installs /lib/udev/rules.d/*.rules 2. systemd-utils-255.7 pkg_preinst moves /lib/udev/rules.d to /usr/lib/udev/rules.d and clobbers the elogind rules. 3. Upgrading to systemd-utils-255.7-r1 drops the rules, causing the files to be unmerged from /usr/lib/udev/rules.d. 4. Reinstalling elogind restores the rules to /lib/udev/rules.d, which is now a symlink to /usr/lib/udev/rules.d. Unfortunately I don't see any way to really resolve this automatically for split-user installs that happened to upgrade to systemd-utils-255.7. Thanks for the report, and I will keep this in mind if people report issues. The only thing I can think of is either: a) a pkg_postinst check with has_version for systemd-utils where we check the location, tell people to re-emerge if bad; b) new version of virtual/libudev and depend on it in elogind Actually, I think we could probably just revbump elogind to promote a rebuild for any affected users. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0b4cb11e6fdb97c7533cc42afa92f3f735b189a5 commit 0b4cb11e6fdb97c7533cc42afa92f3f735b189a5 Author: Mike Gilbert <floppym@gentoo.org> AuthorDate: 2024-06-12 18:02:13 +0000 Commit: Mike Gilbert <floppym@gentoo.org> CommitDate: 2024-06-12 18:42:54 +0000 sys-auth/elogind: revbump to promote reinstall Users who upgraded from sys-apps/systemd-utils-255.7 to 255.7-r1 will be missing udev rules installed by elogind due to a snafu in pkg_preinst. Revbump elogind to cause a reinstall to fix these systems. Closes: https://bugs.gentoo.org/934143 Signed-off-by: Mike Gilbert <floppym@gentoo.org> sys-auth/elogind/{elogind-246.10-r3.ebuild => elogind-246.10-r4.ebuild} | 0 sys-auth/elogind/{elogind-252.9.ebuild => elogind-252.9-r1.ebuild} | 0 2 files changed, 0 insertions(+), 0 deletions(-) |
Created attachment 895694 [details] Hyprland crashlog I am unsure if this is a bug related to my config or systemd-utils problem because, for a few days, no one posted a similar problem or filed a bug. After a systemd-utils-255.7-r1 update (d4d9ce8) Hyprland can't launch (manually or over greetd), and it seems like the compositor does not have access to GPU. When I roll back those "unwanted udev rules" everything works fine again.