SeleniumHQ/selenium · error · anyhow::Error
Linux arm64 is not supported yet by Google Chrome. Please…
Error message
Linux arm64 is not supported yet by Google Chrome. Please try another browser.
What it means
Hard-failure in ChromeManager::get_driver_url() (the legacy URL-construction path) when the detected OS is Linux and the architecture is ARM64. Google does not publish a chromedriver build for Linux ARM64, so Selenium Manager refuses to fabricate a download URL. The message directs the user to a different browser.
Solutions
- Switch the test target to an x86_64 Linux environment where chromedriver linux64 builds exist.
- Use a Chromium/Chrome build that ships for arm64 and a compatible chromedriver via an external driver path (--driver-path).
- Run on macOS ARM64 (M-series), where mac_arm64 chromedriver builds are available.
- Use Firefox (geckodriver has arm64 support) as the browser instead.
Defensive patterns
Strategy: validation
Validate before calling
# Bash: detect arm64 Linux before invoking Selenium Manager for Chrome if [ "$(uname -s)" = "Linux" ] && [ "$(uname -m)" = "aarch64" ]; then echo "Chrome/chromedriver unavailable on Linux arm64; use Firefox"; exit 1 fi
Try / catch
match selenium_manager.run() {
Ok(path) => path,
Err(e) if e.to_string().contains("Linux arm64 is not supported yet by Google Chrome") => {
eprintln!("Switch to a supported platform or use Firefox on arm64 Linux");
std::process::exit(1);
}
Err(e) => return Err(e),
} Prevention
- Run tests on x86_64 Linux or macOS ARM64 for Chrome.
- Detect arm64 Linux in CI matrix setup and skip/select appropriate browsers.
- Prefer Firefox when arm64 Linux is mandatory.
When it happens
Trigger: Selenium Manager runs on Linux aarch64/arm64 and falls into the driver-URL builder that has no linux_arm64 branch (only linux64). The LINUX.is(os) && ARM64.is(arch) guard at line 422 trips before any network call.
Common situations: Running tests inside an arm64 Docker container (e.g. Apple Silicon-hosted Linux VMs, AWS Graviton); CI on ARM64 Linux workers expecting Chrome; Raspberry Pi clusters.
Related errors
- Linux arm64 is not supported yet by
- Linux arm64 is not supported yet by Microsoft Edge. Please…
- Linux arm64 is not supported yet by
- files are only supported in macOS
- Invalid operating system
AI-assisted analysis of SeleniumHQ/selenium@aa36b38e69 (2026-08-14).
Data as JSON: /api/errors/2e4cd66389df5305.
Report an issue: GitHub.
Appendix: source
Thrown at rust/src/chrome.rs:423
let driver_version = self.get_driver_version();
let os = self.get_os();
let arch = self.get_arch();
let driver_label = if WINDOWS.is(os) {
"win32"
} else if MACOS.is(os) {
if ARM64.is(arch) {
// As of chromedriver 106, the naming convention for macOS ARM64 releases changed. See:
// https://groups.google.com/g/chromedriver-users/c/JRuQzH3qr2c
if major_driver_version < 106 {
"mac64_m1"
} else {
"mac_arm64"
}
} else {
"mac64"
}
} else if LINUX.is(os) && ARM64.is(arch) {
return Err(anyhow!(
"Linux arm64 is not supported yet by Google Chrome. Please try another browser."
));
} else {
"linux64"
};
Ok(format!(
"{}{}/{}_{}.zip",
self.get_driver_mirror_url_or_default(DRIVER_URL),
driver_version,
self.driver_name,
driver_label
))
}
fn get_driver_path_in_cache(&self) -> Result<PathBuf, Error> {
Ok(compose_driver_path_in_cache(
self.get_cache_path()?.unwrap_or_default(),
self.driver_name,View on GitHub (pinned to aa36b38e69)