summaryrefslogtreecommitdiff
path: root/package/dbus/init-dbus
diff options
context:
space:
mode:
Diffstat (limited to 'package/dbus/init-dbus')
-rwxr-xr-xpackage/dbus/init-dbus76
1 files changed, 76 insertions, 0 deletions
diff --git a/package/dbus/init-dbus b/package/dbus/init-dbus
new file mode 100755
index 000000000..bddb3b9dd
--- /dev/null
+++ b/package/dbus/init-dbus
@@ -0,0 +1,76 @@
+#!/bin/sh
+#
+# messagebus: The D-BUS systemwide message bus
+#
+# chkconfig: 345 97 03
+# description: This is a daemon which broadcasts notifications of system events \
+# and other messages. See http://www.freedesktop.org/software/dbus/
+#
+# processname: dbus-daemon
+# pidfile: /var/run/messagebus.pid
+#
+
+# Sanity checks.
+[ -x /usr/bin/dbus-daemon ] || exit 0
+
+# Create needed directories.
+[ -d /var/run/dbus ] || mkdir -p /var/run/dbus
+[ -d /var/lock/subsys ] || mkdir -p /var/lock/subsys
+
+RETVAL=0
+
+start() {
+ echo -n "Starting system message bus: "
+
+ dbus-daemon --system
+ RETVAL=$?
+ echo "done"
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dbus-daemon
+}
+
+stop() {
+ echo -n "Stopping system message bus: "
+
+ ## we don't want to kill all the per-user $processname, we want
+ ## to use the pid file *only*; because we use the fake nonexistent
+ ## program name "$servicename" that should be safe-ish
+ killall dbus-daemon
+ RETVAL=$?
+ echo "done"
+ if [ $RETVAL -eq 0 ]; then
+ rm -f /var/lock/subsys/dbus-daemon
+ rm -f /var/run/messagebus.pid
+ fi
+}
+
+# See how we were called.
+case "$1" in
+ start)
+ start
+ ;;
+ stop)
+ stop
+ ;;
+ status)
+ status $processname
+ RETVAL=$?
+ ;;
+ restart)
+ stop
+ start
+ ;;
+ condrestart)
+ if [ -f /var/lock/subsys/$servicename ]; then
+ stop
+ start
+ fi
+ ;;
+ reload)
+ echo "Message bus can't reload its configuration, you have to restart it"
+ RETVAL=$?
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
+ ;;
+esac
+exit $RETVAL