Auto-update: download + install + restart
Some checks failed
ci / build-test (push) Has been cancelled
ci / docker-build (push) Has been cancelled
Desktop App / Build Linux (amd64) (push) Has been cancelled
Desktop App / Attach to Release (push) Has been cancelled

- CheckForUpdates binding returns version string if newer available
- InstallUpdate binding downloads zip, extracts, replaces app, restarts
- checkUpdates goroutine polls every 6h, shows dialog with version
- make install copies .app to /Applications
- Update script: quit app → sleep → replace .app → relaunch
This commit is contained in:
2026-07-14 00:22:15 +02:00
parent bcf2b265c5
commit 23535eac25
2 changed files with 164 additions and 36 deletions

View File

@@ -1,4 +1,4 @@
.PHONY: build webhook test test-db lint generate generate-check dev migrate seed export clean tidy ui desktop desktop-package desktop-release
.PHONY: build webhook test test-db lint generate generate-check dev migrate seed export clean tidy ui desktop desktop-package install
BINARY := oikos
GO ?= go
@@ -74,9 +74,10 @@ desktop-package: desktop ## Build + package the desktop app (zip on macOS, tar
esac
@echo "Package: cmd/desktop/build/bin/"
desktop-release: ui ## Build desktop app for macOS arm64 + Linux amd64 (CI target)
@echo "Use 'make desktop-package' for local builds; desktop-release is for CI"
@exit 1
install: desktop-package ## Install to /Applications
rm -rf /Applications/oikos-desktop.app
cp -r cmd/desktop/build/bin/oikos-desktop.app /Applications/
@echo "Installed to /Applications/oikos-desktop.app"
clean:
rm -f $(BINARY)