summaryrefslogtreecommitdiff
path: root/core/dbus-core/dbus
blob: bf532a2744540a2cfc6daaf2f1b89170e905bfa1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/bin/bash

# general config
. /etc/rc.conf
. /etc/rc.d/functions

case $1 in
    start)
        stat_busy "Starting D-BUS system messagebus"
        if [[ ! -d /run/dbus ]] ; then
            install -m755 -g 81 -o 81 -d /run/dbus
        fi

        if ! dbus-daemon --system; then
            stat_fail
        else
            add_daemon dbus
            stat_done
        fi
        ;;
    stop)
        stat_busy "Stopping D-BUS system messagebus"
        if ! { [[ -f /run/dbus/pid ]] && kill $(</run/dbus/pid); }; then
            stat_fail
        else
            rm -f /run/dbus/pid
            rm_daemon dbus
            stat_done
        fi
        ;;
    restart)
        $0 stop
        sleep 1
        $0 start
        ;;
    reload)
        stat_busy "Reloading D-BUS configuration"
        if ! { [[ -f /run/dbus/pid ]] && dbus-send \
                --system --type=method_call \
                --dest=org.freedesktop.DBus \
                / org.freedesktop.DBus.ReloadConfig; }; then
            stat_fail
        else
            stat_done
        fi
        ;;
    *)
        echo "usage: $0 {start|stop|restart|reload}"
        ;;
esac
exit 0