What program starts the per user session dbus-daemon process in GNOME 2 and GNOME 3 (presumably via dbus-launch)? I would like to know because I would like to add a directory to the list of directories that dbus-daemon checks for .service files.
(Obviously if it's a sh program, "sh" isn't the answer I'm looking for ;-)
How could I have answered this question for myself efficiently? What documentation is there on desktop and session startup?
The login manager starts dbus via the Xsession scripts directory. If the
use-session-dbus
option is set for the Xsession, then the dbus Xsession script is loaded, and it runsdbus-launch --exit-with-session $session_command
.Starting of the majority of tasks and services during boot including Dbus daemon is handled by Upstart.
Dbus daemon is not started per user session but on mounting the last local filesystem. Upstart job configuration handling starting/stopping/monitoring of Dbus daemon can be found in
/etc/init/dbus.conf
.You can use user job to start Hamster on graphical login.
I will disagree with dobey. The best thing to do is to learn how to find it for yourself.
List all processes and their PID tree structure:
So dbus-daemon is started by
init
. However notice that there is more than one dbus-daemon running.There are namely (at least) two instances of dbus-daemon running. One is started by init and it's system wide and the other is started for the user when he logged in. Watching the full PID tree structure (with
pstree
) you can visually locate exactly which process started the second instance.