#!/bin/sh /etc/rc.common
START=97
STOP=99

USE_PROCD=1
PROG=/mnt/UDISK/valetudo
OOM_ADJ=-17

_fix_timezone() {
	zonename="$(/sbin/uci get 'system.@system[0].zonename')"
	timezone="$(/sbin/uci get 'system.@system[0].timezone')"
	changed=0

	# Force system timezone to UTC instead of Shanghai
	[ "$zonename" != "UTC" ] && /sbin/uci set 'system.@system[0].zonename=UTC' && changed=1
	[ "$timezone" != "UTC" ] && /sbin/uci set 'system.@system[0].timezone=UTC' && changed=1

	# Remove Chinese NTP servers
	if /sbin/uci get 'system.ntp.server' | grep -q 'aliyun.com'; then
		/sbin/uci -q delete 'system.ntp.server'
		/sbin/uci add_list 'system.ntp.server=0.pool.ntp.org'
		/sbin/uci add_list 'system.ntp.server=1.pool.ntp.org'
		/sbin/uci add_list 'system.ntp.server=2.pool.ntp.org'
		/sbin/uci add_list 'system.ntp.server=3.pool.ntp.org'
		changed=1
	fi

	if [ $changed != 0 ]; then
		/sbin/uci commit system
		/etc/init.d/sysntpd restart
	fi
}

start_service() {
	_fix_timezone

	procd_open_instance
	procd_set_param env VALETUDO_CONFIG_PATH=/mnt/UDISK/valetudo_config.json VALETUDO_SSH_AUTHORIZED_KEYS_LOCATION=/etc/dropbear/authorized_keys
	procd_set_param oom_adj $OOM_ADJ
	procd_set_param command $PROG
	procd_set_param stdout 1 # forward stdout of the command to logd
	procd_set_param stderr 1 # same for stderr
	procd_close_instance
}

shutdown() {
	echo shutdown
}
