summaryrefslogtreecommitdiffstats
path: root/main/dbus/dbus.initd
blob: 65271f69c6b42edcfc7e1c2fa6090b14217fc55c (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
#!/sbin/runscript
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2 or later
# $Header: /var/cvsroot/gentoo-x86/sys-apps/dbus/files/dbus.initd,v 1.1 2011/11/05 13:56:10 ssuominen Exp $

extra_started_commands="reload"

depend() {
	need localmount
	after bootmisc
}

start() {
	ebegin "Starting D-BUS system messagebus"
	/usr/bin/dbus-uuidgen --ensure=/etc/machine-id

	# We need to test if /var/run/dbus exists, since script will fail if it does not
	[ ! -e /var/run/dbus ] && mkdir /var/run/dbus 

	start-stop-daemon --start --pidfile /var/run/dbus.pid --exec /usr/bin/dbus-daemon -- --system
	eend $?
}

stop() {
	local retval

	ebegin "Stopping D-BUS system messagebus"

	start-stop-daemon --stop --pidfile /var/run/dbus.pid
	retval=$?

	eend ${retval}

	[ -S /var/run/dbus/system_bus_socket ] && rm -f /var/run/dbus/system_bus_socket

	return ${retval}
}

reload() {
	local retval

	ebegin "Reloading D-BUS messagebus config"
	
	/usr/bin/dbus-send --print-reply --system --type=method_call \
			--dest=org.freedesktop.DBus \
			/ org.freedesktop.DBus.ReloadConfig > /dev/null
	retval=$?
	eend ${retval}
	return ${retval}
}