install_easy : ask MODE and GETLIST

This commit is contained in:
bolvan 2019-05-07 13:20:31 +03:00
parent db5b2c2d39
commit 653887b94a
5 changed files with 87 additions and 24 deletions

View File

@ -78,7 +78,7 @@ start_service() {
* Завертывание соединений через iptables * Завертывание соединений через iptables
--- /etc/firewall.user ----- --- /etc/firewall.user -----
SOXIFIER_PORT=1099 SOXIFIER_PORT=1099
ipt() ipt()

View File

@ -470,8 +470,7 @@ tpws без ipset использует всего лишь DNAT, который
---------------------------- ----------------------------
Работает только если у вас на роутере достаточно много места. Работает только если у вас на роутере достаточно много места.
Схема примерно такая же, как и на десктопе. Помещаем на роутер /opt/zapret, Схема примерно такая же, как и на десктопе. Помещаем на роутер /opt/zapret, запускаем install_easy.sh
выполняем раздел "Выбор параметров", запускаем install_easy.sh
Если места достаточно, можно прямо на роутер установить git и скачать с github : Если места достаточно, можно прямо на роутер установить git и скачать с github :
@ -495,6 +494,7 @@ binaries/<ваша архитектура>/{tpws,nfqws,ip2net,mdig}
Если вы закачаете zapret не в /opt/zapret, а, например, в /tmp, и запустите install_easy.sh оттуда, Если вы закачаете zapret не в /opt/zapret, а, например, в /tmp, и запустите install_easy.sh оттуда,
то инсталятор сам скопирует только необходимый минимум в /opt/zapret. то инсталятор сам скопирует только необходимый минимум в /opt/zapret.
Для более гибкой настройки перед запуском инсталятора следует выполнить раздел "Выбор параметров".
Другие прошивки Другие прошивки
--------------- ---------------

View File

@ -118,7 +118,7 @@ run_daemon()
PID=$(jobs -p %$JOBCT) PID=$(jobs -p %$JOBCT)
if [ -n "$PID" ]; then if [ -n "$PID" ]; then
echo $PID >$PIDFILE echo $PID >$PIDFILE
let JOBCT=$JOBCT+1 JOBCT=`expr $JOBCT + 1`
else else
echo could not start daemon $1 : $2 $3 echo could not start daemon $1 : $2 $3
fi fi

View File

@ -81,6 +81,10 @@ call_install_bin()
exitp 8 exitp 8
} }
} }
get_bin_arch()
{
call_install_bin getarch
}
install_binaries() install_binaries()
{ {
@ -89,11 +93,68 @@ install_binaries()
call_install_bin call_install_bin
} }
get_bin_arch() ask_list()
{ {
call_install_bin getarch # $1 - mode var
# $2 - space separated value list
eval M_DEFAULT="\$$1"
M=""
n=1
for m in $2; do
echo $n : $m
n=`expr $n + 1`
done
echo -n "your choice (default : $M_DEFAULT) : "
read m
[ -n "$m" ] && M=$(echo $2 | cut -d ' ' -f$m 2>/dev/null)
[ -z "$M" ] && M=$M_DEFAULT
echo selected : $M
eval $1=$M
[ "$M" != "$M_DEFAULT" ]
} }
write_config_var()
{
# $1 - mode var
eval M="\$$1"
if [ -n "$M" ]; then
sed -ri "s/^#?$1=.*$/$1=$M/" $EXEDIR/config
else
# write with comment at the beginning
sed -ri "s/^#?$1=.*$/#$1=$M/" $EXEDIR/config
fi
}
select_mode()
{
echo select MODE :
ask_list MODE "tpws_ipset tpws_ipset_https tpws_all tpws_all_https tpws_hostlist nfqws_ipset nfqws_ipset_https nfqws_all nfqws_all_https ipset" && write_config_var MODE
}
select_getlist()
{
if [ "${MODE%hostlist*}" != "$MODE" ] || [ "${MODE%ipset*}" != "$MODE" ]; then
echo -n "do you want to auto download ip/host list (Y/N) ? "
read A
if [ "$A" != 'N' ] && [ "$A" != 'n' ]; then
if [ "${MODE%hostlist*}" != "$MODE" ] ; then
GETLISTS="get_hostlist.sh"
else
GETLISTS="get_user.sh get_antizapret.sh get_combined.sh get_reestr.sh"
fi
ask_list GETLIST "$GETLISTS" && write_config_var GETLIST
return
fi
fi
GETLIST=""
write_config_var GETLIST
}
ask_config()
{
select_mode
select_getlist
}
copy_all() copy_all()
{ {
@ -297,6 +358,7 @@ install_systemd()
check_preprequisites_linux check_preprequisites_linux
service_stop_systemd service_stop_systemd
install_binaries install_binaries
ask_config
install_sysv_init install_sysv_init
register_sysv_init_systemd register_sysv_init_systemd
download_list download_list
@ -355,14 +417,14 @@ openwrt_fw_section_find()
i=0 i=0
while true while true
do do
path=$(uci -q get firewall.@include[$i].path) path=$(uci -q get firewall.@include[$i].path)
[ -n "$path" ] || break [ -n "$path" ] || break
[ "$path" == "$OPENWRT_FW_INCLUDE" ] && { [ "$path" == "$OPENWRT_FW_INCLUDE" ] && {
echo $i echo $i
true true
return return
} }
let i=i+1 i=`expr $i + 1`
done done
false false
return return
@ -458,6 +520,7 @@ install_openwrt()
check_location copy_minimal check_location copy_minimal
check_preprequisites_openwrt check_preprequisites_openwrt
install_binaries install_binaries
ask_config
install_sysv_init install_sysv_init
register_sysv_init register_sysv_init
download_list download_list

View File

@ -128,14 +128,14 @@ openwrt_fw_section_find()
i=0 i=0
while true while true
do do
path=$(uci -q get firewall.@include[$i].path) path=$(uci -q get firewall.@include[$i].path)
[ -n "$path" ] || break [ -n "$path" ] || break
[ "$path" == "$OPENWRT_FW_INCLUDE" ] && { [ "$path" == "$OPENWRT_FW_INCLUDE" ] && {
echo $i echo $i
true true
return return
} }
let i=i+1 i=`expr $i + 1`
done done
false false
return return