CLI: inline font download + checksum verification

- Add `fonts download` and `fonts verify` subcommands
- Implement Rust-based downloader (ureq + tar + flate2) with pinned sources
- Verify SHA-256 for Liberation and Noto Sans TTFs for reproducibility
- Keep binary behind `build-bin` feature; library build unaffected
This commit is contained in:
Andy
2025-08-11 15:04:47 +08:00
parent 98c056c3d9
commit d4ebdbf6a9
6 changed files with 170 additions and 38 deletions
+4
View File
@@ -65,6 +65,10 @@ tera = { version = "1.20", optional = true }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
toml = "0.8"
ureq = { version = "2.10", features = ["tls"] }
flate2 = { version = "1.0", features = ["rust_backend"] }
tar = "0.4"
sha2 = "0.10"
# Error handling and logging
anyhow = "1.0"