forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
mythbackend.init-r2
72 lines (61 loc) · 2 KB
/
mythbackend.init-r2
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/sbin/openrc-run
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
description="MythTV backend recording daemon"
extra_started_commands="resched upnprebuild"
description_resched="Forces the recording scheduler to update"
description_upnprebuild="Rebuilds the UPnP media cache"
MYTHBACKEND_OPTS=${MYTHBACKEND_OPTS:-"${MYTHBACKEND_OPTS}"}
MYTHBACKEND_VERBOSE=${MYTHBACKEND_VERBOSE:-"general"}
MYTHBACKEND_LOGGING=${MYTHBACKEND_LOGGING:-"files"}
name="MythTV backend"
command="/usr/bin/mythbackend"
pidfile="/run/mythtv/mythbackend.pid"
start_stop_daemon_args="--pidfile ${pidfile} --user mythtv:video"
command_args="--daemon --pidfile ${pidfile} --verbose ${MYTHBACKEND_VERBOSE} ${MYTHBACKEND_OPTS}"
depend() {
# mythbackend doesn't need to run on the same machine that
# mysql runs on. so its use for that reason
use logger net.lo mysql LCDd
}
start_pre() {
case "${MYTHBACKEND_LOGGING}" in
database) logging="--enable-dblog" ;;
syslog\ *) logging="--${MYTHBACKEND_LOGGING}" ;;
files) logging="--logpath /var/log/mythtv" ;;
console) logging="--nologserver" ;;
*)
eerror "Invalid MYTHBACKEND_LOGGING value"
exit 1
;;
esac
#fixes for bug #101308
unset DISPLAY
unset SESSION_MANAGER
# Work around any strange permissions that may be on these files.
[ "x${MYTHBACKEND_LOGGING}" = "xfiles" ] && \
checkpath --directory --owner mythtv:video --mode 0755 /var/log/mythtv
checkpath --directory --owner mythtv:video --mode 0775 /home/mythtv
checkpath --directory --owner mythtv:video --mode 0750 /run/mythtv
}
start() {
ebegin "Starting ${name}"
start-stop-daemon --start ${start_stop_daemon_args} --exec ${command} \
-- ${command_args} ${logging}
eend $?
}
stop() {
ebegin "Stopping ${name}"
start-stop-daemon --stop --retry 10 --progress --pidfile ${pidfile}
eend $?
}
resched() {
ebegin "Updating the recording scheduler"
${command} --resched
eend $?
}
upnprebuild() {
ebegin "Rebuilding UPnP media cache"
${command} --upnprebuild
eend $?
}