Envoltorio de escritorio Windows (Tauri 2) para Labstream OS

Cliente delgado que abre os.labstreamsas.com en su propia ventana.
Incluye build por GitHub Actions y guía de versionado.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Este commit está contenido en:
Labstream
2026-06-18 14:14:03 -05:00
commit 922299e2a5
Se han modificado 13 ficheros con 369 adiciones y 0 borrados

20
src-tauri/Cargo.toml Archivo normal
Ver fichero

@@ -0,0 +1,20 @@
[package]
name = "labstream-desktop"
version = "1.0.0"
description = "Cliente de escritorio de Labstream OS"
authors = ["Labstream SAS"]
edition = "2021"
rust-version = "1.77.2"
[lib]
name = "labstream_desktop_lib"
crate-type = ["staticlib", "cdylib", "rlib"]
[build-dependencies]
tauri-build = { version = "2", features = [] }
[dependencies]
tauri = { version = "2", features = [] }
tauri-plugin-opener = "2"
serde = { version = "1", features = ["derive"] }
serde_json = "1"

3
src-tauri/build.rs Archivo normal
Ver fichero

@@ -0,0 +1,3 @@
fn main() {
tauri_build::build()
}

Ver fichero

@@ -0,0 +1,10 @@
{
"$schema": "../gen/schemas/desktop-schema.json",
"identifier": "default",
"description": "Permisos por defecto del envoltorio de escritorio.",
"windows": ["main"],
"permissions": [
"core:default",
"opener:default"
]
}

0
src-tauri/icons/.gitkeep Archivo normal
Ver fichero

12
src-tauri/src/lib.rs Archivo normal
Ver fichero

@@ -0,0 +1,12 @@
// Punto de entrada de la app de escritorio de Labstream OS.
// Es un "envoltorio": la ventana carga directamente el servidor del NAS
// (ver `app.windows[].url` en tauri.conf.json), así que aquí no hay lógica de UI.
// El plugin `opener` permite que los enlaces externos abran el navegador del sistema.
#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {
tauri::Builder::default()
.plugin(tauri_plugin_opener::init())
.run(tauri::generate_context!())
.expect("error al arrancar Labstream OS");
}

6
src-tauri/src/main.rs Archivo normal
Ver fichero

@@ -0,0 +1,6 @@
// Evita que se abra una consola de Windows detrás de la ventana en la build de release.
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
fn main() {
labstream_desktop_lib::run()
}

50
src-tauri/tauri.conf.json Archivo normal
Ver fichero

@@ -0,0 +1,50 @@
{
"$schema": "https://schema.tauri.app/config/2",
"productName": "Labstream OS",
"version": "1.0.0",
"identifier": "co.labstream.os",
"build": {
"frontendDist": "../dist"
},
"app": {
"withGlobalTauri": false,
"windows": [
{
"label": "main",
"title": "Labstream OS",
"url": "https://os.labstreamsas.com",
"width": 1400,
"height": 900,
"minWidth": 1024,
"minHeight": 700,
"resizable": true,
"center": true,
"decorations": true
}
],
"security": {
"csp": null
}
},
"bundle": {
"active": true,
"targets": ["nsis"],
"publisher": "Labstream SAS",
"category": "Productivity",
"shortDescription": "Espacio de trabajo de Labstream",
"longDescription": "Cliente de escritorio de Labstream OS para Windows. Abre el espacio de trabajo de Labstream en su propia ventana.",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
"icons/128x128@2x.png",
"icons/icon.icns",
"icons/icon.ico"
],
"windows": {
"nsis": {
"installMode": "currentUser",
"languages": ["Spanish", "SpanishInternational", "English"]
}
}
}
}