You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Therefore, I would like to request support. Unfortunately Github is not providing Windows ARM runners out-of-the-box. My company TableCheck would be happy to provide self-hosted Windows ARM runners until Github gives official support if it helps.
I forgot, Windows is a bit special, setup-ruby uses RubyInstaller, like the README says. https://rubyinstaller.org/downloads/ does not seem to have arm64 builds, so that needs to happen first (feel free to file an issue there).
Once that is done I think we could support windows arm64 easily in setup-ruby, whether self hosted or not because those builds should work in either case (EDIT: though the windows toolchain stuff needs to be adapted too, and not sure how well that would work in self hosted).
Having a GitHub-hosted runners for windows-arm64 to be able to test and avoid regressions.
I thought originally the second point might be less important if we are "just using RubyInstaller2 builds", but that's not the case, the windows toolchain stuff also needs to be done and that should be tested properly.
Also in general support setup-ruby does not support any version/platform it cannot test.
So I will close this issue for now, and we can reopen it when both these blockers are resolved.
My company TableCheck would be happy to provide self-hosted Windows ARM runners until Github gives official support if it helps.
This wouldn't work unfortunately, there are several concerns with that:
What if those custom Windows ARM runners are running a different Windows version vs what other users use?
Or what if those runners have some software installed/configured differently which means it works there but not in other places?
For example the current windows toolchain stuff does need to assume things about where git and openssl and MSYS2 packages are installed and which versions, etc.
If the builds are done on these runners (would be a concern for Add installer for windows-arm64 oneclick/rubyinstaller2#362 I'd think and for building the windows toolchain stuff), there is a security concern that anything compromised on these runners (e.g. a bad gcc installed by some virus) could end up in the resulting CRuby build, which could result in affecting any user of these builds.
These runners might have a different CPU, and some of the compilation might be CPU-features specific.
Note this new runner is windows 11 arm desktop version, instead of windows server, so some of existing logic assuming windows runner is always server need to be changed.
Activity
MSP-Greg commentedon May 19, 2024
I know nothing about Windows on Arm64.
Do any current Actions Windows images run on Arm64?
setup-rubyrequires node.js.Regardless, I'll have a look at what MSYS2 has available.
eregon commentedon May 19, 2024
Can you use setup-ruby in self-hosted mode then? Just use it and follow the steps it mentions in the error.
I don't think much more support is realistic for a platform without official runners.
johnnyshields commentedon May 23, 2024
Issue for Github runners: actions/runner-images#768
eregon commentedon May 24, 2024
I forgot, Windows is a bit special, setup-ruby uses RubyInstaller, like the README says.
https://rubyinstaller.org/downloads/ does not seem to have arm64 builds, so that needs to happen first (feel free to file an issue there).
Once that is done I think we could support windows arm64 easily in setup-ruby, whether self hosted or not because those builds should work in either case (EDIT: though the windows toolchain stuff needs to be adapted too, and not sure how well that would work in self hosted).
eregon commentedon May 24, 2024
So that's oneclick/rubyinstaller2#362 and that's blocking this issue.
johnnyshields commentedon May 24, 2024
OK @eregon thank you for the clarification!
eregon commentedon May 30, 2024
Thinking more about this, this issue is blocked by two things:
I thought originally the second point might be less important if we are "just using RubyInstaller2 builds", but that's not the case, the windows toolchain stuff also needs to be done and that should be tested properly.
Also in general support setup-ruby does not support any version/platform it cannot test.
So I will close this issue for now, and we can reopen it when both these blockers are resolved.
This wouldn't work unfortunately, there are several concerns with that:
Or what if those runners have some software installed/configured differently which means it works there but not in other places?
For example the current windows toolchain stuff does need to assume things about where git and openssl and MSYS2 packages are installed and which versions, etc.
ntkme commentedon Apr 15, 2025
@eregon GitHub just started offering free OSS windows-11-arm runner today, so this is no longer blocked. Maybe considering reopening this?
https://github.blog/changelog/2025-04-14-windows-arm64-hosted-runners-now-available-in-public-preview/
Note this new runner is windows 11 arm desktop version, instead of windows server, so some of existing logic assuming windows runner is always server need to be changed.
eregon commentedon Apr 26, 2025
Released in https://github.com/ruby/setup-ruby/releases/tag/v1.235.0