Files
SbLauncher/README.md
T
2026-09-26 21:51:08 +03:00

96 lines
5.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.
# sb launcher · glass
Лаунчер для sing-box с интерфейсом WPF. Работает в Windows 10/11 x64 с
.NET Framework 4.x. Поддерживает импорт и выбор серверов, три режима
подключения (`wg`, `direct`, `wgonly`), проверку конфигурации, запуск и остановку
sing-box, логи и светлую/тёмную тему.
Это отдельный прототип интерфейса; рабочая копия `sb_launcher_rev2` не меняется.
Приложение запрашивает права администратора для настройки сетевых маршрутов.
![Светлая тема](preview/glass-light.png)
[Тёмная тема](preview/glass-dark.png)
## Подготовка
Для сборки нужен `csc.exe` из установленного .NET Framework 4.x. `build.cmd`
использует `%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\csc.exe`; Visual Studio
и .NET SDK не требуются.
Для подключения дополнительно нужны совместимый исполняемый файл sing-box и
файл правил. Они хранятся только локально и в репозиторий или релизный архив
не входят:
```text
bin/sb.exe
doc/doc.srs
```
Из чистого клона создайте локальные настройки и профили:
```powershell
Copy-Item .\local.example.json .\local.json
Copy-Item .\profiles.example.json .\profiles.json
cmd /c build.cmd
.\SbLauncher.exe
```
Демонстрационные адреса из `profiles.example.json` не подключаются. Добавьте
свои серверы через импорт или в `profiles.json`, затем укажите приватный ключ
WireGuard, адрес туннеля и сетевой адаптер на вкладке «Настройки». Секреты в
`local.json`, а также серверы в `profiles.json` исключены из Git. Не добавляйте
их в коммиты и релизные архивы.
Готовый ZIP из релиза распаковывается аналогично: поместите рядом с лаунчером
`bin/sb.exe` и `doc/doc.srs`, скопируйте два файла `.example.json` без слова
`.example` в имени и заполните свои данные. Сборка из исходников для ZIP не нужна.
## Сборка и проверки
```powershell
cmd /c build.cmd # SbLauncher.exe
cmd /c build.cmd importtest # импорт ссылок
cmd /c build.cmd profiletest # сохранение профилей
cmd /c build.cmd stress # нагрузка интерфейса
```
`build.cmd selftest` проверяет локальную конфигурацию и может использовать
текущие профили. `build.cmd deploy "путь"` копирует сборку в явно указанную
тестовую папку; локальный `local.json` в ней не перезаписывается.
## Git и релизы
Основная ветка — `main`. Разработку фиксируйте коммитами в Git. Для очередного
релиза обновите [CHANGELOG.md](CHANGELOG.md), три версии в `Version.cs` и номер
`assemblyIdentity` в `app.manifest`; используйте формат `MAJOR.MINOR.PATCH`.
После этого, например для версии `0.1.1`:
```powershell
git status
git add -A
git diff --cached --stat
git commit -m "Release v0.1.1"
.\release.ps1 -Version 0.1.1
git tag -a v0.1.1 -m "SbLauncher v0.1.1"
```
Перед коммитом проверьте список добавленных файлов: в нём должны быть только
изменения для этого релиза. `release.ps1` требует чистую рабочую копию, запускает сборку и три
проверки, сверяет версию EXE и собирает `dist/SbLauncher-vX.Y.Z-win-x64.zip`
с SHA-256 в соседнем `.sha256`. Архив содержит только приложение, шаблоны,
примеры конфигурации и документацию. Сборка идёт через `build.cmd staged`,
поэтому открытый лаунчер не блокирует выпуск. Для пробного запуска на незакоммиченных
изменениях есть `-AllowDirty`; архив получает суффикс `-dev` с хешем коммита.
При настроенном удалённом репозитории отправьте ветку и тег:
```powershell
git push origin main
git push origin v0.1.1
```
Затем создайте релиз `v0.1.1` в GitHub/Gitea, вставьте заметки из
`CHANGELOG.md` и прикрепите ZIP и `.sha256`. Если `origin` ещё не настроен,
сначала добавьте адрес своего удалённого репозитория.