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

66 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# xtui
Небольшой TUI-скрипт для выбора сервера из JSON-подписки Xray.
## Установка на Arch Linux
Установите зависимости:
```bash
sudo pacman -S --needed bash curl jq coreutils systemd
```
Для действий с системными файлами нужен один из инструментов повышения прав: `sudo`, `doas`, `run0` или `pkexec`.
Сделайте скрипт исполняемым:
```bash
chmod +x main.sh
```
По желанию установите как команду:
```bash
sudo install -m 755 main.sh /usr/local/bin/xtui
```
## Запуск
Из папки проекта:
```bash
./main.sh
```
Если установлено в систему:
```bash
xtui
```
Первый запуск попросит ссылку на JSON-подписку, путь к конфигу Xray и имя systemd-службы.
Полезные команды:
```bash
xtui --setup # заново пройти настройку
xtui --refresh # обновить подписку
xtui --help # справка
```
## Что делает
Скрипт скачивает JSON-подписку, показывает список серверов в терминальном меню, записывает выбранный сервер в конфиг Xray и при необходимости перезапускает службу Xray.
В меню можно выбрать сервер, обновить подписку, а также запустить, остановить, перезапустить службу или посмотреть её статус.
## Где хранит файлы
Пользовательские файлы хранятся в `~/.xtui/`:
- `config` — настройки скрипта и последний выбранный сервер.
- `sub.json` — кэш скачанной подписки.
- `backups/` — папка для резервных файлов.
Конфиг Xray записывается туда, куда вы указали при настройке. По умолчанию это `/etc/xray/config.json`.