Merge pull request #4147 from diizzyy/patch-35
[feed/packages.git] / utils / domoticz / files / domoticz.init
1 #!/bin/sh /etc/rc.common
2
3 START=99
4 USE_PROCD=1
5 PROG=/usr/bin/domoticz
6 PIDFILE=/var/run/domoticz.pid
7
8 start_domoticz() {
9 local section="$1"
10 local loglevel sslcert sslpass sslwww syslog userdata
11
12 config_get loglevel "$section" "loglevel"
13 config_get sslcert "$section" "sslcert"
14 config_get sslkey "$section" "sslkey"
15 config_get sslpass "$section" "sslpass"
16 config_get sslwww "$section" "sslwww"
17 config_get syslog "$section" "syslog"
18 config_get userdata "$section" "userdata"
19
20 [ -n "$loglevel" ] && procd_append_param command -loglevel "$loglevel"
21 [ -n "$syslog" ] && procd_append_param command -syslog "$syslog"
22 [ -n "$userdata" ] && procd_append_param command -userdata "$userdata"
23 [ -n "$sslcert" -a "${sslwww:-0}" -gt 0 ] && {
24 procd_append_param command -sslcert "$sslcert"
25 procd_append_param command -sslwww "$sslwww"
26 [ -n "$sslkey" ] && procd_append_param command -sslkey "$sslkey"
27 [ -n "$sslpass" ] && procd_append_param command -sslpass "$sslpass"
28 } || procd_append_param command -sslwww 0
29 }
30
31 start_service() {
32 mkdir -p /var/lib/domoticz
33 chmod 0770 /var/lib/domoticz
34 chown domoticz:domoticz /var/lib/domoticz
35
36 procd_open_instance
37
38 procd_set_param command "$PROG"
39 procd_append_param command -scripts /usr/share/domoticz/scripts/
40 procd_append_param command -wwwroot /usr/share/domoticz/www/
41
42 config_load "domoticz"
43 config_get_bool disabled "$section" "disabled" 0
44 [ "$disabled" -gt 0 ] && return 1
45 config_foreach start_domoticz domoticz
46
47 procd_set_param pidfile "$PIDFILE"
48 procd_set_param respawn
49 procd_set_param stdout 0
50 procd_set_param term_timeout 10
51 procd_set_param user "domoticz"
52
53 procd_close_instance
54 }