Build geckodriver for aarch64 on Linux
Categories
(Testing :: geckodriver, enhancement, P3)
Tracking
(firefox106 fixed)
Tracking | Status | |
---|---|---|
firefox106 | --- | fixed |
People
(Reporter: whimboo, Assigned: glandium)
References
()
Details
Attachments
(1 file)
Originally filed as https://github.com/mozilla/geckodriver/issues/1956
Similar to bug 1534461 which is for Windows we should consider building geckodriver for linux aarch64.
As for now @jamesmortensen has setup an unofficial repository for such binaries and that can be found at:
https://github.com/jamesmortensen/geckodriver-arm-binaries/releases/
Reporter | ||
Comment 1•3 years ago
|
||
Given the GitHub statistics there are (only) 217 downloads for the 0.31.0 release:
https://hanadigital.github.io/grev/?user=jamesmortensen&repo=geckodriver-arm-binaries
Hi @whimboo. Thank you for creating this issue in Bugzilla. I want to add that the arm64 and armv7l geckodriver is used in both of the Selenium docker images seleniarm/standalone-firefox and seleniarm/node-firefox. Here are links to the stats for these images:
https://hub.docker.com/v2/repositories/seleniarm/standalone-firefox/
- 43,355 total pulls since Feb 15, 2021
https://hub.docker.com/v2/repositories/seleniarm/node-firefox/
- 2,138 total pulls since Feb 15th, 2021
Most of the downloads from geckodriver-arm-binaries may be from us building these docker container images, which are then downloaded via Docker Hub by Mac M1 and Raspberry Pi users, or those using an arm-based CI platform.
Hope this information is helpful.
I want to add that, before the creation on geckodriver-arm-binaries, we either built geckodriver along with the image build process, which made it harder for users to build the images on their own, or we hacked a copy out of an Ubuntu deb package, which relied on an Ubuntu maintainer keeping arm geckodriver up to date. Hope this helps.
Reporter | ||
Comment 4•2 years ago
|
||
Thank you for providing these stats! We will discuss in one of our next meetings in how to proceed. But it also shows that we most likely only want to support the aarch64 binary as the bug got filed for.
Reporter | ||
Comment 5•2 years ago
|
||
Hi Mike, do you think that it will be easy to extend our current geckodriver toolchain task to also generate signed geckodriver binaries for Linux aarch64? Thanks.
Should I open a separate bug for armhf/armv7? People request that platform as well so they can run Selenium Grid on Raspberry Pi. This would completely eliminate the need for https://github.com/jamesmortensen/geckodriver-arm-binaries when building docker-seleniarm. https://github.com/seleniumhq-community/docker-seleniarm
Reporter | ||
Comment 7•2 years ago
|
||
All most recent Raspberry Pi devices including the Zero 2 support the aarch64 architecture. As such the usage of the 32bit Raspberry OS should decrease and we do not see a reason at the moment to support that. But also users might want to get the aarch64 binaries (docker image) because more and more of them are migrating to Apple M1 machines. But those are running the aarch64 architecture as well.
In regards of generating a docker image cargo install geckodriver
can be used. And yes we are aware that this requires extra steps to setup the Rust toolchain and probably remove it afterward again.
Assignee | ||
Comment 8•2 years ago
|
||
Updated•2 years ago
|
Reporter | ||
Comment 9•2 years ago
|
||
@jmort253 could you please check if the following build works for you on an aarch64 device?
Thanks!
Reporter | ||
Comment 10•2 years ago
|
||
I've tried to run the referenced binary on my own Raspberry PI 4 and it works fine.
Comment 11•2 years ago
|
||
Comment 12•2 years ago
|
||
@whimboo it passes our Selenium smoke tests. So far so good.
- https://app.circleci.com/pipelines/github/seleniumhq-community/docker-seleniarm/214/workflows/eafb2e27-2386-4347-8bbf-9aa026edf4b1
- https://github.com/seleniumhq-community/docker-seleniarm/commit/6c94a1a540d1f101b1ad43a5c10c3e0c05833f3a
Will you be publishing the aarch64 one in the mozilla/geckodriver repo for 0.31.0 or will it happen for the next version only?
Thank you!
Reporter | ||
Comment 13•2 years ago
|
||
Great to hear that! Yes, you will have to wait for the next geckodriver release, but this might happen soon.
Comment 14•2 years ago
|
||
bugherder |
Comment 15•2 years ago
|
||
@whimboo is it safe to use the treeherder link in production, or should we wait for 0.32.0? Thank you.
Reporter | ||
Comment 16•2 years ago
|
||
(In reply to jmort253 from comment #15)
@whimboo is it safe to use the treeherder link in production, or should we wait for 0.32.0? Thank you.
Please wait for the official release of geckodriver 0.32.0, but feel free to use the nightly build in your own environment.
Description
•