diff --git a/scripts/ai-setup.sh b/scripts/ai-setup.sh index b9e57a0..02db09f 100755 --- a/scripts/ai-setup.sh +++ b/scripts/ai-setup.sh @@ -181,11 +181,19 @@ XRAYEOF echo "$result" } -# ── 0. Выбор режима работы (vless / direct) ───────────────── -# AI_SETUP_VLESS=1 включает VLESS; по умолчанию 0 (прямое подключение). -# Устанавливается из меню setup.sh (пункт "VLESS"). -if [[ "${AI_SETUP_VLESS:-0}" == "1" ]]; then +# ── 0. Выбор режима работы VLESS (on / off / skip) ───────────── +# AI_SETUP_VLESS: +# 1 / on — включить VLESS (установка xray + proxychains + обёртки лаунчеров) +# 0 / off — отключить VLESS (откат: stop xray, сброс прокси, IPv6 on) +# skip — НЕ трогать сеть (умолчание). Лаунчеры синхронизируются +# с текущим состоянием (xray активен?). +# Устанавливается из меню setup.sh. По умолчанию skip, чтобы прямой запуск +# ai-setup.sh и пункты 1/7/8 не меняли сетевые настройки. +DO_VLESS_INSTALL=0 +case "${AI_SETUP_VLESS:-skip}" in + 1|on) USE_VLESS=1 + DO_VLESS_INSTALL=1 # Читаем список серверов _VL_URLS=() @@ -240,9 +248,11 @@ if [[ "${AI_SETUP_VLESS:-0}" == "1" ]]; then _VL_SELECTED="${_VL_URLS[$((_vl_choice-1))]}" parse_vless_url "$_VL_SELECTED" info "Выбран: $VL_ADDRESS ($VL_NAME)" -else + ;; + 0|off) USE_VLESS=0 - info "Режим: direct (без проксирования)" + DO_VLESS_INSTALL=0 + info "Отключение VLESS (откат настроек)" # ── Откат всех настроек vless ────────────────────────────── info "Откатываю настройки прокси..." @@ -282,7 +292,19 @@ FJSEOF sudo systemctl restart systemd-resolved 2>/dev/null || true success "IPv6 восстановлен" fi -fi + ;; + *) + # skip — сеть не трогаем; синхронизируем лаунчеры с текущим состоянием xray + if systemctl is-active --quiet xray 2>/dev/null; then + USE_VLESS=1 + info "Сеть не трогаю. VLESS активен — лаунчеры будут с proxychains4." + else + USE_VLESS=0 + info "Сеть не трогаю. VLESS не активен — прямые лаунчеры." + fi + info "Управление VLESS: пункт 9 (включить / отключить)." + ;; +esac # ── 1. npm prefix в домашнюю папку ────────────────────────── info "Настраиваю npm prefix..." @@ -311,8 +333,8 @@ else warn "Node.js не найден. Некоторые функции могут не работать." fi -# ── 2.5. proxychains-ng + xray (только в режиме vless) ────── -if [ "$USE_VLESS" -eq 1 ]; then +# ── 2.5. proxychains-ng + xray (только при включении VLESS) ── +if [ "$DO_VLESS_INSTALL" -eq 1 ]; then info "Проверяю proxychains-ng..." if ! command -v proxychains4 &>/dev/null; then info "Устанавливаю proxychains-ng (нужен sudo)..." diff --git a/setup.sh b/setup.sh index a4d6d21..c7d0a62 100755 --- a/setup.sh +++ b/setup.sh @@ -75,7 +75,7 @@ fi case "$choice" in 1) - AI_SETUP_VLESS=0 bash scripts/ai-setup.sh + AI_SETUP_VLESS=skip bash scripts/ai-setup.sh ;; 2) echo -e "${GRY}Нужно указать параметры твоей локальной сети:${CLR}" @@ -227,10 +227,10 @@ case "$choice" in git -C "$REPO_DIR" pull --ff-only echo "" echo -e "${BLD}Перегенерация скриптов...${CLR}" - AI_SETUP_VLESS=0 bash "$REPO_DIR/scripts/ai-setup.sh" + AI_SETUP_VLESS=skip bash "$REPO_DIR/scripts/ai-setup.sh" ;; 8) - AI_SETUP_VLESS=0 bash scripts/ai-setup.sh + AI_SETUP_VLESS=skip bash scripts/ai-setup.sh ;; 9) echo -n "Включить VLESS-прокси? [Y/n] "