NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.75k stars 13.86k forks source link

pipewire-pulse.service does not activate from its socket #348155

Open Frontear opened 4 hours ago

Frontear commented 4 hours ago

Describe the bug

Ran into this issue trying to use quickemu, and getting

qemu-system-x86_64: could not stat pidfile /run/user/1000/pulse/pid: No such file or directory

Checking systemctl status shows that the socket is active but apparently is not recieving a trigger to start the service?

Rolling back my config to nixpkgs rev 1355a0cbfeac61d785b7183c0caaec1f97361b43 and it works. Current config nixpkgs rev bc947f541ae55e999ffdb4013441347d83b00feb does not work. No version changes or module changes have occured between these two (besides a treewide stdenv.is -> stdenv.hostPlatform.is). I tried to bisect a bit more but I keep getting cache misses and my laptop isn't particularly strong enough to build the 2k packages that it needs at each bisect step.

Notify maintainers

@K900

Service Status

○ pipewire-pulse.service - PipeWire PulseAudio
     Loaded: loaded (/etc/systemd/user/pipewire-pulse.service; linked-runtime; preset: enable>
    Drop-In: /nix/store/yfm03nfahy0wnawcyfag5dhd2nicidhb-user-units/pipewire-pulse.service.d
             └─overrides.conf
     Active: inactive (dead)
TriggeredBy: ● pipewire-pulse.socket
● pipewire-pulse.socket - PipeWire PulseAudio
     Loaded: loaded (/etc/systemd/user/pipewire-pulse.socket; enabled; preset: enabled)
    Drop-In: /nix/store/yfm03nfahy0wnawcyfag5dhd2nicidhb-user-units/pipewire-pulse.socket.d
             └─overrides.conf
     Active: active (listening) since Sat 2024-10-12 17:16:59 EDT; 32min ago
 Invocation: e7c0be4f6f054053827df56fd65d9576
   Triggers: ● pipewire-pulse.service
     Listen: /run/user/1000/pulse/native (Stream)
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire-pulse.socket

Oct 12 17:16:59 LAPTOP-3DT4F02 systemd[1741]: Listening on PipeWire PulseAudio.

Add a :+1: reaction to issues you find important.

Frontear commented 4 hours ago

From perusing journalctl --user, it seems that the service activates very early on my older configuration. This entry "Started PipeWire PulseAudio" is not available anywhere on my newer configuration.

Oct 12 17:54:29 LAPTOP-3DT4F02 dbus-daemon[1821]: [session uid=1000 pid=1821] Activating via systemd: service name='org.freedesktop.impl.portal.desktop.wlr' unit='xdg-desktop-portal-wlr.serv>
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Starting Portal service (wlroots implementation)...
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Started PipeWire Multimedia Service.
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Started Multimedia Service Session Manager.
Oct 12 17:54:29 LAPTOP-3DT4F02 dbus-daemon[1821]: [session uid=1000 pid=1821] Successfully activated service 'org.freedesktop.impl.portal.desktop.wlr'
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Started Portal service (wlroots implementation).
Oct 12 17:54:29 LAPTOP-3DT4F02 dbus-daemon[1821]: [session uid=1000 pid=1821] Successfully activated service 'org.freedesktop.portal.Desktop'
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Started Portal service.
Oct 12 17:54:29 LAPTOP-3DT4F02 systemd[1725]: Started PipeWire PulseAudio.
K900 commented 29 minutes ago

You probably have a broken symlink in ~/.config/systemd. Try clearing that out.

Frontear commented 5 minutes ago

Nothing in there, only gpg-agent-* related things that get generated by HM. In general I didn't expect anything in here since I use ephemeral roots.