From 468d293b4667aecefe079ac13b3b10466358bcb2 Mon Sep 17 00:00:00 2001 From: bol-van Date: Thu, 29 May 2025 18:59:24 +0300 Subject: [PATCH] install_easy: run daemon test under proper user --- common/installer.sh | 11 ++++++++--- install_easy.sh | 21 +++++++++++---------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/common/installer.sh b/common/installer.sh index e522bfb4..cec2284c 100644 --- a/common/installer.sh +++ b/common/installer.sh @@ -187,7 +187,7 @@ check_system() SYSTEM= SUBSYS= - SYSTEMCTL=$(whichq systemctl) + SYSTEMCTL="$(whichq systemctl)" get_fwtype OPENWRT_FW3= @@ -203,6 +203,7 @@ check_system() # some distros include systemctl without systemd if [ -d "$SYSTEMD_DIR" ] && [ -x "$SYSTEMCTL" ] && [ "$INIT" = "systemd" ]; then SYSTEM=systemd + [ -f "$EXEDIR/init.d/sysv/functions" ] && . "$EXEDIR/init.d/sysv/functions" elif [ -f "/etc/openwrt_release" ] && exists opkg || exists apk && exists uci && [ "$INIT" = "procd" ] ; then SYSTEM=openwrt OPENWRT_PACKAGER=opkg @@ -226,8 +227,10 @@ check_system() OPENWRT_FW4=1 info="${info}firewall fw4. flow offloading requires nftables." fi + [ -f "$EXEDIR/init.d/openwrt/functions" ] && . "$EXEDIR/init.d/openwrt/functions" elif openrc_test; then SYSTEM=openrc + [ -f "$EXEDIR/init.d/sysv/functions" ] && . "$EXEDIR/init.d/sysv/functions" else echo system is not either systemd, openrc or openwrt based echo easy installer can set up config settings but can\'t configure auto start @@ -237,10 +240,12 @@ check_system() else exitp 5 fi + [ -f "$EXEDIR/init.d/sysv/functions" ] && . "$EXEDIR/init.d/sysv/functions" fi linux_get_subsys elif [ "$UNAME" = "Darwin" ]; then SYSTEM=macos + [ -f "$EXEDIR/init.d/macos/functions" ] && . "$EXEDIR/init.d/macos/functions" else echo easy installer only supports Linux and MacOS. check readme.md for supported systems and manual setup info. exitp 5 @@ -834,13 +839,13 @@ dry_run_tpws_() { local TPWS="$ZAPRET_BASE/tpws/tpws" echo verifying tpws options - "$TPWS" --dry-run "$@" + "$TPWS" --dry-run --user=$WS_USER "$@" } dry_run_nfqws_() { local NFQWS="$ZAPRET_BASE/nfq/nfqws" echo verifying nfqws options - "$NFQWS" --dry-run "$@" + "$NFQWS" --dry-run --user=$WS_USER "$@" } dry_run_tpws() { diff --git a/install_easy.sh b/install_easy.sh index 422a397a..53a907f2 100755 --- a/install_easy.sh +++ b/install_easy.sh @@ -53,21 +53,24 @@ check_readonly_system() check_source() { local bad=0 + echo \* checking source files - case $SYSTEM in + case $SYSTEM in systemd) [ -f "$EXEDIR/init.d/systemd/zapret.service" ] || bad=1 ;; openrc) [ -f "$EXEDIR/init.d/openrc/zapret" ] || bad=1 ;; - *) - esac - [ "$bad" = 1 ] && { - echo 'some critical files are missing' - echo 'are you sure you are not using embedded release ? you need full version for traditional linux' - exitp 5 - } + macos) + [ -f "$EXEDIR/init.d/macos/zapret" ] || bad=1 + ;; + esac + [ "$bad" = 1 ] && { + echo 'some critical files are missing' + echo 'are you sure you are not using embedded release ? you need full version for traditional linux' + exitp 5 + } } check_bins() @@ -905,8 +908,6 @@ fsleep_setup check_system check_source -[ "$SYSTEM" = "macos" ] && . "$EXEDIR/init.d/macos/functions" - case $SYSTEM in systemd) install_systemd