On 2014-09-08 14:17, Glenn Golden wrote: > Tanu, > > This isn't directly releated to this thread, but something that David mentioned > here worries me vis a vis our ongoing discssions about "which server are we > talking to?": > > David Henningsson <david.henningsson at canonical.com> [2014-09-08 13:32:45 +0200]: >> >> Usually, PA will use the PULSE_SERVER X11 property instead of using >> XDG_RUNTIME_DIR, so this environment variable does not matter. >> > > This X11 PULSE_SERVER property hasn't been mentined before in our discussions > on the Travis Bickle question. It seems to add a new wrinkle. How does this > property fit in to the big picture of server determination? From what David > said above, it sounds like the PULSE_SERVER property has priority over the > XDG_RUNTIME_DIR envar...(????) If I read the code correctly, here's the server priority order: (Unless otherwise specified, anything in all caps is an environment variable.) 1) Specified server(s) in the call to the pa_context_connect API. 2) Specified server(s) in PULSE_SERVER 3) Specified server(s) in PULSE_SERVER, where PULSE_SERVER is an X11 property 4) Specified server(s) as in client.conf (the "default-server" key) If none of the above is present, all of the list below will be is tried, in this priority order: 5) Per-user instance: 5a) based on PULSE_RUNTIME_PATH 5b) based on XDG_CONFIG_DIR (if no PULSE_RUNTIME_PATH) 5c) based on ~/.pulse (if no XDG_CONFIG_DIR) 5d) based on XDG_CONFIG_HOME (if ~/.pulse does not already exist) 5e) based on ~/.config/pulse (if no XDG_CONFIG_HOME) 6) System-wide instance, based on /var/run/pulse 7) If auto-connect-localhost is set in client.conf, also try tcp4:127.0.0.1 8) If auto-connect-localhost is set in client.conf, also try tcp6:[::1] 9) If auto-connect-display is set in client.conf, also try DISPLAY Phew! Unless I missed something, I think that's all methods. [1] I bet someone really really wants you to connect to a PulseAudio server! -- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic [1] And given the code, it wouldn't surprise me if I actually did miss a method or two...