feat: ship Windows-on-ARM, Raspberry Pi and Termux builds - #1
Merged
Conversation
Windows arm64 and Linux aarch64 build natively on GitHub's free arm64 runners (windows-11-arm / ubuntu-24.04-arm), which also join the test matrices so those platforms run the full suite before anything ships. Android (Termux) is the one cross build, linked with the NDK's clang; rfd and open have no Android backend, so they move behind a cfg(not(target_os = "android")) dependency and the three call sites degrade gracefully there: the folder picker answers "cancelled", reveal answers 501, and startup prints the URL (trying termux-open-url first). A CI job cargo-checks the Android target on every push so a tag never discovers the breakage.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Adds three distribution targets:
windows-11-armubuntu-24.04-armBoth ARM runners also join the CI and release test matrices, so those platforms run the full suite natively before anything ships.
Android has no backend for
rfd/open; they move behindcfg(not(target_os = "android"))and degrade gracefully: the folder picker answers "cancelled", reveal answers 501, and startup prints the serving URL (tryingtermux-open-urlfirst). A new CI job cargo-checks the Android target on every push.This PR exists to validate the ARM runners and the Android cross-compile in CI before merging (neither can be exercised locally).