#!/bin/sh /etc/rc.common
START=99
STOP=10
USE_PROCD=1

start_service() {
    config_load localtonet
    local enabled token_file
    config_get_bool enabled main enabled 0
    [ "$enabled" = 1 ] || return 0
    config_get token_file main token_file /etc/localtonet/auth-token
    [ -s "$token_file" ] || { logger -t localtonet 'AuthToken file missing'; return 1; }
    mkdir -p /tmp/localtonet/bundle
    chmod 700 /tmp/localtonet /tmp/localtonet/bundle
    procd_open_instance
    procd_set_param command /usr/bin/localtonet --headless --authtoken-file "$token_file"
    procd_set_param env HOME=/tmp/localtonet TMPDIR=/tmp/localtonet DOTNET_BUNDLE_EXTRACT_BASE_DIR=/tmp/localtonet/bundle
    procd_set_param file /etc/config/localtonet "$token_file"
    procd_set_param respawn 3600 10 3
    procd_set_param term_timeout 30
    procd_set_param stdout 1
    procd_set_param stderr 1
    procd_close_instance
}

service_triggers() {
    procd_add_reload_trigger localtonet
}
