Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 932629

Summary: media-libs/libcanberra: Does not respect No Sounds profile
Product: Gentoo Linux Reporter: Joakim Tjernlund <joakim.tjernlund>
Component: Current packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: UNCONFIRMED ---    
Severity: normal CC: immoloism, joakim.tjernlund, sound
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Joakim Tjernlund 2024-05-24 12:41:37 UTC
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.
Comment 1 Joakim Tjernlund 2024-05-28 10:47:57 UTC
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.