#!/bin/sh /etc/rc.common # Tachyon-managed AdGuard Home service. The configuration file is generated # from /etc/config/tachyon by providers/adguard/runtime.uc; do not edit the # YAML by hand, it is overwritten on every reconfigure. USE_PROCD=1 START=98 STOP=20 PROG=/usr/bin/AdGuardHome WORK_DIR=/etc/adguard CONFIG=$WORK_DIR/AdGuardHome.yaml PID_FILE=/var/run/tachyon/adguard/adguard.pid start_service() { [ -x "$PROG" ] || return 0 [ -f "$CONFIG" ] || return 0 mkdir -p "$WORK_DIR" /var/run/tachyon/adguard procd_open_instance procd_set_param command "$PROG" -c "$CONFIG" -w "$WORK_DIR" --pidfile "$PID_FILE" --no-check-update procd_set_param file "$CONFIG" procd_set_param respawn procd_set_param stdout 1 procd_set_param stderr 1 procd_close_instance } stop_service() { [ -f "$PID_FILE" ] || return 0 local pid pid="$(cat "$PID_FILE" 2>/dev/null)" [ -n "$pid" ] && kill "$pid" 2>/dev/null rm -f "$PID_FILE" }