summaryrefslogtreecommitdiffstats
path: root/utils/tang/files/tang.init
blob: c87197b37a2946e1924ee8ab92c422cb6de8580a (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
#!/bin/sh /etc/rc.common

START=50
USE_PROCD=1

start_service() {
	KEYS=$(find /usr/share/tang/db -name "*.jw*" -maxdepth 1 2>/dev/null | wc -l)
	if [ -z "${KEYS}" ] || [ "${KEYS}" = "0" ]; then # if db is empty generate new key pair
		mkdir -p /usr/share/tang/db
		/usr/sbin/tangd-keygen /usr/share/tang/db
		chown -R tang /usr/share/tang/db
	fi

	config_load "tang"
	config_get_bool enabled "config" "enabled" 0
	config_get port "config" "port" "9090"

	[ "${enabled}" = "1" ] || return

	procd_open_instance
	procd_set_param command /usr/sbin/tangd -p "${port}" -l /usr/share/tang/db
	procd_set_param respawn
	procd_set_param user tang
	procd_set_param stderr 1
	procd_set_param stdout 1
	procd_close_instance
}