Add initial {win,linux}-arm64 target support #192
+55
−9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a modern remake of the previous draft (#170) which couldn't really be rebased mostly due to the platform-specific splits done with the Velopack transition so it turned out to be easier to adapt what already existed based on the latest
MacOSBuilderas an example.So far tested / done:
linux-arm64deploy (releases/osulazer-linux-arm64.AppImageworks as expected)win-arm64deploy (releases/osulazer-win-arm64-Setup.exeworks as expected + launchedosu!.execonfirmed to beArm64architecture via Task Manager)linux-arm64deploy (works as well fromlinux-x64as native one from what I can tell)win-arm64deploy (works as well fromwin-x64as native one from what I can tell, but fails on runtime when done fromlinux-x64host fwiw, no idea if cross-OS deploy is expected to work in general)arm64) also in Windows artifact filenames likeRELEASESetc like is already done with Linux/macOS? This was seemingly also mentioned in the previous PR but without further discussion about itTo-do:
{win,linux}-arm64native builds (out of my control due to being proprietary etc, shouldn't exactly be difficult to pull off with modern tooling available I feel?)@smoogipoo could you help clarifying the anticheat ARM64 compile situation from #170 (comment) which largely seems to now be the remaining blocker for official
{win,linux}-arm64native releases (potentially also after ppy/osu-framework@12c4009 is in a new-nativelibstag)?If GitHub actions are being utilized https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/ and https://github.blog/changelog/2025-04-14-windows-arm64-hosted-runners-now-available-in-public-preview/ should make it trivial. As I previously also mentioned on
win-arm64technically https://learn.microsoft.com/en-us/windows/arm/arm64ec should allow using the x64 native anticheat or other missing bits without native ARM64 builds (yet).Closes #170.