fix: don't add armhf as a compatible arch for 25.10 and higher
Metadata
Current evaluation
Merged fix for #230. Stops auto-adding armhf as a compatible architecture for arm64 on Ubuntu 25.10+. Users must manually configure ports.ubuntu.com via package-repositories. Includes a regression test and passed all CI checks.
Suggested action: —
No scores available.
Issue body
1. Adds a regression test to verify #230 ([passing](https://github.com/canonical/craft-archives/actions/runs/33777746941/job/100728034756?pr=255#step:4:50) on arm64 24.04, [failing](https://github.com/canonical/craft-archives/actions/runs/33777746941/job/100728036051?pr=255#step:4:55) on arm64 26.04)
2. For 25.10 and higher, stop adding armhf as a compatible arch for arm64. Instead, users will need to add a `package-repositories` entry for ports.ubuntu.com to get armhf.
Originally, I was planning to check if `ubuntu.sources` had a `URIs: ports.ubuntu.com`. This quickly became too complicated. For example, the Github CI runners have `URIs: mirror+file:/etc/apt/apt-mirrors.txt`, and that file contains `azure.archive.ubuntu.com`. Chasing this URL and figuring out if armhf is available there gets complicated. So I opted for a simple check of the Ubuntu base.
Fixes #230
Unblocks https://github.com/canonical/snapcraft/issues/6326
(CRAFT-5259)
---
- [x] I've followed the [contribution guidelines](https://github.com/canonical/craft-archives/blob/main/CONTRIBUTING.md).
- [x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [ ] I've successfully run `make lint && make test`.
- [ ] I've added or updated any relevant documentation.
- [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing.
- [ ] I've updated the relevant release notes.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix for #230. Stops auto-adding armhf as a compatible architecture for arm64 on Ubuntu 25.10+. Users must manually configure ports.ubuntu.com via package-repositories. Includes a regression test and passed all CI checks. | |
| qwen3.6-35b-a3b-mtp-q6 |
Impact:
50
Quick Win:
32.5
Staleness:
0
Complexity:
35
Confidence:
75
|
needs review | Fixes armhf compatibility for arm64 on Ubuntu 25.10+ by removing it from _COMPATIBLE_ARCHS, adds regression test. Pending review with some CI failures. |
Update history
| Date | Change |
|---|---|
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| updated | |
| created |
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #230 Don't add armhf as a compatible architecture for 25.10 and newer | craft-archives | closed | Bug in craft-archives where armhf is unconditionally added as a compatible architecture for arm64 hosts, breaking package repository setup on Ubuntu 25.10+. Currently triaged and awaiting implementation. | |
| #96 sources: only add "compatible" architectures | craft-archives | merged | Merged fix correcting dpkg parameter order and restricting architecture addition to compatible pairs (amd64/i386, arm64/armhf) to prevent system breaks. Approved, passed CI, and achieved 100% diff coverage. |