You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Improve Linux build stability and model download robustness
Cross-platform build improvements:
- Add Linux-specific linker configuration in Cargo config
- Use bundled whisper-rs-sys bindings to avoid libclang/libLLVM coupling
- Update .envrc for better cross-platform compiler detection
- Add ELF interpreter patching in build.sh for Nix-built binaries
Model downloader improvements:
- Add atomic file operations with temp file cleanup
- Implement proper checksum verification with error recovery
- Add retry logic with exponential backoff for failed downloads
- Clean up stale temporary files before new downloads
- Verify models exist before listing as downloaded
These changes ensure stable builds across different Linux environments
(Nix, system, mixed) and more reliable model downloads.
Fix Windows build by making WHISPER_DONT_GENERATE_BINDINGS target-specific
The WHISPER_DONT_GENERATE_BINDINGS flag was set globally, causing
whisper-rs-sys to use bundled (Linux) bindings on Windows, which led
to compilation errors due to platform-specific struct size mismatches.
Now only Linux and macOS targets use bundled bindings, while Windows
generates bindings at build time as intended.
Fix CI builds by setting WHISPER_DONT_GENERATE_BINDINGS env var
The target-specific environment variables in .cargo/config.toml only
apply when building with explicit --target flags. CI builds without
--target flags don't pick up these settings, causing whisper-rs-sys
to try building from source and fail.
Solution: Set WHISPER_DONT_GENERATE_BINDINGS=1 as an environment
variable in the CI and release workflows for Linux and macOS.
Windows correctly generates bindings at build time and doesn't
need this flag.
Fix CI cache issue preventing WHISPER_DONT_GENERATE_BINDINGS from taking effect
- Update cache key from v1 to v2 to bust old cache
- Add explicit cargo clean -p whisper-rs-sys to force rebuild with correct env
- This ensures whisper-rs-sys uses bundled bindings instead of building from source
fix
Fix TUI default model to use ggml-base.en without .bin extension
The TUI was using 'ggml-base.en.bin' as the default model path, but
the model registry and Rust code use model IDs without file extensions
(e.g., 'ggml-base.en'). This caused the TUI to create configs with
incorrect model paths.
Now matches the Rust default in src/config.rs
Adding readme and uninstall for windows
`build.sh` is a build wrapper for consistent local/release builds across platforms.
92
+
93
+
- It configures platform-specific build environment before calling Cargo.
94
+
- On Linux, it auto-patches the ELF interpreter when binaries are linked against a Nix loader path, preventing runtime failures like missing `libxcb.so.1` on non-Nix userland.
95
+
- It is recommended for developer and release candidate builds, especially on mixed Nix/system environments.
96
+
97
+
For production releases, keep using CI per target OS and artifact verification/signing in addition to `build.sh`.
98
+
91
99
### GPU Acceleration
92
100
93
101
OneVox supports GPU acceleration for whisper.cpp backend:
0 commit comments