blob: ec2042522ec45bc8d0da6c6a25082c24f97211d5 (
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
|
#!/bin/sh
# PROVIDE: thelounge
# REQUIRE: NETWORKING
# KEYWORD: shutdown
. /etc/rc.subr
name="thelounge"
rcvar="thelounge_enable"
load_rc_config "${name}"
: ${thelounge_enable:="NO"}
: ${thelounge_user:="www"}
: ${thelounge_group:="www"}
: ${thelounge_data_dir:="/var/db/thelounge"}
: ${thelounge_log_file:="/var/log/thelounge.log"}
pidfile="/var/run/${name}.pid"
start_cmd="${name}_start"
stop_cmd="${name}_stop"
status_cmd="${name}_status"
thelounge_start()
{
if [ -f "${pidfile}" ] && kill -0 $(cat "${pidfile}") 2>/dev/null; then
echo "${name} is already running."
return 1
fi
install -d -o "${thelounge_user}" -g "${thelounge_group}" -m 0750 \
"${thelounge_data_dir}" || return 1
if [ ! -e "${thelounge_log_file}" ]; then
install -o "${thelounge_user}" -g "${thelounge_group}" -m 0640 \
/dev/null "${thelounge_log_file}" || return 1
fi
echo "Starting ${name}."
/usr/sbin/daemon \
-f \
-p "${pidfile}" \
-o "${thelounge_log_file}" \
-u "${thelounge_user}" \
/usr/bin/env \
PATH="%%PREFIX%%/bin:/usr/bin:/bin" \
THELOUNGE_HOME="${thelounge_data_dir}" \
%%PREFIX%%/bin/node %%PREFIX%%/libexec/thelounge/index.js start
}
thelounge_stop()
{
if [ -f "${pidfile}" ]; then
echo "Stopping ${name}."
kill $(cat "${pidfile}") 2>/dev/null
rm -f "${pidfile}"
else
echo "${name} is not running."
fi
}
thelounge_status()
{
if [ -f "${pidfile}" ] && kill -0 $(cat "${pidfile}") 2>/dev/null; then
echo "${name} is running as pid $(cat "${pidfile}")."
else
rm -f "${pidfile}"
echo "${name} is not running."
return 1
fi
}
run_rc_command "$1"
|