Request: Windows on ARM (ARM64) CI Image Support

Hello everyone,

We would like to request Windows on ARM (ARM64) CI image support.

Currently, freedesktop projects like Cairo use the Windows x64 CI images provided by GStreamer. With the growing adoption of Windows on ARM devices, adding a Windows ARM64 CI image would help projects add native WoA build and test jobs.

Are there any existing efforts in this direction, or plans to support this?
If so, how can we help take this forward?

Thanks for your time.

Hi Harish. There are no active efforts in this direction. We do support cross-compiling to Windows ARM64 starting with GStreamer 1.28.0, but we do not have CI for it.

Happy to discuss if your company wants to sponsor another Windows runner. That should allow us to add CI that builds for WoARM64.

We would also like to run our extensive tests on Windows, and any help towards that is also appreciated.

Thank you for the clarification.

If we were to ship a Windows ARM64 laptop, could you please confirm whether this would enable support for a Windows ARM64 CI image? Based on that, I will discuss internally with my team and get back to you.

I think we would really want something that runs in a datacenter.

Not sure if it would be possible to install windows on e.g. Hetzner arm64 cloud instances, would probably need some fiddling (reddit thread from a while back).

Like Tim said, a Windows ARM64 laptop wouldn’t help with CI, because unless it’s in a datacenter it will be subject to frequent outages: internet outage, power outage, random failures that require manual intervention (and the owner isn’t around), someone closed the lid…

If you have access to such machines, that would be ideal.

However, a Windows ARM64 laptop would help with generating better WoARM64 binaries as part of our release process. We will be able to ship with language bindings support, and also ship Python wheels that work on WoARM64. If that is of interest, I am happy to accept a Windows ARM64 laptop.

Thanks for the explanation.

I came across a recent GitLab Runner merge request related to Windows ARM64 support (MR 6033), and wanted to check whether this would help in any way toward enabling Windows ARM64 CI on your side.

According to Docker-windows-executor runner support for Windows ARM64 (#39182) · Issues · GitLab.org / gitlab-runner · GitLab, there is a workaround:

Current workaround used is to build a custom helper-image based on servercore:ltsc2025-arm64, and this works.

So fixing that will make things more convenient, but the biggest blocker is simply availability of datacenter-hosted hardware for the CI.

Thanks for the response.

Our primary goal is to enable a Windows on ARM (ARM64) CI image so that projects such as Cairo can run native WoA build and test jobs within the CI environment. We understand that CI requires stable, always-on infrastructure. We have explored the Qualcomm Device Cloud (QDC), which is available 24/7 and allows remote access (including GUI access), while also supporting sequential execution of CI jobs in the background via self-hosted device.

If this type of setup is suitable for hosting a CI image, we can explore the possibility of allocating such a machine to help enable a Windows ARM64 CI image and runner.

Please let us know if this approach would work, or if there are specific requirements or constraints that we should consider.

Runners on QDC can work. The next questions are sysadmin and maintenance related. Maybe you’d like to talk on Matrix for that? https://matrix.to/#/#ci:gstreamer.org or send me an email.

Thanks for your response.
I’ve reached out to you via email for further discussion. Looking forward to your response.

Hi Nirbheek,

I sent an email to nirbheek.chauhan@gmail.com regarding the Windows ARM64 CI discussion. It may have landed in your spam or junk folder, could you please check and let me know?

Thanks.