Document fresh-clone install, update, and disable/uninstall steps in README
This commit is contained in:
@@ -54,23 +54,86 @@ GNOME, используя встроенный **Clash API**.
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
## Установка (из исходников)
|
## Установка
|
||||||
|
|
||||||
|
Полная последовательность после свежего `git clone` (в репозитории нет собранной
|
||||||
|
схемы — её нужно скомпилировать локально, шаг 3):
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
# 1. Клонировать репозиторий
|
||||||
|
git clone https://git.vakhrushev.me/av/sing-box-gnome-extension.git
|
||||||
|
cd sing-box-gnome-extension
|
||||||
|
|
||||||
|
# 2. Установить как пользовательское расширение. Симлинк на клон удобен тем, что
|
||||||
|
# обновления затем подтягиваются простым `git pull` (не удаляйте каталог клона).
|
||||||
UUID="sing-box-status@git.vakhrushev.me"
|
UUID="sing-box-status@git.vakhrushev.me"
|
||||||
|
mkdir -p "$HOME/.local/share/gnome-shell/extensions"
|
||||||
ln -s "$PWD" "$HOME/.local/share/gnome-shell/extensions/$UUID"
|
ln -s "$PWD" "$HOME/.local/share/gnome-shell/extensions/$UUID"
|
||||||
|
|
||||||
|
# 3. Скомпилировать схему GSettings (обязательно: gschemas.compiled не хранится в git)
|
||||||
glib-compile-schemas schemas/
|
glib-compile-schemas schemas/
|
||||||
# На Wayland: выйдите из сессии и войдите снова, чтобы shell зарегистрировал
|
|
||||||
# новое расширение, затем:
|
# 4. Перезапустить GNOME Shell, чтобы он увидел новое расширение:
|
||||||
|
# X11 — Alt+F2, ввести «r», Enter
|
||||||
|
# Wayland — выйти из сессии и войти снова (перезапуск на лету невозможен)
|
||||||
|
|
||||||
|
# 5. Включить расширение
|
||||||
gnome-extensions enable "$UUID"
|
gnome-extensions enable "$UUID"
|
||||||
```
|
```
|
||||||
|
|
||||||
Откройте **Settings** из меню (или `gnome-extensions prefs "$UUID"`) и задайте:
|
Вместо симлинка можно скопировать файлы
|
||||||
|
(`cp -r . "$HOME/.local/share/gnome-shell/extensions/$UUID"`), но тогда каждое
|
||||||
|
обновление придётся копировать заново.
|
||||||
|
|
||||||
|
Проверить состояние:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
gnome-extensions info sing-box-status@git.vakhrushev.me # ENABLED / DISABLED / ошибки
|
||||||
|
```
|
||||||
|
|
||||||
|
После включения откройте **Settings** из меню расширения (или
|
||||||
|
`gnome-extensions prefs "$UUID"`) и задайте:
|
||||||
|
|
||||||
- **API URL** — например `http://127.0.0.1:9090` (ваш `external_controller`);
|
- **API URL** — например `http://127.0.0.1:9090` (ваш `external_controller`);
|
||||||
- **Secret** — ваш `clash_api.secret`;
|
- **Secret** — ваш `clash_api.secret`;
|
||||||
- **Dashboard URL** — например `http://127.0.0.1:9091`.
|
- **Dashboard URL** — например `http://127.0.0.1:9091`.
|
||||||
|
|
||||||
|
### Обновление
|
||||||
|
|
||||||
|
```sh
|
||||||
|
cd sing-box-gnome-extension && git pull
|
||||||
|
glib-compile-schemas schemas/ # если менялась схема
|
||||||
|
# перезапуск GNOME Shell (см. шаг 4) — на Wayland через перелогин
|
||||||
|
```
|
||||||
|
|
||||||
|
## Отключение и удаление
|
||||||
|
|
||||||
|
Временно **отключить** (расширение остаётся установленным, настройки сохраняются):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
gnome-extensions disable sing-box-status@git.vakhrushev.me
|
||||||
|
```
|
||||||
|
|
||||||
|
Снова **включить**:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
gnome-extensions enable sing-box-status@git.vakhrushev.me
|
||||||
|
```
|
||||||
|
|
||||||
|
Отключать и включать можно и через GUI — приложение **Extensions** («Расширения»)
|
||||||
|
или **Extension Manager**.
|
||||||
|
|
||||||
|
Полностью **удалить**:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
UUID="sing-box-status@git.vakhrushev.me"
|
||||||
|
gnome-extensions disable "$UUID"
|
||||||
|
rm "$HOME/.local/share/gnome-shell/extensions/$UUID" # симлинк (или каталог при копировании)
|
||||||
|
dconf reset -f /org/gnome/shell/extensions/sing-box-status/ # необязательно: сбросить настройки
|
||||||
|
```
|
||||||
|
|
||||||
|
На Wayland индикатор из панели исчезнет после перелогина.
|
||||||
|
|
||||||
## Как это работает
|
## Как это работает
|
||||||
|
|
||||||
Каждые *N* секунд (по умолчанию 2) расширение опрашивает две точки Clash API:
|
Каждые *N* секунд (по умолчанию 2) расширение опрашивает две точки Clash API:
|
||||||
|
|||||||
Reference in New Issue
Block a user