install: устойчивость к ошибкам сторонних opkg-репозиториев

- opkg update больше не валит install.sh при 404 у hoaxisr/ground-zero
- opkg install python3 — фолбэк цепочкой, без выхода по set -e
- Финальный блок «Готово» с явным путём INST/INIT, чтобы оборвавшаяся
  установка сразу была заметна
- README/install: vi вместо nano (на Entware nano по умолчанию нет),
  заметка про частичные ошибки opkg update
This commit is contained in:
Андрей Бобырев
2026-04-26 00:23:25 +03:00
parent 75cb432e13
commit caa1dd1602
2 changed files with 22 additions and 9 deletions

View File

@@ -80,7 +80,7 @@ chmod +x install.sh uninstall.sh run.sh bootstrap.sh
### Первый запуск ### Первый запуск
```sh ```sh
nano /opt/share/keenetic_ssh-web/.env vi /opt/share/keenetic_ssh-web/.env
# ROUTER_HOST=http://127.0.0.1 (если на роутере) # ROUTER_HOST=http://127.0.0.1 (если на роутере)
# ROUTER_LOGIN=admin # ROUTER_LOGIN=admin
# WEB_PASSWORD= (запасной мастер-пароль; можно оставить пустым) # WEB_PASSWORD= (запасной мастер-пароль; можно оставить пустым)
@@ -91,6 +91,8 @@ nano /opt/share/keenetic_ssh-web/.env
/opt/etc/init.d/S99keenetic-ssh-web start /opt/etc/init.d/S99keenetic-ssh-web start
``` ```
> На Entware из коробки нет `nano` — используйте `vi`. Если `opkg update` ругается на сторонний репо (например `hoaxisr.github.io`), это не страшно, установка продолжится.
Откройте в браузере: `http://IP_РОУТЕРА:2001` — введите **логин и пароль от веб-админки роутера**. Откройте в браузере: `http://IP_РОУТЕРА:2001` — введите **логин и пароль от веб-админки роутера**.
**Автозапуск** (если у вашей сборки Entware есть `rc.d`): **Автозапуск** (если у вашей сборки Entware есть `rc.d`):

View File

@@ -27,8 +27,10 @@ chmod +x "$INST/run.sh"
echo "==> Entware: python3 + venv" echo "==> Entware: python3 + venv"
if command -v opkg >/dev/null 2>&1; then if command -v opkg >/dev/null 2>&1; then
opkg update opkg update || echo "(opkg update: частичные ошибки источников — продолжаем)"
opkg install python3 python3-pip python3-light python3-venv 2>/dev/null || opkg install python3 python3-pip 2>/dev/null || true opkg install python3 python3-pip python3-light python3-venv >/dev/null 2>&1 \
|| opkg install python3 python3-pip >/dev/null 2>&1 \
|| echo "(opkg install python3: пропуск — пакеты возможно уже стоят)"
fi fi
cd "$INST" cd "$INST"
@@ -94,10 +96,19 @@ rm -f "$TMP_INIT"
chmod +x "$INIT" chmod +x "$INIT"
echo "" echo ""
echo "Готово. Дальше:" echo "============================================================"
echo " 1) nano $INST/.env — WEB_PASSWORD, при желании ALLOWED_IPS и PORT" echo "Готово. Установлено в: $INST"
echo " 2) $INIT start" echo "Init-скрипт: $INIT"
echo " 3) Браузер: http://IP_РОУТЕРА:2001 (или порт из $INST/.env → PORT)"
echo "" echo ""
echo "Автозапуск после перезагрузки (Entware):" echo "Дальше:"
echo " ln -sf $INIT /opt/etc/rc.d/S99keenetic-ssh-web # если есть rc.d" echo " 1) (по желанию) vi $INST/.env"
echo " ROUTER_HOST=http://127.0.0.1 ROUTER_LOGIN=admin"
echo " WEB_PASSWORD=... PORT=2001"
echo " ALLOWED_IPS=192.168.1.100"
echo " 2) $INIT start"
echo " 3) Браузер: http://IP_РОУТЕРА:2001"
echo " Логин/пароль — от веб-админки роутера (Keenetic)."
echo ""
echo "Автозапуск после перезагрузки (если есть rc.d):"
echo " ln -sf $INIT /opt/etc/rc.d/S99keenetic-ssh-web"
echo "============================================================"