LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   What starts per-login-session dbus in Slackware? (http://www.linuxquestions.org/questions/slackware-14/what-starts-per-login-session-dbus-in-slackware-4175457542/)

average_user 04-09-2013 03:42 PM

What starts per-login-session dbus in Slackware?
 
My system starts in tty and I enter my WM of choice which is Fluxbox with `startx' command. I wonder what exactly starts the following processes:

Quote:

/usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
dbus-launch --autolaunch cf692cb5aa40a08ac04f9cc700000020 --binary-syntax --close-stderr
I am asking because there is no dbus-launch command in /etc/X11/xinit/xinitrc.fluxbox, /usr/bin/startfluxbox, ~/.xinitrc, ~/.xsession. There is only

Quote:

exec ck-launch-session /usr/bin/startfluxbox
in /etc/X11/xinit/xinitrc.fluxbox. There is also a second dbus instance:

Quote:

/usr/bin/dbus-daemon --system
but here situation is clear - it is started by /etc/rc.d/rc.messagebus and runs also in tty.

GazL 04-10-2013 08:14 AM

On recent versions of slackware, xinitrc will generally use ck-launch-session to run a 'start' script. That script will then start the user specific dbus session/daemons in addition to the window manager. In the case of fluxbox, dbus is started in /usr/bin/startfluxbox.

If your xinitrc and start script don't follow this scheme, then chances are you're looking at scripts from an older version of Slackware.

average_user 04-10-2013 01:23 PM

Interesting, I am using Slackware 13.37 x64. There is no mention of dbus in my /usr/bin/startfluxbox:

Quote:

#!/bin/sh

command="`basename \"$0\"`"
fluxdir="$HOME/.fluxbox"
startup="$fluxdir/startup"

while [ $# -gt 0 ]; do
case "$1" in
-c|--config)
if [ $# -lt 2 ]; then
echo "$command:error, missing argument"
exit 1
fi
shift
startup=$1
;;
-h|--help) cat <<EOF
Usage: $command [-h] [-c startupfile]
EOF
exit
;;
esac
shift
done

if [ -x "$startup" ]; then
exec "$startup"
elif [ -r "$startup" ]; then
exec sh "$startup"
else
if [ ! -d $fluxdir ]; then
mkdir -p "$fluxdir/backgrounds" "$fluxdir/styles" "$fluxdir/pixmaps"
fi
if [ ! -r "$startup" ]; then
( cat << EOF
#!/bin/sh
#
# fluxbox startup-script:
#
# Lines starting with a '#' are ignored.

# Change your keymap:
xmodmap "$HOME/.Xmodmap"

# Applications you want to run with fluxbox.
# MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN ''&'' AT THE END.
#
# unclutter -idle 2 &
# wmnd &
# wmsmixer -w &
# idesk &

# And last but not least we start fluxbox.
# Because it is the last app you have to run it with ''exec'' before it.

exec fluxbox
# or if you want to keep a log:
# exec fluxbox -log "$fluxdir/log"
EOF
) > "$startup"
fi
chmod 644 "$startup"
exec sh "$startup"
fi
No sign of dbus in my whole /etc/X11/ directory, there is only one file but it's KDE startup script:

Quote:

find . -type f -print0 | "xargs" -0 -e grep -inH -e "dbus"
./xinit/xinitrc.kde~:35:exec dbus-launch --exit-with-session ck-launch-session startxfce4
Also nothing in ~/.fluxbox/. But I finally hunted it down - it was .dropbox-dist/dropboxd in my ~/.xinitrc that starts dbus user session. When I removed dropboxd line from this script, only system-wide dbus was started after X restart.

Thx for help.


All times are GMT -5. The time now is 06:57 PM.