xai-org/grok-build · error
Unsupported OS
Error message
Unsupported OS
What it means
Error "Unsupported OS" thrown in xai-org/grok-build.
Source
Thrown at crates/codegen/xai-grok-update/src/auto_update.rs:1001
/// Detect the platform (os, arch) to download binaries for.
///
/// Arch is the compile-time arch with one correction: an x86_64 build on an
/// Apple Silicon host (Rosetta) selects `aarch64`, so every update path —
/// interactive `grok update`, background `--auto` children, the leader's
/// hourly converge, and forced minimum-version installs — converges to the
/// native build instead of perpetuating the translated one. This mirrors
/// install.sh's `hw.optional.arm64` probe; without it, a lingering x86_64
/// process would reinstall x86_64 right over a fresh native install.
pub(crate) fn detect_platform() -> Result<(&'static str, &'static str)> {
let os = if cfg!(target_os = "macos") {
"macos"
} else if cfg!(target_os = "linux") {
"linux"
} else if cfg!(target_os = "windows") {
"windows"
} else {
anyhow::bail!("Unsupported OS");
};
let arch = if cfg!(target_arch = "x86_64") {
"x86_64"
} else if cfg!(target_arch = "aarch64") {
"aarch64"
} else {
anyhow::bail!("Unsupported architecture");
};
Ok((
os,
corrected_arch(os, arch, running_under_rosetta_on_apple_silicon()),
))
}
/// Age past which a leftover `.tmp` download file (or a freshly-renamed
/// versioned binary) is considered abandoned (crashed/killed updater) and
/// safe for `cleanup_old_downloads` to sweep. Generous compared to the
/// longest plausible download (per-request budget isView on GitHub (pinned to bc7f02eddd)
When it happens
Trigger: Thrown at crates/codegen/xai-grok-update/src/auto_update.rs:1001 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of xai-org/grok-build@bc7f02eddd (2026-08-31).
Data as JSON: /api/errors/7e34eef50237732b.
Report an issue: GitHub.