e2d2fd9fa2
- Tauri-2-Admin-UI fuer den Rapport-Compose-Stack - React-Frontend (JSX, kein TS) mit Material-Symbols-Icons - Service-Cards mit Live-Stats (CPU/RAM), Logs, Restart/Stop - Backup-/Restore-System mit pg_dumpall + Retention - Container-Auto-Updates mit Pre-Backup - App-Auto-Updater (Tauri signiert) gegen latest.json im Repo-Root - HTTPS-WebUI (axum/rustls) mit Basic-Auth, CSRF, Rate-Limit, Security-Headers - Setup-Wizard: lädt Docker+Colima+Lima direct von GitHub/docker.com nach ~/.rapport/bin/ - Tray-Modus + macOS-Notifications + Auto-Recovery - Login-Item via tauri-plugin-autostart
Service-Binaries
Plattform-spezifische Binaries fuer alle gebundleten Rapport-Server-Services.
Diese Verzeichnisse sind leer im Repo — sie werden vor jedem Build via
scripts/download-binaries.sh gefuellt.
Pinning erfolgt ueber manifest.json.
Layout
binaries/
├── macos-aarch64/
│ ├── postgres
│ ├── gotrue
│ ├── postgrest
│ ├── realtime
│ ├── storage-api
│ ├── kong
│ └── nginx
├── macos-x86_64/ (gleiche Struktur)
├── linux-x86_64/ (gleiche Struktur)
└── windows-x86_64/ (.exe-Endungen)
Wie es zur Laufzeit funktioniert
tauri.conf.json listet ../binaries/**/* unter bundle.resources —
dadurch wandert das gesamte binaries/-Verzeichnis ins App-Bundle unter
Resources/binaries/. Zur Laufzeit loest src-tauri/src/paths.rs
den plattform-passenden Subpfad auf und der Supervisor spawnt von dort.
Binaries selbst bauen
Postgres und Kong haben offizielle Builds. Bei den Supabase-Komponenten (GoTrue, PostgREST, Realtime, Storage) ziehen wir die Releases von GitHub. Realtime-aarch64 ist die offene Frage — siehe ARCHITECTURE.md §12.