Files
xtui/README.md
Vyacheslav K 0553ef7493 refactor: rename xray-sub to xtui, optimize selection tracking with index
- Rename project from xray-sub to xtui (app name, state dir, user-agent)
- Add selected_index to config for O(1) saved server lookup
- Add migrate_saved_index() for backward compatibility
- Replace fingerprint-based comparison with index-based in menu and apply
2026-06-15 15:43:01 +03:00

2.2 KiB
Raw Blame History

xtui

Небольшой TUI-скрипт для выбора сервера из JSON-подписки Xray.

Установка на Arch Linux

Установите зависимости:

sudo pacman -S --needed bash curl jq coreutils systemd

Для действий с системными файлами нужен один из инструментов повышения прав: sudo, doas, run0 или pkexec.

Сделайте скрипт исполняемым:

chmod +x main.sh

По желанию установите как команду:

sudo install -m 755 main.sh /usr/local/bin/xtui

Запуск

Из папки проекта:

./main.sh

Если установлено в систему:

xtui

Первый запуск попросит ссылку на JSON-подписку, путь к конфигу Xray и имя systemd-службы.

Полезные команды:

xtui --setup    # заново пройти настройку
xtui --refresh  # обновить подписку
xtui --help     # справка

Что делает

Скрипт скачивает JSON-подписку, показывает список серверов в терминальном меню, записывает выбранный сервер в конфиг Xray и при необходимости перезапускает службу Xray.

В меню можно выбрать сервер, обновить подписку, а также запустить, остановить, перезапустить службу или посмотреть её статус.

Где хранит файлы

Пользовательские файлы хранятся в ~/.xtui/:

  • config — настройки скрипта и последний выбранный сервер.
  • sub.json — кэш скачанной подписки.
  • backups/ — папка для резервных файлов.

Конфиг Xray записывается туда, куда вы указали при настройке. По умолчанию это /etc/xray/config.json.