elogind service starts after sound device initialization, causing permission failures
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- linux
- Ambito
- devops, operating-systems
Direzione di ricerca
Inizia leggendo /etc/sv/elogind/run e /usr/share/dbus-1/system-services/org.freedesktop.login1.service, quindi esamina in che modo /etc/sv/sddm/run dipende da elogind e D-Bus. Riproduci la sequenza di avvio e confronta i permessi dei dispositivi prima e dopo udevadm trigger --subsystem-match=sound. Il lavoro è completato quando elogind si avvia in modo affidabile abbastanza presto da consentire le ACL dei dispositivi audio, senza compromettere SDDM né creare un conflitto D-Bus/di servizio.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Display Manager: SDDM
Desktop: KDE Plasma
On a fresh Void Linux installation with elogind, sound devices are created with incorrect permissions at boot, making them inaccessible to logged-in users. This occurs because elogind starts via D-Bus activation after udev has already processed sound devices.
Current Behavior:
At boot (before login):
crw------- 1 root root 116, 12 /dev/snd/controlC0
After manual udev trigger:
crw-rw----+ 1 root audio 116, 12 /dev/snd/controlC0
Void Linux ships elogind with only D-Bus activation enabled (/usr/share/dbus-1/system-services/org.freedesktop.login1.service)
No runit service is enabled by default (/var/service/elogind does not exist)
Boot sequence
- udev processes sound devices early in boot
- udev rules tag devices with uaccess (via /usr/lib/udev/rules.d/70-uaccess.rules
- elogind helper (/usr/libexec/elogind/elogind-uaccess-command) should set ACLs
- BUT elogind is not running yet (D-Bus hasn't activated it)
- Devices get root:root 600 permissions
User logs in → D-Bus now activates elogind → Too late, devices already processed
Sound devices remain inaccessible until manual udevadm trigger --subsystem-match=sound
Attempted Solutions:
ln -s /etc/sv/elogind /var/service/
Service fails to start because /etc/sv/elogind/run contains sv check dbus >/dev/null || exit 1, which fails with permission errors for non-root users. Meanwhile, D-Bus still auto-activates elogind, creating a conflict.
Option 2: Disable D-Bus activation + enable service
mv /usr/share/dbus-1/system-services/org.freedesktop.login1.service
/usr/share/dbus-1/system-services/org.freedesktop.login1.service.disabled
ln -s /etc/sv/elogind /var/service/
Result: SDDM fails to start resulting in no graphical login.
Any workarounds essentially lead me to either using rc.local with sleep and retrigger of udevadm, which is frankly a very bad solution, or rewriting the /etc/sv/sddm/run which I frankly think I shouldn't be doing.
I am not sure if this is even the correct repo to report this to, but this seems like a very obscure timing bug that should be probably looked into. If i am doing something wrong or have any suggestions how to fix this please let me know.
- Lingua principale
- C
- Stelle
- 245
- Fork
- 67
- Merge medio
- 2g
- PR unite (30g)
- 2
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di void-linux/void-runit
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
void-linux/void-runit#127 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
void-linux/void-runit#125 · 4 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
void-linux/void-runit#120 ·
-
Runit hangs at system reboot Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 20/100
void-linux/void-runit#119 · 7 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
void-linux/void-runit#117 · 1 commento ·
Tutte le issue di void-linux/void-runit
Issue simili
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 60/100
-
Nmap
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
flang:fir-hlfir
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
llvm/llvm-project#225935 ·