aboutsummaryrefslogtreecommitdiff
path: root/sound/pianod/files/pianod.init
blob: b232944e58a242e5eb849ac97522a4bda0650aed (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
#!/bin/sh /etc/rc.common
# Copyright (C) 2015 OpenWrt.org

NAME=pianod
START=95

USE_PROCD=1

PD_USER=$NAME
PD_STARTSCRIPT=/etc/$NAME/startscript
PD_PASSWDFILE=/etc/$NAME/users
PD_WEBUI=/www/$NAME

start_service() {
	# Take group ownership of audio devices
	chown root:$NAME /dev/snd/* /dev/mixer /dev/dsp
	chmod 664 /dev/snd/* /dev/mixer /dev/dsp

	procd_open_instance

	procd_set_param command "/usr/bin/$NAME"

	procd_append_param command -n $PD_USER
	procd_append_param command -i "$PD_STARTSCRIPT"
	procd_append_param command -u "$PD_PASSWDFILE"
	[ -d "$PD_WEBUI" ] && procd_append_param command -c "$PD_WEBUI"
	# No HTTPS support without certificates
	procd_append_param command -s 0

	procd_close_instance
}

# Wait for service to exit and release sockets
reload_service() {
	stop
	sleep 2
	start
}

restart() {
	reload_service
}