mirror of
https://github.com/Snowy-Fluffy/zapret.installer.git
synced 2026-03-01 11:21:59 +03:00
new ver + add option to install via git + game mode support + still todo check configurations + still todo add zapret2 support
This commit is contained in:
2
LICENSE
2
LICENSE
@@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
zapret.installer Copyright (C) 2026 Snowy-Fluffy
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
@@ -111,6 +111,30 @@ cur_list() {
|
||||
done
|
||||
fi
|
||||
}
|
||||
game_mode_check() {
|
||||
if [ ! -f "/opt/zapret/ipset/ipset-game.txt" ]; then
|
||||
touch /opt/zapret/ipset/ipset-game.txt || error_exit "не удалось создать ipset для игрвого режима"
|
||||
fi
|
||||
|
||||
if grep -q "^0\.0\.0\.0/0$" /opt/zapret/ipset/ipset-game.txt; then
|
||||
game_mode_status="включен"
|
||||
else
|
||||
game_mode_status="выключен"
|
||||
fi
|
||||
}
|
||||
|
||||
toggle_game_mode() {
|
||||
game_mode_check
|
||||
|
||||
if [[ $game_mode_status == "включен" ]]; then
|
||||
rm -f /opt/zapret/ipset/ipset-game.txt
|
||||
touch /opt/zapret/ipset/ipset-game.txt || error_exit "не удалось создать ipset для игрвого режима"
|
||||
else
|
||||
echo "0.0.0.0/0" >> /opt/zapret/ipset/ipset-game.txt
|
||||
fi
|
||||
manage_service restart
|
||||
sleep 2
|
||||
}
|
||||
|
||||
configure_zapret_conf() {
|
||||
if [[ ! -d /opt/zapret/zapret.cfgs ]]; then
|
||||
|
||||
113
files/install.sh
113
files/install.sh
@@ -31,7 +31,7 @@ get_latest_version() {
|
||||
# fi
|
||||
#
|
||||
#}
|
||||
download_zapret()
|
||||
download_zapret_release()
|
||||
{
|
||||
|
||||
rm -rf /opt/zapret
|
||||
@@ -56,14 +56,23 @@ download_zapret()
|
||||
mv /opt/zapret-v$(get_latest_version) /opt/zapret
|
||||
get_latest_version > /opt/zapret-ver
|
||||
echo "Клонирую репозиторий конфигураций..."
|
||||
git clone https://github.com/Snowy-Fluffy/zapret.cfgs /opt/zapret/zapret.cfgs
|
||||
git clone https://github.com/Snowy-Fluffy/zapret.cfgs /opt/zapret/zapret.cfgs || error_exit "не удалось получить репозиторий конфигураций. Вероятно это сетевая ошибка, попробуйте снова."
|
||||
echo "Клонирование успешно завершено."
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
download_zapret_git() {
|
||||
rm -rf /opt/zapret
|
||||
rm -rf /opt/zapret-v$(get_latest_version)
|
||||
echo "Клонирую репозиторий bol-van/zapret..."
|
||||
git clone https://github.com/bol-van/zapret /opt/zapret || error_exit "не удалось получить запрет. Вероятно это сетевая ошибка, попробуйте снова."
|
||||
echo "git" > /opt/zapret-ver
|
||||
echo "Клонирую репозиторий конфигураций..."
|
||||
git clone https://github.com/Snowy-Fluffy/zapret.cfgs /opt/zapret/zapret.cfgs || error_exit "не удалось получить репозиторий конфигураций. Вероятно это сетевая ошибка, попробуйте снова."
|
||||
echo "Клонирование успешно завершено."
|
||||
}
|
||||
|
||||
|
||||
install_dependencies() {
|
||||
@@ -107,7 +116,7 @@ install_dependencies() {
|
||||
fi
|
||||
}
|
||||
|
||||
install_zapret() {
|
||||
install_zapret_release() {
|
||||
install_dependencies
|
||||
if [[ $dir_exists == true ]]; then
|
||||
read -p "На вашем компьютере был найден запрет (/opt/zapret). Для продолжения его необходимо удалить. Вы действительно хотите удалить запрет (/opt/zapret) и продолжить? (y/N): " answer
|
||||
@@ -129,7 +138,7 @@ install_zapret() {
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
download_zapret
|
||||
download_zapret_release
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./install_easy.sh
|
||||
@@ -137,7 +146,67 @@ install_zapret() {
|
||||
rm -f /bin/zapret
|
||||
rm -f /opt/zapret/config
|
||||
cp -r /opt/zapret/zapret.cfgs/configurations/general /opt/zapret/config || error_exit "не удалось автоматически скопировать конфиг"
|
||||
cp -r /opt/zapret/zapret.cfgs/bin/* /opt/zapret/files/fake || error_exit "не удалось автоматически скопировать fake bin"
|
||||
rm -f /opt/zapret/ipset/zapret-hosts-user.txt
|
||||
touch /opt/zapret/ipset/ipset-game.txt || error_exit "не удалось автоматически создать game ipset"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/list-basic.txt /opt/zapret/ipset/zapret-hosts-user.txt || error_exit "не удалось автоматически скопировать хостлист"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/ipset-discord.txt /opt/zapret/ipset/ipset-discord.txt || error_exit "не удалось автоматически скопировать ипсет"
|
||||
ln -s /opt/zapret.installer/zapret-control.sh /bin/zapret || error_exit "не удалось создать символическую ссылку"
|
||||
if [[ INIT_SYSTEM = systemd ]]; then
|
||||
systemctl daemon-reload
|
||||
fi
|
||||
if [[ INIT_SYSTEM = runit ]]; then
|
||||
read -p "Для окончания установки необходимо перезапустить ваше устройство. Перезапустить его сейчас? (Y/n): " answer
|
||||
case "$answer" in
|
||||
[Yy]* )
|
||||
reboot
|
||||
;;
|
||||
[Nn]* )
|
||||
$TPUT_E
|
||||
exit 1
|
||||
;;
|
||||
* )
|
||||
reboot
|
||||
;;
|
||||
esac
|
||||
else
|
||||
manage_service restart
|
||||
configure_zapret_conf
|
||||
fi
|
||||
}
|
||||
install_zapret_git() {
|
||||
install_dependencies
|
||||
if [[ $dir_exists == true ]]; then
|
||||
read -p "На вашем компьютере был найден запрет (/opt/zapret). Для продолжения его необходимо удалить. Вы действительно хотите удалить запрет (/opt/zapret) и продолжить? (y/N): " answer
|
||||
case "$answer" in
|
||||
[Yy]* )
|
||||
if [[ -f /opt/zapret/uninstall_easy.sh ]]; then
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./uninstall_easy.sh
|
||||
sed -i '238s/ask_yes_no Y/ask_yes_no N/' /opt/zapret/common/installer.sh
|
||||
fi
|
||||
rm -rf /opt/zapret
|
||||
echo "Удаляю zapret..."
|
||||
cd /
|
||||
sleep 3
|
||||
;;
|
||||
* )
|
||||
main_menu
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
download_zapret_git
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./install_easy.sh
|
||||
sed -i '238s/ask_yes_no Y/ask_yes_no N/' /opt/zapret/common/installer.sh
|
||||
rm -f /bin/zapret
|
||||
rm -f /opt/zapret/config
|
||||
cp -r /opt/zapret/zapret.cfgs/configurations/general /opt/zapret/config || error_exit "не удалось автоматически скопировать конфиг"
|
||||
cp -r /opt/zapret/zapret.cfgs/bin/* /opt/zapret/files/fake || error_exit "не удалось автоматически скопировать fake bin"
|
||||
rm -f /opt/zapret/ipset/zapret-hosts-user.txt
|
||||
touch /opt/zapret/ipset/ipset-game.txt || error_exit "не удалось автоматически создать game ipset"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/list-basic.txt /opt/zapret/ipset/zapret-hosts-user.txt || error_exit "не удалось автоматически скопировать хостлист"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/ipset-discord.txt /opt/zapret/ipset/ipset-discord.txt || error_exit "не удалось автоматически скопировать ипсет"
|
||||
ln -s /opt/zapret.installer/zapret-control.sh /bin/zapret || error_exit "не удалось создать символическую ссылку"
|
||||
@@ -164,6 +233,7 @@ install_zapret() {
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
update_zapret() {
|
||||
LIST_EXISTS=0
|
||||
CONF_EXISTS=0
|
||||
@@ -180,14 +250,27 @@ update_zapret() {
|
||||
# echo "Актуальная версия уже установлена: нечего обновлять."
|
||||
# bash -c 'read -p "Нажмите Enter для продолжения..."'
|
||||
|
||||
download_zapret || error_exit "не удалось обновить запрет"
|
||||
echo -e "Запрет обновлен до версии $(cat /opt/zapret-ver)"
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./install_easy.sh
|
||||
sed -i '238s/ask_yes_no Y/ask_yes_no N/' /opt/zapret/common/installer.sh
|
||||
|
||||
|
||||
if [ -f /opt/zapret-ver ]; then
|
||||
#cat /opt/zapret-ver | tr -d '[:space:]' - useful
|
||||
if [ -z $(cat /opt/zapret-ver) ] || [ $(cat /opt/zapret-ver) != "git" ]; then
|
||||
download_zapret || error_exit "не удалось обновить запрет"
|
||||
echo -e "Запрет обновлен до версии $(cat /opt/zapret-ver)"
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./install_easy.sh
|
||||
sed -i '238s/ask_yes_no Y/ask_yes_no N/' /opt/zapret/common/installer.sh
|
||||
else
|
||||
cd /opt/zapret/ && git fetch origin master; git reset --hard origin/master || error_exit "не удалось обновить zapret с помощью git. Попробуйте снова, вероятно это сетевая ошибка. Если не помогло - переустановите zapret."
|
||||
echo -e "Репозиторий запрета был обновлен."
|
||||
fi
|
||||
else
|
||||
download_zapret || error_exit "не удалось обновить zapret"
|
||||
echo -e "Запрет обновлен до версии $(cat /opt/zapret-ver)"
|
||||
cd /opt/zapret
|
||||
sed -i '238s/ask_yes_no N/ask_yes_no Y/' /opt/zapret/common/installer.sh
|
||||
yes "" | ./install_easy.sh
|
||||
sed -i '238s/ask_yes_no Y/ask_yes_no N/' /opt/zapret/common/installer.sh
|
||||
fi
|
||||
|
||||
if [[ -d /opt/zapret/zapret.cfgs ]]; then
|
||||
cd /opt/zapret/zapret.cfgs && git fetch origin main; git reset --hard origin/main
|
||||
@@ -209,9 +292,11 @@ update_zapret() {
|
||||
rm -rf $TEMP_DIR_BIN
|
||||
rm -f /opt/zapret/config
|
||||
cp -r /opt/zapret/zapret.cfgs/configurations/general /opt/zapret/config || error_exit "не удалось автоматически скопировать конфиг"
|
||||
cp -r /opt/zapret/zapret.cfgs/bin/* /opt/zapret/files/fake || error_exit "не удалось автоматически скопировать fake bin"
|
||||
rm -f /opt/zapret/ipset/zapret-hosts-user.txt
|
||||
touch /opt/zapret/ipset/ipset-game.txt || error_exit "не удалось автоматически создать game ipset"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/list-basic.txt /opt/zapret/ipset/zapret-hosts-user.txt || error_exit "не удалось автоматически скопировать хостлист"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/ipset-discord.txt /opt/zapret/ipset/ipset-discord.txt || error_exit "не удалось автоматически скопировать ипсет"
|
||||
cp -r /opt/zapret/zapret.cfgs/lists/ipset-discord.txt /opt/zapret/ipset/ipset-discord.txt || error_exit "не удалось автоматически скопировать discord ipset"
|
||||
configure_zapret_conf
|
||||
manage_service restart
|
||||
bash -c 'read -p "Нажмите Enter для продолжения..."'
|
||||
|
||||
369
files/menu.sh
369
files/menu.sh
@@ -2,253 +2,152 @@
|
||||
|
||||
|
||||
main_menu() {
|
||||
if [[ SYSTEM != openwrt ]]; then
|
||||
while true; do
|
||||
clear
|
||||
check_zapret_status
|
||||
check_zapret_exist
|
||||
echo -e "\e[1;36m╔════════════════════════════════════════════╗"
|
||||
echo -e "║ ⚙️ Меню управления Запретом ║"
|
||||
echo -e "╚════════════════════════════════════════════╝\e[0m"
|
||||
while true; do
|
||||
clear
|
||||
check_zapret_status
|
||||
check_zapret_exist
|
||||
echo -e "\e[1;36m╔════════════════════════════════════════════╗"
|
||||
echo -e "║ Меню управления Запретом ║"
|
||||
echo -e "╚════════════════════════════════════════════╝\e[0m"
|
||||
|
||||
if [[ $ZAPRET_ACTIVE == true ]]; then
|
||||
echo -e " \e[1;32m✔️ Запрет запущен\e[0m"
|
||||
else
|
||||
echo -e " \e[1;31m❌ Запрет выключен\e[0m"
|
||||
fi
|
||||
if [[ $ZAPRET_ACTIVE == true ]]; then
|
||||
echo -e " \e[1;32m Запрет запущен\e[0m"
|
||||
else
|
||||
echo -e " \e[1;31m Запрет выключен\e[0m"
|
||||
fi
|
||||
|
||||
if [[ $ZAPRET_ENABLED == true ]]; then
|
||||
echo -e " \e[1;32m🔁 Запрет в автозагрузке\e[0m"
|
||||
else
|
||||
echo -e " \e[1;33m⏹️ Запрет не в автозагрузке\e[0m"
|
||||
fi
|
||||
if [[ $ZAPRET_ENABLED == true ]]; then
|
||||
echo -e " \e[1;32m Запрет в автозагрузке\e[0m"
|
||||
else
|
||||
echo -e " \e[1;33m Запрет не в автозагрузке\e[0m"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo ""
|
||||
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
echo -e " \e[1;34m0)\e[0m 🚪 Выйти"
|
||||
echo -e " \e[1;33m1)\e[0m 🔄 Проверить на обновления и обновить"
|
||||
echo -e " \e[1;36m2)\e[0m ⚙️ Сменить конфигурацию запрета"
|
||||
echo -e " \e[1;35m3)\e[0m 🛠️ Управление сервисом запрета"
|
||||
echo -e " \e[1;31m4)\e[0m 🗑️ Удалить Запрет"
|
||||
else
|
||||
echo -e " \e[1;34m0)\e[0m 🚪 Выйти"
|
||||
echo -e " \e[1;32m1)\e[0m 📥 Установить Запрет"
|
||||
echo -e " \e[1;36m2)\e[0m 📜 Проверить скрипт на обновления"
|
||||
fi
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
echo -e " \e[1;34m0)\e[0m Выйти"
|
||||
echo -e " \e[1;33m1)\e[0m Проверить на обновления и обновить"
|
||||
echo -e " \e[1;36m2)\e[0m Сменить конфигурацию запрета"
|
||||
echo -e " \e[1;35m3)\e[0m Управление сервисом запрета"
|
||||
echo -e " \e[1;31m4)\e[0m Удалить Запрет"
|
||||
else
|
||||
echo -e " \e[1;34m0)\e[0m Выйти"
|
||||
echo -e " \e[1;32m1)\e[0m Установить Запрет"
|
||||
echo -e " \e[1;36m2)\e[0m Проверить скрипт на обновления"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo -e "\e[1;96m✨ Сделано с любовью 💙\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
echo ""
|
||||
echo -e "\e[1;96mСделано\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret_menu;;
|
||||
2) change_configuration;;
|
||||
3) toggle_service;;
|
||||
4) uninstall_zapret;;
|
||||
0) $TPUT_E; exit 0;;
|
||||
*) echo -e "\e[1;31m❌ Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
else
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) install_zapret; main_menu;;
|
||||
2) update_script;;
|
||||
0) tput rmcup; exit 0;;
|
||||
*) echo -e "\e[1;31m❌ Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
else
|
||||
while true; do
|
||||
clear
|
||||
check_zapret_status
|
||||
check_zapret_exist
|
||||
echo -e "\e[1;36m╔════════════════════════════════════════════╗"
|
||||
echo -e "║ Меню управления Запретом ║"
|
||||
echo -e "╚════════════════════════════════════════════╝\e[0m"
|
||||
|
||||
if [[ $ZAPRET_ACTIVE == true ]]; then
|
||||
echo -e " \e[1;32m Запрет запущен\e[0m"
|
||||
else
|
||||
echo -e " \e[1;31m Запрет выключен\e[0m"
|
||||
fi
|
||||
|
||||
if [[ $ZAPRET_ENABLED == true ]]; then
|
||||
echo -e " \e[1;32m Запрет в автозагрузке\e[0m"
|
||||
else
|
||||
echo -e " \e[1;33m Запрет не в автозагрузке\e[0m"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
echo -e " \e[1;34m0)\e[0m Выйти"
|
||||
echo -e " \e[1;33m1)\e[0m Проверить на обновления и обновить"
|
||||
echo -e " \e[1;36m2)\e[0m Сменить конфигурацию запрета"
|
||||
echo -e " \e[1;35m3)\e[0m Управление сервисом запрета"
|
||||
echo -e " \e[1;31m4)\e[0m Удалить Запрет"
|
||||
else
|
||||
echo -e " \e[1;34m0)\e[0m Выйти"
|
||||
echo -e " \e[1;32m1)\e[0m Установить Запрет"
|
||||
echo -e " \e[1;36m2)\e[0m Проверить скрипт на обновления"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo -e "\e[1;96m Сделано с любовью \e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret_menu;;
|
||||
2) change_configuration;;
|
||||
3) toggle_service;;
|
||||
4) uninstall_zapret;;
|
||||
0) $TPUT_E; exit 0;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
else
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) install_zapret; main_menu;;
|
||||
2) update_script;;
|
||||
0) tput rmcup; exit 0;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
fi
|
||||
if [[ $ZAPRET_EXIST == true ]]; then
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret_menu;;
|
||||
2) change_configuration;;
|
||||
3) toggle_service;;
|
||||
4) uninstall_zapret;;
|
||||
0) $TPUT_E; exit 0;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
else
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) install_zapret_menu; main_menu;;
|
||||
2) update_script;;
|
||||
0) tput rmcup; exit 0;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
}
|
||||
install_zapret_menu() {
|
||||
while true; do
|
||||
clear
|
||||
echo -e "\e[1;36m╔════════════════════════════════════════════╗"
|
||||
echo -e "║ Меню управления Запретом ║"
|
||||
echo -e "╚════════════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;31m0)\e[0m Выйти в меню"
|
||||
echo -e " \e[1;34m1)\e[0m Установить zapret как релиз (рекомендуется)"
|
||||
echo -e " \e[1;34m2)\e[0m Установить zapret через git"
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) install_zapret_release ;;
|
||||
2) install_zapret_git ;;
|
||||
0) main_menu ;;
|
||||
*) echo -e "\e[1;31mНеверный ввод! Попробуйте снова.\e[0m"; sleep 2 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
}
|
||||
change_configuration() {
|
||||
if [[ SYSTEM != openwrt ]]; then
|
||||
while true; do
|
||||
clear
|
||||
cur_conf
|
||||
cur_list
|
||||
while true; do
|
||||
clear
|
||||
cur_conf
|
||||
cur_list
|
||||
game_mode_check
|
||||
|
||||
echo -e "\e[1;36m╔══════════════════════════════════════════════╗"
|
||||
echo -e "║ ⚙️ Управление конфигурацией Запрета ║"
|
||||
echo -e "╚══════════════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;33m📌 Используемая стратегия:\e[0m \e[1;32m$cr_cnf\e[0m"
|
||||
echo -e " \e[1;33m📜 Используемый хостлист:\e[0m \e[1;32m$cr_lst\e[0m"
|
||||
echo ""
|
||||
echo -e " \e[1;31m0)\e[0m 🚪 Выйти в меню"
|
||||
echo -e " \e[1;34m1)\e[0m 🔁 Сменить стратегию"
|
||||
echo -e " \e[1;34m2)\e[0m 📄 Сменить лист обхода"
|
||||
echo -e " \e[1;34m3)\e[0m ➕ Добавить IP или домены в лист"
|
||||
echo -e " \e[1;34m4)\e[0m ➖ Удалить IP или домены из листа"
|
||||
echo -e " \e[1;34m5)\e[0m 🔍 Найти IP или домены в листе"
|
||||
echo -e " \e[1;34m6)\e[0m 📥 Установить стратегию из файла (путь)"
|
||||
echo -e " \e[1;34m7)\e[0m 📥 Установить хостлист из файла (путь)"
|
||||
echo ""
|
||||
echo -e "\e[1;96m✨ Сделано с любовью 💙\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
echo -e "\e[1;36m╔══════════════════════════════════════════════╗"
|
||||
echo -e "║ Управление конфигурацией Запрета ║"
|
||||
echo -e "╚══════════════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;33m Используемая стратегия:\e[0m \e[1;32m$cr_cnf\e[0m"
|
||||
echo -e " \e[1;33m Используемый хостлист:\e[0m \e[1;32m$cr_lst\e[0m"
|
||||
echo -e " \e[1;33m Игровой режим:\e[0m \e[1;32m$game_mode_status\e[0m"
|
||||
echo ""
|
||||
echo -e " \e[1;31m0)\e[0m Выйти в меню"
|
||||
if [[ $game_mode_status == "включен" ]]; then
|
||||
echo -e " \e[1;34m1)\e[0m Выключить игровой режим"
|
||||
else
|
||||
echo -e " \e[1;34m1)\e[0m Включить игровой режим"
|
||||
fi
|
||||
echo -e " \e[1;34m2)\e[0m Сменить стратегию"
|
||||
echo -e " \e[1;34m3)\e[0m Сменить лист обхода"
|
||||
echo -e " \e[1;34m4)\e[0m Добавить IP или домены в лист"
|
||||
echo -e " \e[1;34m5)\e[0m Удалить IP или домены из листа"
|
||||
echo -e " \e[1;34m6)\e[0m Найти IP или домены в листе"
|
||||
echo -e " \e[1;34m7)\e[0m Установить стратегию из файла (путь)"
|
||||
echo -e " \e[1;34m8)\e[0m Установить хостлист из файла (путь)"
|
||||
echo ""
|
||||
echo -e "\e[1;96mСделано\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) configure_zapret_conf ;;
|
||||
2) configure_zapret_list ;;
|
||||
3) add_to_zapret ;;
|
||||
4) delete_from_zapret ;;
|
||||
5) search_in_zapret ;;
|
||||
6) configure_custom_conf_path ;;
|
||||
7) configure_custom_list_path ;;
|
||||
0) main_menu ;;
|
||||
*) echo -e "\e[1;31m❌ Неверный ввод! Попробуйте снова.\e[0m"; sleep 2 ;;
|
||||
esac
|
||||
done
|
||||
else
|
||||
while true; do
|
||||
clear
|
||||
cur_conf
|
||||
cur_list
|
||||
|
||||
echo -e "\e[1;36m╔══════════════════════════════════════════════╗"
|
||||
echo -e "║ Управление конфигурацией Запрета ║"
|
||||
echo -e "╚══════════════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;33m Используемая стратегия:\e[0m \e[1;32m$cr_cnf\e[0m"
|
||||
echo -e " \e[1;33m Используемый хостлист:\e[0m \e[1;32m$cr_lst\e[0m"
|
||||
echo ""
|
||||
echo -e " \e[1;31m0)\e[0m Выйти в меню"
|
||||
echo -e " \e[1;34m1)\e[0m Сменить стратегию"
|
||||
echo -e " \e[1;34m2)\e[0m Сменить лист обхода"
|
||||
echo -e " \e[1;34m3)\e[0m Добавить IP или домены в лист"
|
||||
echo -e " \e[1;34m4)\e[0m Удалить IP или домены из листа"
|
||||
echo -e " \e[1;34m5)\e[0m Найти IP или домены в листе"
|
||||
echo -e " \e[1;34m6)\e[0m Установить стратегию из файла (путь)"
|
||||
echo -e " \e[1;34m7)\e[0m Установить лист обхода из файла (путь)"
|
||||
echo ""
|
||||
echo -e "\e[1;96m Сделано с любовью \e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) configure_zapret_conf ;;
|
||||
2) configure_zapret_list ;;
|
||||
3) add_to_zapret ;;
|
||||
4) delete_from_zapret ;;
|
||||
5) search_in_zapret ;;
|
||||
6) configure_custom_conf_path ;;
|
||||
7) configure_custom_list_path ;;
|
||||
0) main_menu ;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2 ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) toggle_game_mode ;;
|
||||
2) configure_zapret_conf ;;
|
||||
3) configure_zapret_list ;;
|
||||
4) add_to_zapret ;;
|
||||
5) delete_from_zapret ;;
|
||||
6) search_in_zapret ;;
|
||||
7) configure_custom_conf_path ;;
|
||||
8) configure_custom_list_path ;;
|
||||
0) main_menu ;;
|
||||
*) echo -e "\e[1;31mНеверный ввод! Попробуйте снова.\e[0m"; sleep 2 ;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
update_zapret_menu(){
|
||||
if [[ SYSTEM != openwrt ]]; then
|
||||
while true; do
|
||||
clear
|
||||
echo -e "\e[1;36m╔════════════════════════════════════╗"
|
||||
echo -e "║ 🔄 Обновление Запрета ║"
|
||||
echo -e "║ Текущая версия: $(if [ -f /opt/zapret-ver ]; then cat /opt/zapret-ver; else echo "Неизвестно";fi) ║"
|
||||
while true; do
|
||||
clear
|
||||
echo -e "\e[1;36m╔════════════════════════════════════╗"
|
||||
echo -e "║ Обновление Запрета ║"
|
||||
echo -e "║ Текущая версия: $(if [ -f /opt/zapret-ver ]; then cat /opt/zapret-ver; else echo "Неизвестно";fi) ║"
|
||||
|
||||
echo -e "║ Последняя версия: $(get_latest_version) ║"
|
||||
echo -e "╚════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;31m0)\e[0m 🚪 Выйти в меню"
|
||||
echo -e " \e[1;33m1)\e[0m 🔧 Обновить \e[33mвсё\e[0m"
|
||||
echo -e " \e[1;32m2)\e[0m 📜 Обновить только \e[32mскрипт\e[0m"
|
||||
echo ""
|
||||
echo -e "\e[1;96m✨ Сделано с любовью 💙\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret;;
|
||||
2) update_installed_script;;
|
||||
0) main_menu;;
|
||||
*) echo -e "\e[1;31m❌ Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
done
|
||||
else
|
||||
while true; do
|
||||
clear
|
||||
echo -e "\e[1;36m╔════════════════════════════════════╗"
|
||||
echo -e "║ Обновление Запрета ║"
|
||||
|
||||
echo -e "║ Текущая версия: $(if [ -f /opt/zapret-ver ]; then cat /opt/zapret-ver; else echo "Неизвестно";fi) ║"
|
||||
|
||||
echo -e "║ Последняя версия: $(get_latest_version) ║"
|
||||
|
||||
echo -e "╚════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;31m0)\e[0m Выйти в меню"
|
||||
echo -e " \e[1;33m1)\e[0m Обновить \e[33mвсё\e[0m"
|
||||
echo -e " \e[1;32m2)\e[0m Обновить только \e[32mскрипт\e[0m"
|
||||
echo ""
|
||||
echo -e "\e[1;96m Сделано с любовью \e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
read -p $'\e[1;36mВыберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret;;
|
||||
2) update_installed_script;;
|
||||
0) main_menu;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
}
|
||||
echo -e "║ Последняя версия: $(get_latest_version) ║"
|
||||
echo -e "╚════════════════════════════════════╝\e[0m"
|
||||
echo -e " \e[1;31m0)\e[0m Выйти в меню"
|
||||
echo -e " \e[1;33m1)\e[0m Обновить \e[33mвсё\e[0m"
|
||||
echo -e " \e[1;32m2)\e[0m Обновить только \e[32mскрипт\e[0m"
|
||||
echo ""
|
||||
echo -e "\e[1;96mСделано\e[0m by: \e[4;94mhttps://t.me/linux_hi\e[0m"
|
||||
echo ""
|
||||
read -p $'\e[1;36m Выберите действие: \e[0m' CHOICE
|
||||
case "$CHOICE" in
|
||||
1) update_zapret;;
|
||||
2) update_installed_script;;
|
||||
0) main_menu;;
|
||||
*) echo -e "\e[1;31m Неверный ввод! Попробуйте снова.\e[0m"; sleep 2;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user