feat: support foreign architectures
Metadata
Current evaluation
Merged after two approvals and passing CI, adding apt foreign architecture support for deb822-based Ubuntu releases. A final force-push targeted the 2.1.0 release. Resolves #150 and unblocks multiple snapcraft issues.
Suggested action: —
No scores available.
Issue body
- [x] Have you followed the guidelines for contributing?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `make lint && make test`?
---
Adds support for foreign architectures for apt.
This works for Ubuntu releases that use deb822 for its default sources. For *craft applications, this affects `core24` / `ubuntu@24.04` and newer bases.
Fixes #150
Relates to #104
Relates to #149
Unblocks https://github.com/canonical/snapcraft/issues/4542
Unblocks https://github.com/canonical/snapcraft/issues/5222
(CRAFT-4076)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged after two approvals and passing CI, adding apt foreign architecture support for deb822-based Ubuntu releases. A final force-push targeted the 2.1.0 release. Resolves #150 and unblocks multiple snapcraft issues. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged to implement apt foreign architecture support for deb822-based Ubuntu releases. Resolves #150 and unblocks related snapcraft tasks. Force-pushed for a clean rebase and shipped in the 2.1.0 release. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5274 feat: support foreign architectures for core24 | snapcraft | merged | Merged after two approvals and passing CI. The change drops cross-compilation architecture restrictions for core24 snaps, allowing any supported foreign architecture in package-repositories and build-package entries. Resolves #5222 and #4542. | |
| #8 feat: support build-packages | snapcraft-rocks | merged | Merged a feature adding a wrapper script to run apt update before Snapcraft, resolving an empty Apt cache issue in the base Ubuntu image. Approved by reviewers and rebased to pass tests before merge. | |
| #6394 feat: support armv8l | snapcraft | merged | Merged. Maps armv8l to armv7l to enable architecture support in snapcraft, resolving issue #5638. Approved by reviewers, with CI failures confirmed unrelated. | |
| #1027 feat: allow building on other compatible architectures | craft-application | merged | Merged. Enables cross-architecture builds via CRAFT_BUILD_ON. Approved by two reviewers with all CI checks passing. Modifies ten files to support compatible packaging. Follow-up work tracked in PR #1040. |