feat(tui): add safe client and backup workflows

This commit is contained in:
2026-10-15 20:58:17 +03:00
parent 06c7171e91
commit a4f530d7a5
5 changed files with 592 additions and 286 deletions
+13 -1
View File
@@ -2,6 +2,16 @@
set -Eeuo pipefail
umask 077
wg_manager_bash_supported() {
local required_major=${1:-4} required_minor=${2:-3} actual_major=${3:-${BASH_VERSINFO[0]}} actual_minor=${4:-${BASH_VERSINFO[1]}}
(( actual_major > required_major || (actual_major == required_major && actual_minor >= required_minor) ))
}
if ! wg_manager_bash_supported 4 3; then
printf 'Ошибка: требуется Bash версии 4.3 или новее\n' >&2
if [[ ${BASH_SOURCE[0]} == "$0" ]]; then exit 69; else return 69; fi
fi
resolve_script_dir() {
local source_path=${BASH_SOURCE[0]} source_dir
if [[ $source_path == /* ]]; then
@@ -56,7 +66,9 @@ print_usage() {
wg-manager.sh version
wg-manager.sh {status|list|add NAME [--mode MODE] [--split-networks CIDRS] [--endpoint HOST]|show NAME|config NAME [--show]|qr NAME|remove NAME [--yes]|diagnose [--quiet]|backup|backups|restore BACKUP [--yes]|log [LIMIT]|tui}
Команды управления WireGuard будут добавлены в следующих версиях.
Основные команды: status, list, add, show, config, qr, remove, diagnose,
backup, backups, restore, log и tui. Ошибки usage/validation/dependency/
operation/rollback возвращают соответственно 64/65/69/70/71.
USAGE
}