{"record":{"id":"0bd717a64bd262af","repo":"tonhowtf/omniget","slug":"o-spicetify-nao-publica-binario-para-linux-nesta-arquitetura","errorCode":null,"errorMessage":"o Spicetify nao publica binario para Linux nesta arquitetura; instale pelo gerenciador de pacotes","messagePattern":"o Spicetify nao publica binario para Linux nesta arquitetura; instale pelo gerenciador de pacotes","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src-tauri/omniget-core/src/core/spicetify.rs","lineNumber":460,"sourceCode":"fn cli_asset_suffix() -> anyhow::Result<&'static str> {\n    Ok(if cfg!(target_os = \"windows\") {\n        if cfg!(target_arch = \"aarch64\") {\n            \"windows-arm64.zip\"\n        } else if cfg!(target_pointer_width = \"32\") {\n            \"windows-x32.zip\"\n        } else {\n            \"windows-x64.zip\"\n        }\n    } else if cfg!(target_os = \"macos\") {\n        if cfg!(target_arch = \"aarch64\") {\n            \"darwin-arm64.tar.gz\"\n        } else {\n            \"darwin-amd64.tar.gz\"\n        }\n    } else if cfg!(target_arch = \"x86_64\") {\n        \"linux-amd64.tar.gz\"\n    } else {\n        return Err(anyhow!(\n            \"o Spicetify nao publica binario para Linux nesta arquitetura; instale pelo gerenciador de pacotes\"\n        ));\n    })\n}\n\nfn unpack_zip(data: &[u8], dest: &Path) -> anyhow::Result<()> {\n    let mut archive = zip::ZipArchive::new(std::io::Cursor::new(data))\n        .map_err(|e| anyhow!(\"zip invalido: {}\", e))?;\n    for i in 0..archive.len() {\n        let mut file = archive.by_index(i)?;\n        let Some(rel) = file.enclosed_name() else {\n            continue;\n        };\n        let out = dest.join(rel);\n        if file.is_dir() {\n            std::fs::create_dir_all(&out)?;\n            continue;\n        }","sourceCodeStart":442,"sourceCodeEnd":478,"githubUrl":"https://github.com/tonhowtf/omniget/blob/8600b91f4246848bac346874daa9e61c1fc5677a/src-tauri/omniget-core/src/core/spicetify.rs#L442-L478","documentation":"`cli_asset_suffix` maps the current target OS/arch to the Spicetify CLI release asset suffix. On Linux, only x86_64 is supported; any other Linux architecture (ARM, ARM64, etc.) returns this error advising installation via the system package manager instead.","triggerScenarios":"Calling `install()` on a Linux machine whose `target_arch` is not `x86_64` — e.g. Raspberry Pi (arm), ARM64 laptops/servers, or cross-compilation targeting non-amd64 Linux.","commonSituations":"Running the app on a Raspberry Pi or ARM Chromebook; aarch64 Linux servers; trying the Spicetify installer on Linux/ARM where upstream publishes no binary.","solutions":["On x86_64 Linux, no action needed — this error shouldn't occur; verify build target (`uname -m`)","On Linux ARM/ARM64, install spicetify-cli via the distribution package manager or build from source per spicetify docs","Run the app on an x86_64 machine or under x86_64 emulation if spicetify integration is required","Check upstream spicetify releases — if ARM binaries appear later, update `cli_asset_suffix`"],"exampleFix":"// before\nlet suffix = cli_asset_suffix()?; // hard error on linux-arm\n// after\nlet suffix = match cli_asset_suffix() {\n    Ok(s) => s,\n    Err(_) => return Err(anyhow!(\"use system package: `sudo apt install spicetify-cli` or build from source\")),\n};","handlingStrategy":"validation","validationCode":"fn spicetify_supported() -> bool {\n    !cfg!(target_os = \"linux\") || cfg!(target_arch = \"x86_64\")\n}\nif !spicetify_supported() { eprintln!(\"spicetify CLI not available on this platform\"); }","typeGuard":null,"tryCatchPattern":"match install().await {\n    Err(e) if e.to_string().contains(\"nao publica binario\") => {\n        show_hint(\"Install spicetify via your package manager, then retry.\");\n    }\n    other => other,\n}","preventionTips":["Gate Spicetify features on `(OS, ARCH)` support before showing UI affordances","Provide a package-manager install path for unsupported Linux arches","Re-check upstream releases periodically for newly published ARM binaries"],"tags":["platform","unsupported-architecture","linux"],"backgroundTag":"unsupported-platform","analyzedSha":"8600b91f4246848bac346874daa9e61c1fc5677a","analyzedAt":"2026-09-12T14:29:19.317Z","contentChangedAt":"2026-09-12T14:29:19.317Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}