tonhowtf/omniget · error
o whisper.cpp nao publica binario para este sistema; instale
Error message
o whisper.cpp nao publica binario para este sistema; instale com `brew install whisper-cpp` ou aponte o caminho em Configuracoes
What it means
asset_name() maps the current OS/arch to a prebuilt whisper.cpp release asset. whisper.cpp only publishes binary packages for Windows x64 and Linux (Ubuntu x64/arm64); on any other platform (notably macOS) this anyhow! error is returned instead. The message tells the user to install whisper-cpp via Homebrew or point the binary path in the app's Settings (binary_overrides).
Solutions
- On macOS run `brew install whisper-cpp` so locate() finds the system whisper-cli.
- Or set a custom binary path via the app's Configuracoes (binary_overrides for "whisper-cli").
- Check WhisperStatus.can_install / variants before showing an install button; on macOS use the install_hint instead.
- If you need managed installs on a new platform, extend asset_name() with a mapping for that target.
Example fix
// before
let exe = whisper::install("cpu", &progress).await?;
// after
let st = whisper::status().await;
if st.can_install {
let exe = whisper::install("cpu", &progress).await?;
} else {
// macOS path: rely on system whisper-cli installed via brew, or custom override
eprintln!("instale com: {}", st.install_hint);
} Defensive patterns
Strategy: validation
Validate before calling
let st = whisper::status().await;
if !st.can_install {
eprintln!("instale manualmente: {}", st.install_hint); // e.g. "brew install whisper-cpp"
} Try / catch
match whisper::install(variant, &progress).await {
Ok(path) => println!("installed at {}", path.display()),
Err(e) if e.to_string().contains("nao publica binario") => {
// fall back to system whisper-cli / brew install
}
Err(e) => return Err(e),
} Prevention
- Always check WhisperStatus.can_install before offering the install button.
- On macOS prefer locate()/system install over managed install.
- Use install_hint from status() to guide users.
When it happens
Trigger: Calling whisper::install(variant, progress) (or status()->can_install flows that call asset_name) on a platform where neither cfg!(target_os="windows") nor cfg!(target_os="linux") holds — in practice: running the macOS build and clicking install, or a cross-compile to an unsupported target.
Common situations: A macOS user tries the built-in whisper.cpp installer; a CI job cross-compiles the Tauri app for an OS with no upstream release asset; the codebase was updated to a target whisper.cpp no longer ships binaries for.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- o pacote baixado nao contem o whisper-cli
- whisper-cli sumiu depois de mover a pasta
- Failed to move {} into place: {}
- gallery-dl nao tem binario para este sistema
- não existe build oficial do ONNX Runtime para este sistema.
AI-assisted analysis of tonhowtf/omniget@8600b91f42 (2026-09-12).
Data as JSON: /api/errors/1ddedf715d3fb645.
Report an issue: GitHub.
Appendix: source
Thrown at src-tauri/omniget-core/src/core/tools/whisper.rs:174
} else {
vec![]
}
}
fn asset_name(variant: &str) -> anyhow::Result<&'static str> {
Ok(if cfg!(target_os = "windows") {
match variant {
"cuda" => "whisper-cublas-12.4.0-bin-x64.zip",
_ => "whisper-bin-x64.zip",
}
} else if cfg!(target_os = "linux") {
if cfg!(target_arch = "aarch64") {
"whisper-bin-ubuntu-arm64.tar.gz"
} else {
"whisper-bin-ubuntu-x64.tar.gz"
}
} else {
return Err(anyhow!(
"o whisper.cpp nao publica binario para este sistema; instale com `brew install whisper-cpp` ou aponte o caminho em Configuracoes"
));
})
}
pub async fn status() -> WhisperStatus {
let located = locate().await;
let (path, source) = match &located {
Some((p, s)) => (Some(p.clone()), *s),
None => (None, "missing"),
};
let version = match &path {
Some(p) => dependencies::check_version_at_path(p, "whisper-cli").await,
None => None,
};
let v = variants();
WhisperStatus {
installed: path.is_some(),View on GitHub (pinned to 8600b91f42)