Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request: Support Windows on Arm64 #600

Closed
johnnyshields opened this issue May 19, 2024 · 7 comments
Closed

Request: Support Windows on Arm64 #600

johnnyshields opened this issue May 19, 2024 · 7 comments

Comments

@johnnyshields
Copy link

Ruby recently added support for windows-arm64.

The Ruby Installer team would like to support Windows on Arm64 as well, but the current ticket is blocked due to lack of setup-ruby support for windows-arm

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.

@MSP-Greg
Copy link
Collaborator

provide self-hosted Windows ARM runners

I know nothing about Windows on Arm64.

Do any current Actions Windows images run on Arm64? setup-ruby requires node.js.

Regardless, I'll have a look at what MSYS2 has available.

@eregon
Copy link
Member

eregon commented 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
Copy link
Author

Issue for Github runners: actions/runner-images#768

@eregon
Copy link
Member

eregon commented 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
Copy link
Member

eregon commented May 24, 2024

So that's oneclick/rubyinstaller2#362 and that's blocking this issue.

@johnnyshields
Copy link
Author

OK @eregon thank you for the clarification!

@eregon
Copy link
Member

eregon commented 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.


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.

@eregon eregon closed this as not planned Won't fix, can't repro, duplicate, stale May 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants