Bug#1103621: pipewire client config not applied
David Mandelberg
david at mandelberg.org
Sat Apr 19 19:07:47 BST 2025
Package: warzone2100
Version: 4.5.5deb-1
My ~/.config/pipewire/client-rt.conf.d/20-defaults.conf has this, which
should set node.loudness = -18 on warzone2100.real:
stream.rules = [
# TODO: don't override node.loudness if the application set it?
{
matches = [{media.class = Stream/Output/Audio}]
actions = {update-props = {node.loudness = -18}}
}
{
matches = [
{media.class = Stream/Output/Audio, application.name = "Quod Libet"}
]
actions = {update-props = {node.loudness = -30}}
}
]
However, `pw-dump warzone2100.real | grep loudness` does not show anything.
Looking at /usr/games/warzone2100, I'm guessing that warzone2100.real
can't read ~/.config/pipewire/client-rt.conf.d/20-defaults.conf because
there's no bind mount for it? From
https://manpages.debian.org/unstable/pipewire-bin/pipewire-client.conf.5.en.html
it looks like all the paths are bind mounted except for
$XDG_CONFIG_HOME/pipewire. (I think it makes more sense to bind the
entire user pipewire config dir instead of just client-rt.conf and
client-rt.conf.d? libopenal1 could reasonably choose to use a different
client config like client.conf instead of client-rt.conf, and I'm not
sure anything in ~/.config/pipewire is too sensitive.)
I didn't test this, but it also looks like libopenal1's config files
~/.config/alsoft.conf and ~/.alsoftrc aren't bind mounted, which I'm
guessing would prevent those from working for warzone2100 too.
More information about the Pkg-games-devel
mailing list