feat: Phase 10 — Service Windows NSSM + cross-compilation Windows

Phase 10 (service.rs):
- install: télécharge NSSM, installe le service 'ImagodWeb' (auto-start, restart on crash)
- uninstall: arrête et supprime le service
- Service configuré avec: démarrage auto, redémarrage sur crash, délai 5s
- Extraction ZIP NSSM intégrée (crate zip, deflate only)

Phase 12 (cross-compilation Windows):
- Cible x86_64-pc-windows-gnu configurée
- Linker mingw-w64
- Corrections compatibilité: Cow→Vec dans clipboard.rs, API zip v2
- Binaire Windows .exe généré (8.1 MB, statique)

Fix: compilation croisée Windows fonctionnelle
This commit is contained in:
2026-06-25 11:35:00 -04:00
parent 0fce8f6727
commit 7936106227
5 changed files with 317 additions and 11 deletions
Generated
+50
View File
@@ -94,6 +94,15 @@ version = "1.0.102"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
[[package]]
name = "arbitrary"
version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1"
dependencies = [
"derive_arbitrary",
]
[[package]]
name = "arboard"
version = "3.6.1"
@@ -478,6 +487,17 @@ version = "2.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8"
[[package]]
name = "derive_arbitrary"
version = "1.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.118",
]
[[package]]
name = "digest"
version = "0.10.7"
@@ -1296,6 +1316,7 @@ dependencies = [
"tracing-subscriber",
"tray-icon",
"windows-sys 0.59.0",
"zip",
]
[[package]]
@@ -3645,12 +3666,41 @@ dependencies = [
"syn 2.0.118",
]
[[package]]
name = "zip"
version = "2.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fabe6324e908f85a1c52063ce7aa26b68dcb7eb6dbc83a2d148403c9bc3eba50"
dependencies = [
"arbitrary",
"crc32fast",
"crossbeam-utils",
"displaydoc",
"flate2",
"indexmap",
"memchr",
"thiserror 2.0.18",
"zopfli",
]
[[package]]
name = "zmij"
version = "1.0.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa"
[[package]]
name = "zopfli"
version = "0.8.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249"
dependencies = [
"bumpalo",
"crc32fast",
"log",
"simd-adler32",
]
[[package]]
name = "zune-core"
version = "0.5.1"