Skip to content

Conversation

@zorgiepoo
Copy link
Member

@zorgiepoo zorgiepoo commented Nov 9, 2025

The first requirement we support is arm64 which allows updates to mark themselves as Apple silicon only.

The message that shows up when users check for updates tells them their Mac is too old and a newer Apple silicon Mac is required for new updates. This introduces a new localizable string.

This requirement is also inferred if the minimum system version is >= 27.0

generate_appcast is also updated to handle a new branch for hardwareRequirements element, and for automatically populating it if needed.

Fixes #2796

Misc Checklist

  • My change requires a documentation update on Sparkle's website repository
  • My change requires changes to generate_appcast, generate_keys, or sign_update

Testing

I tested and verified my change by using one or multiple of these methods:

  • Sparkle Test App
  • Unit Tests
  • My own app
  • Other (please specify)
  • Tested unit tests on both AS and Intel Macs
  • Tested test app by adding <sparkle:hardwareRequirements>arm64</sparkle:hardwareRequirements> on AS (where it's no-op) and Intel Macs.
  • Tested running generate_appcast on updates that have only arm64 mach-o slice, and updates that have >= 27.0 minimum system version, and updates that have neither requirement.
  • Tested encoding/decoding of hardwareRequirements in SUAppcastItem and SUAppcastItemState

macOS version tested: 26.1 (25B78)

@zorgiepoo zorgiepoo added this to the 2.9.0 milestone Nov 9, 2025
@zorgiepoo zorgiepoo merged commit fc73503 into 2.x Nov 16, 2025
2 checks passed
@zorgiepoo zorgiepoo deleted the hw-requirements branch November 16, 2025 01:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Hardware requirements and arm64 requirement

2 participants