Auto-actualización: plugin updater + firma + CI con tauri-action

Al abrir, la app busca en segundo plano una versión nueva en los Releases de GitHub
(latest.json), y si la hay —firmada con nuestra clave— la instala sola y reinicia.

- Cargo/lib.rs: tauri-plugin-updater + check_update() en el arranque (no bloquea).
- tauri.conf.json: bundle.createUpdaterArtifacts=true y plugins.updater con el endpoint
  (releases/latest/download/latest.json) y la clave PÚBLICA de verificación.
- CI: build.yml pasa a tauri-apps/tauri-action, que construye el .exe (Windows) y el
  .dmg universal (macOS), firma los artefactos del updater y publica todo —incluido
  latest.json— en un Release. Requiere los secrets TAURI_SIGNING_PRIVATE_KEY y
  TAURI_SIGNING_PRIVATE_KEY_PASSWORD (la clave privada NO va en el repo).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Este commit está contenido en:
Jonathan David Florez Salomón
2026-07-02 17:29:12 -05:00
padre 8e48d888e2
commit c18438fd9f
Se han modificado 5 ficheros con 509 adiciones y 38 borrados

Ver fichero

@@ -13,9 +13,18 @@
"csp": null
}
},
"plugins": {
"updater": {
"endpoints": [
"https://github.com/Labstream2026/labstream-desktop/releases/latest/download/latest.json"
],
"pubkey": "dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IERDNjE5MUE3NjlGRUMxRjEKUldUeHdmNXBwNUZoM05sZ1lSTDVaalJ6NGU2NUNEQUF3Z211SnhhU0EvWm1VREdlVnM0N0pHS00K"
}
},
"bundle": {
"active": true,
"targets": "all",
"createUpdaterArtifacts": true,
"publisher": "Labstream SAS",
"category": "Productivity",
"shortDescription": "Espacio de trabajo de Labstream",