Login to MATE DE (using sddm login mgr) and open a MATE terminal, press BackSpace and hear audio (when No even sound choosen). Logout and relogin quickly, before all user processes has terminated: ps uaxww| grep jocke jocke 7401 0.4 0.0 18644 11120 ? Ss 14:28 0:00 /usr/lib/systemd/systemd --user jocke 7402 0.0 0.0 39476 2996 ? S 14:28 0:00 (sd-pam) jocke 7465 0.5 0.0 199820 18320 ? S<sl 14:28 0:00 /usr/bin/pipewire jocke 7466 1.5 0.0 414004 21484 ? S<sl 14:28 0:00 /usr/bin/wireplumber jocke 7467 0.2 0.0 109300 13044 ? S<sl 14:28 0:00 /usr/bin/pipewire-pulse jocke 8377 0.0 0.0 9336 3572 ? Ss 14:29 0:00 /usr/bin/dbus-broker-launch --scope user jocke 8402 0.0 0.0 3588 2116 ? S 14:29 0:00 dbus-broker --log 4 --controller 10 --machine-id 3c5f0d8567c94ff99c16a001a41dcc37 --max-bytes 100000000000000 --max-fds 25000000000000 --max-matches 5000000000 Now MATE terminal respects No Sounds profile. Logout and wait for all user processes to terminate and login again. MATE Terminal does NOT respect No Sounds selection. libcanberra: USE=alsa gstreamer gtk2 gtk3 pulseaudio sound udev This is probably some startup order/decency problem but I don't known where to look so filing it as a libcanberra bug.
I added an sleep 1 in /etc/X11/xinit/xinitrc.d/80-dbus: #!/bin/sh # launches a session dbus instance dbuslaunch=$(command -v dbus-launch 2>/dev/null) if [ -n "$dbuslaunch" ] && [ -x "$dbuslaunch" ] && [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then if [ -n "$command" ]; then command="$dbuslaunch --exit-with-session $command" else eval "$($dbuslaunch --sh-syntax --exit-with-session)" fi sleep 1 fi and that helps. Not done exhaustive testing though. I am using sys-apps/dbus-broker too.
This is not libcanberras fault, it is pipewire USE=X that adds X11 Bell and something else(VTE?) calls into pipewire USE=-X for pipewire makes it quiet.