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
This commit is contained in:
2026-06-15 15:43:01 +03:00
parent 8c0aa5b8b3
commit 0553ef7493
2 changed files with 47 additions and 30 deletions

View File

@@ -1,4 +1,4 @@
# xray-sub
# xtui
Небольшой TUI-скрипт для выбора сервера из JSON-подписки Xray.
@@ -21,7 +21,7 @@ chmod +x main.sh
По желанию установите как команду:
```bash
sudo install -m 755 main.sh /usr/local/bin/xray-sub
sudo install -m 755 main.sh /usr/local/bin/xtui
```
## Запуск
@@ -35,7 +35,7 @@ sudo install -m 755 main.sh /usr/local/bin/xray-sub
Если установлено в систему:
```bash
xray-sub
xtui
```
Первый запуск попросит ссылку на JSON-подписку, путь к конфигу Xray и имя systemd-службы.
@@ -43,9 +43,9 @@ xray-sub
Полезные команды:
```bash
xray-sub --setup # заново пройти настройку
xray-sub --refresh # обновить подписку
xray-sub --help # справка
xtui --setup # заново пройти настройку
xtui --refresh # обновить подписку
xtui --help # справка
```
## Что делает
@@ -56,7 +56,7 @@ xray-sub --help # справка
## Где хранит файлы
Пользовательские файлы хранятся в `~/.xray-sub/`:
Пользовательские файлы хранятся в `~/.xtui/`:
- `config` — настройки скрипта и последний выбранный сервер.
- `sub.json` — кэш скачанной подписки.