(thunderbird) Add native ARM64 (win64-aarch64) support#2797
Open
dennisameling wants to merge 2 commits into
Open
(thunderbird) Add native ARM64 (win64-aarch64) support#2797dennisameling wants to merge 2 commits into
dennisameling wants to merge 2 commits into
Conversation
Detect the native OS architecture at install time and pick the matching
Mozilla build via an architecture -> build map (x86/x64/arm64), so Windows on
ARM installs the native win64-aarch64 build instead of the emulated x64 one.
- tools/chocolateyInstall.ps1: declare a per-package $builds map of
architecture -> @{ Url; Checksum } and resolve the build via a shared
Get-MozillaBuild helper. Resolution honors --forcex86 first, then the native
arch from Chocolatey's Get-OSArchitecture (correct even under x64 emulation),
falling back to x64 on older Chocolatey or when no arm64 checksum exists.
- tools/helpers.ps1 (shared with Thunderbird): GetChecksums also returns the
win64-aarch64 checksum (patterns anchored so 64 and 64-aarch64 rows can't
cross-match); add the shared Get-MozillaBuild architecture resolver; add the
UTF-8 BOM to match the repository convention for *.ps1 files.
- update_helper.ps1 (shared with Thunderbird): capture win64-aarch64 checksums
from Mozilla SHA512SUMS, version each URL by its os= token, and add a shared
GetMozillaUrlFormats emitting the x86/x64/arm64 URL formats.
- update.ps1: pass Win64Arm64Format through both streams.
- tools/LanguageChecksums.csv: add the win64-aarch64 checksum rows.
Verified installing the native arm64 build on Windows on ARM.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Use the shared Get-MozillaBuild / GetMozillaUrlFormats helpers (added with the Firefox ARM64 change) to select the native architecture build at install time. - tools/chocolateyInstall.ps1: declare a per-package $builds map and resolve the build via the shared Get-MozillaBuild helper. - update.ps1: emit Win64Arm64Format via the shared GetMozillaUrlFormats, pass it through both streams, and honor -Force/-IncludeStream (previously ignored). Thunderbird ESR ships no arm64 build yet, so the arm64 entry stays dormant (empty checksum -> x64 fallback) and activates automatically once Mozilla publishes one. Depends on the Firefox ARM64 change for the shared helpers. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Description
Use the shared Get-MozillaBuild / GetMozillaUrlFormats helpers (added with the Firefox ARM64 change) to select the native architecture build at install time.
Thunderbird ESR ships no arm64 build yet, so the arm64 entry stays dormant (empty checksum -> x64 fallback) and activates automatically once Mozilla publishes one. Depends on the Firefox ARM64 change for the shared helpers.
Motivation and Context
Companion PR to chocolatey/choco#3907 which aims to add native Windows arm64 support to Chocolatey.
How Has this Been Tested?
There's more detailed information in #2796, but even though Thunderbird doesn't have official arm64 support yet, the x64 installs just fine on an arm64 machine:
Screenshot (if appropriate, usually isn't needed):
Types of changes
Checklist: