use crate::error::{invalid_request, UpdateResult};
pub(crate) fn detect_target_candidates() -> UpdateResult<&'static [&'static str]> {
Ok(match (std::env::consts::OS, std::env::consts::ARCH) {
("linux", "x86_64") => &["x86_64-unknown-linux-musl", "x86_64-unknown-linux-gnu"],
("linux", "aarch64") => &["aarch64-unknown-linux-musl", "aarch64-unknown-linux-gnu"],
("macos", "aarch64") => &["aarch64-apple-darwin"],
(os, arch) => {
return Err(invalid_request(format!(
"unsupported platform: {os}-{arch}"
)));
}
})
}