blob: 08cb5465333d36ee1af6acc3eb5f81baaf6bdc4b (
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: freevo
# REQUIRE: LOGIN
# KEYWORD: shutdown
# Uses the following /etc/rc.conf variables:
# freevo_enable="YES" master on/off
# freevo_recordserver_enable="YES" start freevo record server
# freevo_webserver_enable="YES" start freevo web server
# freevo_gui_enable="YES" start freevo GUI
. /etc/rc.subr
name=freevo
rcvar=freevo_enable
load_rc_config ${name}
: ${freevo_enable:="NO"}
: ${freevo_recordserver_enable:="NO"}
: ${freevo_webserver_enable:="NO"}
: ${freevo_gui_enable:="NO"}
freevo_user=${freevo_user:-"freevo"}
freevo_group=${freevo_group:-"freevo"}
freevo_uid=`pw usershow ${freevo_user} | awk -F: '{print $3}'`
freevo_dir=`pw usershow ${freevo_user} | awk -F: '{print $9}'`
command="%%PREFIX%%/bin/freevo"
command_interpreter="%%PYTHON_CMD%%"
# freevo needs PATH set so it can determine python version
export PATH=/bin:/usr/bin:%%PREFIX%%/bin:${freevo_dir}/bin
cd ${freevo_dir}
msg() {
case "${no_msg}" in
1) ;;
*) echo "$@" ;;
esac
}
freevo_start() {
[ ${freevo_recordserver_enable} = "YES" ] && su ${freevo_user} -c "${command} --daemon recordserver" && msg Starting freevo recordserver.
[ ${freevo_webserver_enable} = "YES" ] && su ${freevo_user} -c "${command} --daemon webserver" && msg Starting freevo webserver.
[ ${freevo_gui_enable} = "YES" ] && su ${freevo_user} -c "${command} --daemon" && msg Starting freevo GUI.
}
freevo_stop() {
[ ${freevo_gui_enable} = "YES" ] && su ${freevo_user} -c "${command} --stop" && msg Stopping freevo GUI.
[ ${freevo_webserver_enable} = "YES" ] && su ${freevo_user} -c "${command} --stop webserver" && msg Stopping freevo webserver.
[ ${freevo_recordserver_enable} = "YES" ] && su ${freevo_user} -c "${command} --stop recordserver" && msg Stopping freevo recordserver.
}
case "$1" in
start|faststart|onestart)
freevo_start
;;
quietstart)
no_msg=1
freevo_start
;;
stop|faststop|onestop)
freevo_stop
;;
quietstop)
no_msg=1
freevo_stop
;;
restart)
freevo_stop
freevo_start
;;
esac
|