Debian-12-minimal no sound with pipewire

Hello. After installing pipewire in the template debian-12-minimal

apt install -y --no-install-recommends pipewire-pulse
apt install -y pipewire-qubes

I don’t hear a sound when file playback

pw-play /home/user/QubesIncoming/vault/Front_Center.wav

And I see lines in the log

debian-12-minimal systemd : pipewire.service - PipeWire Multimedia Service was skipped because of an unmet condition check (ConditionUser=!root).
debian-12-minimal systemd : pipewire-pulse.service - PipeWire PulseAudio was skipped because of an unmet condition check (ConditionUser=!root).

The dpkg -l | grep pulseaudio command gives an empty output
In other anon-whonix templates, debian12-xfce TemplateWM pw-play works.

What can you advise me to solve such a problem?

What command did you use to see this log?
The pipewire is only started for non-root users, so you need to check the log for non-root user.
For example, search for pipewire messages in journalctl -b.
Or check pipewire and other services using systemctl:

systemctl --user status pipewire

Also check the Volume Control (pavucontrol) in dom0 and make sure that your qube is using the correct output device in the Playback tab.

in user

Summary
debian-12-minimal systemd[519]: Queued start job for default target default.target.
debian-12-minimal systemd[519]: Created slice app.slice - User Application Slice.
debian-12-minimal systemd[519]: Created slice session.slice - User Core Session Slice.
debian-12-minimal systemd[519]: Reached target paths.target - Paths.
debian-12-minimal systemd[519]: Reached target timers.target - Timers.
debian-12-minimal systemd[519]: Starting dbus.socket - D-Bus User Message Bus Socket...
debian-12-minimal systemd[519]: Listening on dirmngr.socket - GnuPG network certificate management daemon.
debian-12-minimal systemd[519]: Listening on gpg-agent-browser.socket - GnuPG cryptographic agent and passphrase cache (access for web browsers).
debian-12-minimal systemd[519]: Listening on gpg-agent-extra.socket - GnuPG cryptographic agent and passphrase cache (restricted).
debian-12-minimal systemd[519]: Listening on gpg-agent-ssh.socket - GnuPG cryptographic agent (ssh-agent emulation).
debian-12-minimal systemd[519]: Listening on gpg-agent.socket - GnuPG cryptographic agent and passphrase cache.
debian-12-minimal systemd[519]: Listening on pipewire-pulse.socket - PipeWire PulseAudio.
debian-12-minimal systemd[519]: Listening on pipewire.socket - PipeWire Multimedia System Socket.
debian-12-minimal systemd[519]: Listening on dbus.socket - D-Bus User Message Bus Socket.
debian-12-minimal systemd[519]: Reached target sockets.target - Sockets.
debian-12-minimal systemd[519]: Reached target basic.target - Basic System.
debian-12-minimal systemd[519]: Started pipewire.service - PipeWire Multimedia Service.
debian-12-minimal systemd[519]: Started pipewire-pulse.service - PipeWire PulseAudio.
debian-12-minimal systemd[519]: Reached target default.target - Main User Target.
debian-12-minimal systemd[519]: Startup finished in 1.496s.
debian-12-minimal systemd[519]: Starting dbus.service - D-Bus User Message Bus...
debian-12-minimal systemd[519]: Started dbus.service - D-Bus User Message Bus.
debian-12-minimal qubes.StartApp+debian-xterm-dom0[784]: Warning: locale not supported by C library, locale unchanged

in user

Summary
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/user/pipewire.service.d
             └─30_qubes.conf
     Active: active (running) 
TriggeredBy: ● pipewire.socket
   Main PID: 537 (pipewire)
      Tasks: 2 (limit: 7680)
     Memory: 5.1M
        CPU: 73ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─537 /usr/bin/pipewire

debian-12-minimal systemd[519]: Started pipewire.service - PipeWire Multimedia Service.

In Volume Control, the parameters are the same for all VMs. However, the only thing that doesn’t have sound is in the Debian-12-minimal template and the AppVM based on it.

I installed pamixer in debian-12-minimal and debian-12-xfce and it has different output.

user@debian-12-xfce:~$ pamixer --list-sinks
Sinks:
36 "qubes-sink" "Suspended" "Qubes Virtual Audio Sink"
user@debian-12-minimal:~$ pamixer --list-sinks
The sink doesn't exist

I found the problem, Qubes OS needs the wireplumber package for sound to work and it’s not installed by default when installing pipewire-pulse:

apt install -y --no-install-recommends pipewire-pulse

Because wireplumber is not a dependency of pipewire-pulse, it’s only a recommended package.

I’ll update the “Advanced way” in Waydroid guide to also install the wireplumber package.

1 Like

Thank you very much! After

apt install -y --no-install-recommends wireplumber

sound works!!! :fireworks: