bruno
8ddee212e5
feat(desktop): manifeste de mise a jour latest.json + builds locaux signes ( #77 )
...
CI / lint (push) Successful in 1m7s
CI / security (push) Successful in 43s
CI / test (push) Successful in 2m12s
CI / build (push) Successful in 42s
CI / e2e (push) Successful in 10m43s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
- scripts/updater_manifest.py : construit latest.json (version, pub_date, platforms Windows/Linux avec signature .sig et URLs des assets).
- publish_release.py : genere latest.json, upload des .sig + latest.json, rappel de commit.
- tauri.conf.json : endpoint updater -> raw/branch/main/desktop/latest.json.
- build-windows.bat / build-linux.sh : detection automatique de obsigate-updater.key (signature) ou repli non signe.
- .gitignore : ignore desktop/key/ ; tests/test_updater_manifest.py (8 tests).
2026-09-12 10:01:56 -04:00
bruno
c9733b944a
feat: preparation release v2.0.0 - guide dev/releases, script publication Gitea, build NSIS+MSI
CI / lint (push) Successful in 35s
CI / security (push) Successful in 22s
CI / test (push) Successful in 37s
CI / build (push) Successful in 13s
CI / e2e (push) Successful in 5m40s
Desktop Build / build-windows (push) Canceled after 0s
Desktop Build / build-linux (push) Canceled after 0s
2026-08-25 21:21:51 -04:00
bruno
19c987585a
fix: build NSIS uniquement (currentUser, pas de droits admin) + console cachée
...
CI / lint (push) Successful in 28s
CI / security (push) Successful in 15s
CI / test (push) Successful in 29s
CI / build (push) Successful in 9s
CI / e2e (push) Failing after 19s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- --bundles nsis seulement (le .msi WiX ignore installMode: currentUser)
- L'installeur NSIS installe dans %LOCALAPPDATA%\Programs\ObsiGate\ sans admin
- La console: déjà gérée par cfg_attr windows_subsystem + CREATE_NO_WINDOW
2026-07-27 10:49:35 -04:00
bruno
004bf6f10b
fix: bundle MSI — copier backend/frontend dans desktop/ avant build Tauri
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 14s
CI / test (push) Successful in 27s
CI / build (push) Successful in 6s
CI / e2e (push) Failing after 23s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- tauri.conf.json: resources: backend/**/* + frontend/**/* (local, pas ../)
- build-windows.bat: étape 2b copie backend+frontend dans desktop/, clean après build
- .gitignore: desktop/backend/ + desktop/frontend/
2026-07-26 16:50:46 -04:00
bruno
bbf23df6ab
fix: taskkill au début du script (étape 0) avant de toucher python-embed
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 15s
CI / test (push) Successful in 29s
CI / build (push) Successful in 7s
CI / e2e (push) Failing after 23s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
Évite 'os error 32' quand Tauri essaie de lire python-embed/ pour le bundle
alors que le processus Python du run précédent verrouille les .pyd
2026-07-26 16:04:06 -04:00
bruno
0a560d5f7b
fix: double tray icon + bundle resources pour MSI
...
CI / lint (push) Successful in 23s
CI / security (push) Successful in 14s
CI / test (push) Successful in 27s
CI / build (push) Successful in 6s
CI / e2e (push) Failing after 20s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- tauri.conf.json: supprimer trayIcon (géré par build_tray_menu dans main.rs → plus de double icône)
- tauri.conf.json: ajouter bundle.resources (python-embed/**, ../backend/**, ../frontend/**)
- build-windows.bat: echo ..>> dans _pth AVANT build Tauri (pour que le bundle ait le bon sys.path)
2026-07-26 14:57:32 -04:00
bruno
ae6b997b72
fix: nettoyer warning state_clone + xcopy /Y + taskkill avant copie runtime
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 13s
CI / test (push) Successful in 27s
CI / build (push) Successful in 6s
CI / e2e (push) Failing after 27s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- main.rs: supprimer state_clone unused dans restart_backend
- build-windows.bat: taskkill /F python.exe avant xcopy (évite Access denied)
- build-windows.bat: /Y sur xcopy (pas de prompt interactif)
- build-windows.bat: 2>nul sur rmdir (silencieux si dossier absent)
2026-07-26 14:11:54 -04:00
bruno
ed50aef6f7
Enable tray icon and fix build scripts
CI / lint (push) Successful in 25s
CI / security (push) Successful in 15s
CI / test (push) Successful in 30s
CI / build (push) Successful in 14s
CI / e2e (push) Failing after 25s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
2026-07-26 12:41:29 -04:00
bruno
1b4a6ff0cf
fix: ensurepip pour Python embed + CSP autorise 127.0.0.1
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 14s
CI / test (push) Successful in 28s
CI / build (push) Successful in 11s
CI / e2e (push) Failing after 35s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- build-windows.bat: ajouter python -m ensurepip --upgrade (Python embed n'a pas pip)
- tauri.conf.json: ajouter http://127.0.0.1 :* dans toutes les directives CSP
Sans ça, 'self' = schéma tauri://, pas le backend local → CSS/images bloqués
2026-07-26 11:32:43 -04:00
bruno
99fa464dca
fix: build-windows.bat — forcer réinstall pip deps + retirer plugins.shell.scope
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 14s
CI / test (push) Successful in 28s
CI / build (push) Successful in 7s
CI / e2e (push) Failing after 35s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- build-windows.bat: supprimer python-embed/ à chaque build (plus de skip si python.exe existe)
Sans ça, uvicorn manquait car installé une seule fois puis jamais recopié
- tauri.conf.json: retirer plugins.shell.scope — déprécié en Tauri v2, géré par capabilities
2026-07-26 11:23:55 -04:00
bruno
fd41175ad8
fix: revue complète obsigate-desktop — 6 correctifs pour le prochain build
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 13s
CI / test (push) Successful in 27s
CI / build (push) Successful in 9s
CI / e2e (push) Failing after 26s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
1. main.rs: .current_dir(exe_dir) pour que Python trouve backend/ (pas le cwd hérité)
2. build-windows.bat: dir bundles pointe vers target/x86_64-.../release (était target/release)
3. build-windows.bat: supprimer étape 3 inutile (frontend-static) — Tauri utilise ../frontend
4. capabilities/default.json: requis par Tauri v2 (permissions plugins)
5. tauri.conf.json + Cargo.toml: retirer updater (placeholder sans clé)
6. .gitignore: ajouter desktop/target/, python-embed/, frontend-static/
7. build-linux.sh: mêmes corrections (bundles path, simplification)
2026-07-26 11:06:53 -04:00
bruno
fc93f550e0
fix: résoudre python-embed relativement à l'exe + copier runtime dans output dir
...
CI / lint (push) Successful in 30s
CI / security (push) Successful in 16s
CI / test (push) Successful in 29s
CI / build (push) Successful in 8s
CI / e2e (push) Failing after 42s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- main.rs: utiliser current_exe().parent() au lieu de ./ relatif au cwd
- build-windows.bat: étape 5b qui copie python-embed/ et backend/ dans target/release
2026-07-26 11:02:57 -04:00
bruno
7f24fe7d01
fix: build Windows — nettoyer python-embed avant extraction + supprimer champs NSIS invalides
...
CI / lint (push) Successful in 29s
CI / security (push) Successful in 18s
CI / test (push) Successful in 29s
CI / build (push) Successful in 8s
CI / e2e (push) Failing after 16s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- build-windows.bat: rmdir python-embed avant téléchargement (évite conflit Expand-Archive)
- tauri.conf.json: retirer shortcutName et createDesktopShortcut (n'existent pas dans NsisConfig Tauri v2)
2026-07-26 10:32:52 -04:00
bruno
29d1332178
fix: build Windows — URL Python embed 3.11.9 + supprimer wix:null conflit Tauri v2
...
CI / lint (push) Successful in 24s
CI / security (push) Successful in 14s
CI / test (push) Successful in 28s
CI / build (push) Successful in 6s
CI / e2e (push) Failing after 19s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled
- build-windows.bat: Python 3.11.15→3.11.9 (dernière version avec binaires embed)
- tauri.conf.json: supprimer "wix": null (causait conflit anyOf avec nsis dans Tauri v2)
2026-07-26 10:25:32 -04:00
bruno
db72e6f055
feat: Tauri desktop shell — Rust backend + config files + build scripts
...
CI / lint (push) Successful in 30s
CI / security (push) Successful in 13s
CI / test (push) Successful in 27s
CI / build (push) Successful in 5s
CI / e2e (push) Failing after 13s
- desktop/Cargo.toml: Tauri + plugins (dialog, notification, fs, updater)
- desktop/tauri.conf.json: Windows (.msi/.nsis) + Linux (.deb/.AppImage) config
- desktop/src/main.rs: spawn Python backend, health check, tray icon, commands
- desktop/build.rs: Tauri build hook
- desktop/python-embed/sidecar.py: uvicorn launcher with port auto-detect
- build-windows.bat: automated Windows build with Python embed download
- build-linux.sh: automated Linux build with venv
- desktop/README.md: architecture doc + usage guide
- desktop/validate-structure.sh: CI validation script
- ROADMAP.md: #77 Tauri Desktop section added
2026-07-24 18:01:33 -04:00