.\" .\" dbus-launch manual page. .\" Copyright (C) 2003 Red Hat, Inc. .\" .TH dbus-launch 1 .SH NAME dbus-launch \- Utility to start a message bus from a shell script .SH SYNOPSIS .PP .B dbus-launch [\-\-version] [\-\-sh-syntax] [\-\-csh-syntax] [\-\-auto-syntax] [\-\-exit-with-session] [\-\-config-file=FILENAME] [PROGRAM] [ARGS...] .SH DESCRIPTION The \fIdbus-launch\fP command is used to start \fIdbus-daemon\fP from a shell script. It would normally be called from a user's login scripts. Unlike the daemon itself, \fIdbus-launch\fP exits, so backticks or the $() construct can be used to read information from \fIdbus-launch\fP. With no arguments, \fIdbus-launch\fP will simply print the values of DBUS_SESSION_BUS_ADDRESS and DBUS_SESSION_BUS_PID. You may specify a program to be run; in this case, \fIdbus-launch\fP will then set the appropriate environment variables and execute the specified program, with the specified arguments. See below for examples. Finally, you may use the \-\-sh-syntax, \-\-csh-syntax, or \-\-auto-syntax commands to cause \fIdbus-launch\fP to emit shell code to set up the environment. This is useful in shell scripts. With the \-\-auto-syntax option, \fIdbus-launch\fP looks at the value of the SHELL environment variable to determine which shell syntax should be used. If SHELL ends in "csh", then csh-compatible code is emitted; otherwise Bourne shell code is emitted. Instead of passing \-\-auto-syntax, you may explicity specify a particular one by using \-\-sh-syntax for Bourne syntax, or \-\-csh-syntax for csh syntax. In scripts, it's more robust to avoid \-\-auto-syntax and you hopefully know which shell your script is written in. .PP See http://www.freedesktop.org/software/dbus/ for more information about D-BUS. See also the man page for \fIdbus-daemon\fP. .PP Here is an example of how to use \fIdbus-launch\fP with an sh-compatible shell to start the per-session bus daemon: .nf ## test for an existing bus daemon, just to be safe if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then ## if not found, launch a new one eval `dbus-launch --sh-syntax --exit-with-session` echo "D-BUS per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS" fi .fi You might run something like that in your login scripts. .PP Another way to use \fIdbus-launch\fP is to run your main session program, like so: .nf dbus-launch gnome-session .fi The above would likely be appropriate for ~/.xsession or ~/.Xclients. .SH OPTIONS The following options are supported: .TP .I "--auto-syntax" Choose \-\-csh-syntax or \-\-sh-syntax based on the SHELL environment variable. .TP .I "--config-file=FILENAME" Pass \-\-config-file=FILENAME to the bus daemon, instead of passing it the \-\-session argument. See the man page for dbus-daemon .TP .I "--csh-syntax" Emit csh compatible code to set up environment variables. .TP .I "--exit-with-session" If this option is provided, a persistent "babysitter" process will be created that watches stdin for HUP and tries to connect to the X server. If this process gets a HUP on stdin or loses its X connection, it kills the message bus daemon. .TP .I "--sh-syntax" Emit Bourne-shell compatible code to set up environment variables. .TP .I "--version" Print the version of dbus-launch .SH AUTHOR See http://www.freedesktop.org/software/dbus/doc/AUTHORS .SH BUGS Please send bug reports to the D-BUS mailing list or bug tracker, see http://www.freedesktop.org/software/dbus/