Release v0.1.0

This commit is contained in:
nikit3s
2026-09-26 21:51:08 +03:00
parent 1975c1ceff
commit 7ac8c78d8b
12 changed files with 317 additions and 52 deletions
+82 -10
View File
@@ -1,23 +1,95 @@
# sb launcher · glass preview
# sb launcher · glass
Отдельный тестовый репозиторий интерфейса для Windows 11. Рабочий `sb_launcher_rev2` не меняется. Это функционирующий лаунчер на WPF/.NET Framework 4.x: выбор и импорт серверов, проверка конфигурации, запуск и остановка sing-box, логи и настройки остались на месте.
Лаунчер для sing-box с интерфейсом WPF. Работает в Windows 10/11 x64 с
.NET Framework 4.x. Поддерживает импорт и выбор серверов, три режима
подключения (`wg`, `direct`, `wgonly`), проверку конфигурации, запуск и остановку
sing-box, логи и светлую/тёмную тему.
Дизайн использует полупрозрачные панели, мягкие градиенты и логотип «щит с арбузом». При подключении кольцо вокруг щита вращается по часовой стрелке; при отключении — обратно. Успешное соединение отмечает короткий световой импульс. Анимации меняют только поворот и прозрачность, без непрерывного размытия фона.
Это отдельный прототип интерфейса; рабочая копия `sb_launcher_rev2` не меняется.
Приложение запрашивает права администратора для настройки сетевых маршрутов.
## Запуск
![Светлая тема](preview/glass-light.png)
В папке уже лежат локальные `profiles.json`, `bin/sb.exe` и `doc/doc.srs` для теста; они не входят в Git. `local.json` создан с пустым приватным ключом. Заполните ключ и локальный адрес на вкладке «Настройки», затем в PowerShell:
[Тёмная тема](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
cd F:\gitea\sb_launcher_glass
Copy-Item .\local.example.json .\local.json
Copy-Item .\profiles.example.json .\profiles.json
cmd /c build.cmd
.\SbLauncher.exe
```
Сборка использует `csc.exe` из установленного .NET Framework 4.x. Запуск основного exe запросит права администратора: они нужны sing-box для сетевых маршрутов. Для проверки интерфейса без запуска сети: `cmd /c build.cmd stress`.
Демонстрационные адреса из `profiles.example.json` не подключаются. Добавьте
свои серверы через импорт или в `profiles.json`, затем укажите приватный ключ
WireGuard, адрес туннеля и сетевой адаптер на вкладке «Настройки». Секреты в
`local.json`, а также серверы в `profiles.json` исключены из Git. Не добавляйте
их в коммиты и релизные архивы.
Для чистого клона скопируйте `profiles.example.json` в `profiles.json` и `local.example.json` в `local.json`, затем добавьте реальные серверы и ключ. Примерные адреса из `profiles.example.json` служат только для демонстрации. Профили и локальные настройки исключены из Git, поскольку могут содержать учётные данные.
Готовый ZIP из релиза распаковывается аналогично: поместите рядом с лаунчером
`bin/sb.exe` и `doc/doc.srs`, скопируйте два файла `.example.json` без слова
`.example` в имени и заполните свои данные. Сборка из исходников для ZIP не нужна.
`build.cmd deploy` принимает явный путь назначения; папка рабочего лаунчера никогда не выбирается по умолчанию.
## Сборка и проверки
Офлайн-превью с демонстрационными адресами: [светлая тема](preview/glass-light.png) и [тёмная тема](preview/glass-dark.png).
```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` ещё не настроен,
сначала добавьте адрес своего удалённого репозитория.