zed-industries/zed · error
Running on unsupported os: {other}
Error message
Running on unsupported os: {other} What it means
The Go adapter's install path maps consts::OS to a delve-shim-dap asset triple (macos->apple-darwin, linux->unknown-linux-gnu, windows->pc-windows-msvc) from the zed-industries/delve-shim-dap GitHub release. Any other OS bails immediately with 'Running on unsupported os: {other}', before asset lookup, since no shim tarball/zip exists for it.
Source
Thrown at crates/dap_adapters/src/go.rs:51
impl GoDebugAdapter {
const ADAPTER_NAME: &'static str = "Delve";
async fn fetch_latest_adapter_version(
delegate: &Arc<dyn DapDelegate>,
) -> Result<AdapterVersion> {
let release = latest_github_release(
"zed-industries/delve-shim-dap",
true,
false,
delegate.http_client(),
)
.await?;
let os = match consts::OS {
"macos" => "apple-darwin",
"linux" => "unknown-linux-gnu",
"windows" => "pc-windows-msvc",
other => bail!("Running on unsupported os: {other}"),
};
let suffix = if consts::OS == "windows" {
".zip"
} else {
".tar.gz"
};
let asset_name = format!("delve-shim-dap-{}-{os}{suffix}", consts::ARCH);
let asset = release
.assets
.iter()
.find(|asset| asset.name == asset_name)
.with_context(|| format!("no asset found matching `{asset_name:?}`"))?;
Ok(AdapterVersion {
tag_name: release.tag_name,
url: asset.browser_download_url.clone(),
})
}View on GitHub (pinned to f4178619ac)
Solutions
- Do Go debugging from macOS/Linux/Windows where the shim is published
- Skip the shim: configure a locally installed dlv (go install github.com/go-delve/delve/cmd/dlv@latest) as a custom debug adapter command
- Build delve-shim-dap from source on the unsupported OS and point the adapter at it
Defensive patterns
Strategy: validation
Validate before calling
fn go_shim_os_supported() -> bool {
matches!(std::env::consts::OS, "macos" | "linux" | "windows")
} Type guard
fn is_supported_go_shim_os(os: &str) -> bool {
matches!(os, "macos" | "linux" | "windows")
} Prevention
- Prefer a locally installed dlv as the adapter on platforms without a published shim
- Check the OS support matrix before triggering adapter installation
When it happens
Trigger: Zed tries to fetch or update the Go debug adapter (delve shim) on an OS outside {macos, linux, windows} - e.g. freebsd or android - making the formatted asset name 'delve-shim-dap-{arch}-{os}{suffix}' unmatchable.
Common situations: BSD or Android hosts running community Zed builds; cross-environment setups where the debugger install runs on an unsupported platform.
Related errors
- failed to install dlv via `go install`. stdout: {:?}, stderr
- unsupported operating system {unsupported}
- unsupported architecture {unsupported}
- Could not find gdb path or it's not installed
- Request failed: {}
AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20).
Data as JSON: /api/errors/6dcb18c1e942a0c5.
Report an issue: GitHub.