[pulseaudio-discuss] New release - mpd has stopped working with same user

Arun Raghavan arun.raghavan at collabora.co.uk
Mon Nov 19 19:07:25 PST 2012


On Tue, 2012-11-20 at 07:49 +0800, Oon-Ee Ng wrote:
> Reference -
> https://mailman.archlinux.org/pipermail/arch-general/2012-November/032147.html
> 
> Basically, with pulseaudio 2.99.2 mpd can't seem to connect to
> pulseaudio. Easy workaround is to play through tcp on 127.0.0.1, but
> the Arch devs pointed me to this link -
> http://arunraghavan.net/2012/11/pulseconf-2012-report/ - specifically
> I noted the 'per-user and system modes' part.
> 
> I was under the impression this is not yet done, just that its been
> discussed. Or has something changed since nov 6 when this was posted?

None of this has been implemented (a final approach hasn't even been
agreed upon).

> Previously mpd run as my own user (ngoonee) would connect to
> pulseaudio running as my own user (ngoonee) just fine. According to
> the Arch devs, pulseaudio has now moved to use xdg config file
> locations and somehow this causes some confusion with mpd.
> 
> Reading over my email, I realize I don't have a focused question, so
> here it is - how should mpd users use pulseaudio ideally, and does mpd
> need updating or is this something to be dealt with with pulse?
> 
> P.S. - using systemd's logind, if that makes a difference.

Bluewind from the Arch side was speaking to me on IRC several hours ago,
and let me summarise our findings.

1. mpd is spawned as your "main" user, with XDG_RUNTIME_DIR unset. As a
result, we use the fallback runtime dir (which is ~/.pulse if it exists,
or ~/.config/pulse on a new install).

2. Your "main" user logs in, XDG_RUNTIME_DIR is set to /run/..., and
PulseAudio clients try to look for or spawn a server based on that.

The two possible solutions are for mpd to get the same XDG_RUNTIME_DIR,
or your user session's PULSE_RUNTIME_PATH be set to the same as what mpd
uses.

Now the semantics of XDG_RUNTIME_DIR dictate that it be completely wiped
out when the user logs out. I am given to understand that the mpd daemon
does not get a session proper, so your user logging out could cause
breakage with the first solution (even though it is more correct, in
some sense, imo).

That's as far as we got. Perhaps someone with a better understanding of
the the session stuff can see if mpd can be spawned with its own session
(which I hope will keep the XDG_RUNTIME_DIR around).

-- Arun



More information about the pulseaudio-discuss mailing list