diff --git a/FORK-CHANGELOG.md b/FORK-CHANGELOG.md index 3eb0651..2bc48c8 100644 --- a/FORK-CHANGELOG.md +++ b/FORK-CHANGELOG.md @@ -1,3 +1,12 @@ +## v1.2.20: после сноса меню не показывается, и нет ошибок про latest-version + +* Удаление из меню (`kit`, пункт 9) теперь завершается сразу: печатается «Готово: сервер в состоянии + до установки» — и выход. Раньше меню перерисовывалось на уже удалённом сервере и сыпало + `touch: cannot touch '/etc/kit/latest-version'`. +* `update_hint` больше не пытается что-либо писать, если каталога `/etc/kit` уже нет. +* Входит исправление 1.2.19: `extra` объявлена пустой (иначе `set -u` валил установку на шаге + «[6/6] Проверка» сообщением `extra: unbound variable`). + ## v1.2.19: исправлено «extra: unbound variable» при установке * На середине установки (после проверки протоколов) скрипт падал: `extra: unbound variable`. diff --git a/VERSION b/VERSION index 9ddbe16..53fc08d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.2.19 +1.2.20 diff --git a/scripts/3x-ui-local.sh b/scripts/3x-ui-local.sh index 57b00b2..6918919 100644 --- a/scripts/3x-ui-local.sh +++ b/scripts/3x-ui-local.sh @@ -44,7 +44,7 @@ set -Eeuo pipefail -KIT_VERSION="1.2.19" # версия сборки форка; должна совпадать с VERSION релиза +KIT_VERSION="1.2.20" # версия сборки форка; должна совпадать с VERSION релиза GITEA="${KIT_FORK_BASE:-https://git.rukavishnikoff.ru/hacker07/3X-UI_autoVPS}" NS="3x-ui-kit-release" SIG_ID="releases@3x-ui-kit" diff --git a/scripts/3x-ui.sh b/scripts/3x-ui.sh index 3876b3d..0199323 100755 --- a/scripts/3x-ui.sh +++ b/scripts/3x-ui.sh @@ -30,7 +30,7 @@ wait_apt_idle() { XUI_VERSION="v3.9.0" # SHA256 установщика 3X-UI этой версии: тег могут передвинуть, а хеш – нет (проверено 2026-09-30). XUI_INSTALL_SHA256="18616fe26c8f6c92db6daa2dcd7cd53c5143ee69ecfd26d8ea6dc9b2c78607a6" -KIT_VERSION="1.2.19" +KIT_VERSION="1.2.20" # kit и kit-sub берём из того же релиза, что и этот скрипт, а не из меняющейся ветки main. KIT_RAW="https://git.rukavishnikoff.ru/hacker07/3X-UI_autoVPS/raw/tag/v$KIT_VERSION" # Ядро Xray для панели. С 26.7.x клиенты на Mihomo и sing-box (Hiddify, FlClash, diff --git a/scripts/hysteria2.sh b/scripts/hysteria2.sh index bc1d7bd..23e8dbd 100755 --- a/scripts/hysteria2.sh +++ b/scripts/hysteria2.sh @@ -8,7 +8,7 @@ # Код выхода 1 при любом запуске (и при `__update_binary`) – старый `hy2 update` на нём # останавливается и не заменяет команду hy2. -KIT_VERSION="1.2.19" +KIT_VERSION="1.2.20" cat >&2 <<'MSG' Отдельный установщик Hysteria2 больше не поддерживается. diff --git a/scripts/kit.sh b/scripts/kit.sh index f1dcd76..e6c394a 100644 --- a/scripts/kit.sh +++ b/scripts/kit.sh @@ -12,7 +12,7 @@ set -Eeuo pipefail export LC_ALL=C.UTF-8 # ширина колонок по символам, а не байтам -KIT_VERSION="1.2.19" +KIT_VERSION="1.2.20" KIT_RAW="https://git.rukavishnikoff.ru/hacker07/3X-UI_autoVPS/raw/branch/main" # Файлы новой версии берём из её тега, а не из меняющейся ветки main. kit_ref_raw() { echo "https://git.rukavishnikoff.ru/hacker07/3X-UI_autoVPS/raw/tag/v$1"; } @@ -478,7 +478,8 @@ newer() { [[ $1 != "$2" && $(printf '%s\n%s\n' "$1" "$2" | sort -V | tail -1) == auto_enabled() { systemctl is-enabled -q kit-update.timer 2>/dev/null; } # Раз в сутки узнаём последнюю версию (не дольше 3 секунд) и подсказываем обновиться. -update_hint() { +update_hint() { # подсказка про новую версию + [[ -d /etc/kit ]] || return 0 # kit удалён — подсказывать нечего (раньше тут сыпались ошибки про latest-version) local latest="" if [[ ! -f $KIT_LATEST ]] || (($(date +%s) - $(stat -c %Y "$KIT_LATEST") > 86400)); then latest=$(remote_version 3) || true @@ -2569,7 +2570,7 @@ menu_main() { 6) run_action menu_auto; pause ;; 7) run_action cmd_backup; pause ;; 8) run_action cmd_version; pause ;; - 9) kit_local_uninstall ;; + 9) kit_local_uninstall && return 0 ;; # снос — и сразу выход: показывать меню после удаления незачем 10 | 0 | "") return 0 ;; 11) command -v x-ui >/dev/null && x-ui || echo "Меню x-ui не найдено." ;; *) echo "Нет такого пункта." ;; diff --git a/tools/fork_apply.py b/tools/fork_apply.py index ffe53e3..035ec89 100644 --- a/tools/fork_apply.py +++ b/tools/fork_apply.py @@ -121,6 +121,13 @@ def main(): ' # Ключ подписи форка (владелец: hacker07). Закрытая часть — только на рабочей станции.\n "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKM0Sfn/UQeqjvUvY9wVgg7QtG1RR2pEUkqrUD5Yy6EF 3X-UI_autoVPS fork releases (hacker07)"\n', 'авто-шов: replace, строк 2', ), + ( + 'scripts/kit.sh', + 'update_hint() {\n', + False, + 'update_hint() { # подсказка про новую версию\n [[ -d /etc/kit ]] || return 0 # kit удалён — подсказывать нечего (раньше тут сыпались ошибки про latest-version)\n', + 'авто-шов: replace, строк 1', + ), ( 'scripts/kit.sh', ' echo "3X-UI KIT $KIT_VERSION"\n', @@ -223,7 +230,7 @@ def main(): 'scripts/kit.sh', ' 9) command -v x-ui >/dev/null && x-ui || echo "Меню x-ui не найдено." ;;\n 0 | "") return 0 ;;\n', False, - ' 9) kit_local_uninstall ;;\n 10 | 0 | "") return 0 ;;\n 11) command -v x-ui >/dev/null && x-ui || echo "Меню x-ui не найдено." ;;\n', + ' 9) kit_local_uninstall && return 0 ;; # снос — и сразу выход: показывать меню после удаления незачем\n 10 | 0 | "") return 0 ;;\n 11) command -v x-ui >/dev/null && x-ui || echo "Меню x-ui не найдено." ;;\n', 'авто-шов: replace, строк 2', ), (