version 1.4.1: per-user WARP флаг, fallback-установка PyPI

- app.py: full_warp флаг в warp_rules, _rebuild_egress читает с диска, race condition fix
- bot.py: full_warp поддержка в toggle_warp
- templates/index.html: чекбокс «Весь трафик через WARP» с full_warp, не авто-включается
- install-panel.sh: зеркала PyPI (aliyun), таймаут 120с на pip, fallback на apt --system-site-packages
- install-bot.sh: зеркала и fallback для python-telegram-bot
- README: версия 1.4, обновлён roadmap
This commit is contained in:
2026-06-28 23:59:47 +03:00
parent 43d99ba867
commit 423ee4fdbb
6 changed files with 189 additions and 166 deletions
+24 -2
View File
@@ -73,8 +73,30 @@ if [[ ! -d "$BOT_VENV" ]]; then
python3 -m venv "$BOT_VENV"
fi
"$BOT_VENV/bin/pip" install -q python-telegram-bot psutil 2>/dev/null
ok "Python-зависимости установлены в виртуальное окружение"
info "Установка python-telegram-bot (может занять до минуты)..."
_bot_pip() {
timeout 120 "$BOT_VENV/bin/pip" install -q --disable-pip-version-check --timeout 15 "$@"
}
bot_pip_ok=false
for mirror in "https://pypi.org/simple/" "https://mirrors.aliyun.com/pypi/simple/"; do
if _bot_pip --index-url "$mirror" python-telegram-bot psutil 2>/dev/null; then
bot_pip_ok=true
break
fi
done
if ! $bot_pip_ok; then
warn "pip не смог установить python-telegram-bot. Пробую через apt..."
rm -rf "$BOT_VENV"
python3 -m venv --system-site-packages "$BOT_VENV"
apt-get install -y -qq python3-psutil 2>/dev/null
apt-get install -y -qq python3-telegram-bot 2>/dev/null || \
"$BOT_VENV/bin/pip" install --timeout 15 --index-url https://mirrors.aliyun.com/pypi/simple/ python-telegram-bot 2>/dev/null || {
warn "Не удалось установить зависимости бота."
warn "Установите вручную: /opt/mita-bot/venv/bin/pip install python-telegram-bot psutil"
}
fi
ok "Python-зависимости бота установлены"
# ── копирование файлов ──────────────────────────────────────────────
section "Установка бота"