[pulseaudio-discuss] New Startup Logic

Lennart Poettering lennart at poettering.net
Fri Jul 25 07:36:42 PDT 2008

To all distributors:

PA 0.9.11 now has a different startup logic. Instead of being started
via an "esd" compat script from gnome-session it should now be started
via a script start-pulseaudio-x11 that is shipped in our tarball. We
also now ship a XDG autostart .desktop file that calls this
script. Along with these changes I also enabled auto-spawning and
automatic exit-on-idle by default now.

Why? Several reasons: We need to get rid of esd in our audio
stack; the esd compat script is GNOME specific; the esd script doesn't
allow multiple logins by the same user; the old scheme doesn't support
audio on the console.

PA is now started both on-demand and on session login. Auto-spawning
is enabled for console logins where now real session daemon
exists. Session based startup is enabled because PA should best be run
as long as the user is logged in.

A single PA instance is shared between all concurrent logins by the
same user. I.e. PA is now explciitly a *per-user* daemon, not a
*per-session* daemon.

I added a ConsoleKit module for PA that makes sure PA can keep track
of all logged in sessions of the same user. Also, the XSMP module was
slightly modified to just keep track of X11 sessions instead of
linking PA shutdown directly to X11 session ends. The exit-on-idle
logic will make sure that PA is terminated a few seconds after a user
logged out from all his local sessions.

For each X11 session a user has we load an additional instance of the
X11 modules of PA with the appropriate $DISPLAY and $SESSION_MANAGER

Any questions?


Lennart Poettering                        Red Hat, Inc.
lennart [at] poettering [dot] net         ICQ# 11060553
http://0pointer.net/lennart/           GnuPG 0x1A015CC4

More information about the pulseaudio-discuss mailing list