Scaffold overlay для преднастроенного RustDesk-клиента
Тонкая обвязка поверх rustdesk@1.4.9: preconfigure.sh патчит RENDEZVOUS_SERVERS+RS_PUB_KEY в hbb_common, build-windows.ps1 — локальный оркестратор сборки. Значения сервера/ключа не в репо (config/server.env в .gitignore, в CI — gitea secrets). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# rustdesk-custom
|
||||
|
||||
Тонкий overlay поверх [RustDesk](https://github.com/rustdesk/rustdesk): собирает **преднастроенный**
|
||||
клиент RustDesk, из коробки указывающий на свой self-hosted сервер (hbbs/hbbr). Сам код RustDesk сюда
|
||||
не форкается — апстрейт клонируется в CI по пину и патчится минимальным скриптом.
|
||||
|
||||
## Как это работает
|
||||
|
||||
RustDesk в 1.4.9 хранит адрес сервера и публичный ключ как **хардкод-константы** в сабмодуле `hbb_common`
|
||||
(`RENDEZVOUS_SERVERS`, `RS_PUB_KEY` в `libs/hbb_common/src/config.rs`). Старого механизма `option_env!`
|
||||
в актуальном master нет. Поэтому преднастройка = патч этих двух констант перед сборкой
|
||||
([`scripts/preconfigure.sh`](scripts/preconfigure.sh)).
|
||||
|
||||
Значения (адрес сервера, ключ) **не хранятся в этом публичном репозитории**:
|
||||
- локально — в `config/server.env` (в `.gitignore`);
|
||||
- в CI — в gitea Actions secrets.
|
||||
|
||||
## Быстрый старт (локально, Windows)
|
||||
|
||||
```powershell
|
||||
copy config\server.env.example config\server.env # заполнить RUSTDESK_SERVER / RUSTDESK_PUB_KEY
|
||||
pwsh -File scripts\build-windows.ps1
|
||||
```
|
||||
|
||||
Тулчейн (Rust 1.75, LLVM 15.0.6, Flutter 3.24.5, vcpkg@пин) нужно поднять один раз — см.
|
||||
[docs/CODEMAP.md](docs/CODEMAP.md). Первая сборка долгая: vcpkg компилит ffmpeg/aom из исходников.
|
||||
|
||||
## Пины
|
||||
|
||||
Все версии зафиксированы в [`upstream.txt`](upstream.txt) (правило проекта: никаких `latest`).
|
||||
Обновление RustDesk = поднять `RUSTDESK_TAG` и сверить остальные пины с новым `flutter-build.yml` апстрима.
|
||||
|
||||
## Платформы
|
||||
|
||||
- **Windows** — локально на GUSIK-PC + CI-раннер `windows:host`.
|
||||
- **Android** — CI на build-VM 118 (NDK r28c, cargo-ndk 3.1.2), раздача APK как в GusVoice
|
||||
(gitea release + self-hosted F-Droid).
|
||||
|
||||
## Лицензия
|
||||
|
||||
RustDesk распространяется под AGPL-3.0. Собранные этим overlay бинарники — производная работа RustDesk
|
||||
и подчиняются AGPL-3.0. Скрипты этого репозитория — тонкая обвязка сборки.
|
||||
Reference in New Issue
Block a user