mirror of
https://github.com/UNITRONIX/BetterDesk.git
synced 2026-09-11 13:49:03 +00:00
323e2f1398
- updateService: enhanced checkGoAvailable() to scan well-known paths (/usr/local/go, /snap, vendored data/go-toolchain, /usr/lib/go-1.x) and return absolute binary path so spawned exec works without PATH. - New installGoToolchain(): dynamically fetches go.dev/dl/?mode=json, picks newest stable >= 1.23.0 for current OS/arch, downloads archive, verifies SHA-256 from manifest, extracts to data/go-toolchain/. - buildGoServer() now uses absolute go path, 600s timeout. - New 'install-go' update strategy + auto-fallback in 'auto' mode: when host has neither Go nor a prebuilt release, the toolchain is installed automatically and compilation proceeds. - New POST /api/settings/updates/install-go endpoint for explicit install (audit-logged, server.config permission gated). - Settings UI: third 'Auto-install Go and compile' radio. Update checkbox is no longer disabled when Go is missing — auto-install is always offered as a fallback. - installUpdate() rewritten as Modal-based phased dialog: Confirmation -> Backup -> Console -> Server -> Restart -> Done. Live phase icons (pending/active/done/error/skipped), progress bar, log pane, completion modal with reload CTA, auto-reload after successful console restart. - New i18n keys (EN+PL): strategy_install_go, auto_strategy, toolchain_*, modal_*, phase_*, confirm_*, etc. - New CSS (.update-progress-modal, .update-phase, .update-progress-log).