core22: wrong arch in snap.yaml when building for all archs
Metadata
Current evaluation
Fixed in merged canonical/snapcraft#4150 (commit 77d3454d): core22 snap.yaml now records build-for (all) instead of the build-on architecture.
Resolution: closed resolved
Reason: The defect was fixed by merged PR canonical/snapcraft#4150, committed as 77d3454d. The change makes snap.yaml use build-for, so all-architecture builds emit all rather than amd64.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Originally reported by @zyga in the snapcrafters chat.
"architecture independent snaps are broken on core22, build-on amd64 build-for all makes the snap _all_ in name and amd64 in the yaml"
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Fixed in merged canonical/snapcraft#4150 (commit 77d3454d): core22 snap.yaml now records build-for (all) instead of the build-on architecture. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed by merged PR canonical/snapcraft#4150 (commit 77d3454d): snap.yaml now uses build-for (“all”) instead of the build-on architecture for core22 builds. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed in canonical/snapcraft#4150 (commit 77d3454d5): core22 builds targeting all architectures now write architectures: all to snap.yaml instead of the build-on architecture. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without a documented fix. The report indicated core22 builds targeting all architectures incorrectly populated amd64 in snap.yaml instead of all, breaking architecture-independent snaps. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned. Reported incorrect architecture mapping in core22 snap.yaml for architecture-independent snaps, where build-for all incorrectly set the architecture to amd64. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution or comments, indicating abandonment. Architecture-independent core22 snaps incorrectly set the architecture to amd64 in snap.yaml when build-for was set to all. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Abandoned. Closed without comments or resolution. The core22 snap.yaml architecture mismatch for multi-arch builds remains unaddressed. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
canonical/snapcraft#4150
(confidence 100%)
Merged pull request that fixed CRAFT-1535 in commit 77d3454d.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5606 schema: add build-for in architectures for core22 | snapcraft | merged | Merged as c9822a38c via snapcraft#5606, adding build-for to the core22 architectures schema in snapcraft.json. | |
| #4150 meta: use build-for in snap.yaml architecture | snapcraft | merged | Merged #4150 as 77d3454d: build-for: all now writes architectures: all to meta/snap.yaml instead of the build-on architecture, fixing CRAFT-1535. | |
| #1997752 base core20: wrong arch triplet | snapcraft (launchpad) | closed | Wrong SNAPCRAFT_ARCH_TRIPLET for core20 build-on/run-on builds fixed by adding SNAPCRAFT_ARCH_BUILD_ON/BUILD_FOR and *_TRIPLET_BUILD_FOR envvars (PR #4313, commit 93a9d8170); follow-up #4332 (48bd0632f) errors on unevaluable multi-arch cases. | |
| #4854 Accept `build-for: [all]` and `--build-for=all` for architecture-independent snaps | snapcraft | closed | Resolved: Snapcraft supports build-for [all] and --build-for=all for remote builds/core24 in 8.4.0 and core22 in 8.7.0; requested core22/core24 regression tests were added. | |
| #2009520 core18/20: inconsistent architecture parsing | snapcraft (launchpad) | closed | Superseded by snapcore/snapcraft#4340 and #4341. Core22+ overlapping build-on handling merged in #3821 (4876b53); core20 support was declined. | |
| #3821 meta: architectures | snapcraft | merged | Merged core22 architecture support, including build-on/build-for handling, host and build-instance selection, and SNAPCRAFT_BUILD_FOR filtering, via commit 4876b53. | |
| #2007790 core22: Only amd64 snap is built when multiple architectures are specified | snapcraft (launchpad) | closed | Closed as working as expected; remote-build defaults to amd64 unless --build-on is explicitly passed. Maintainer noted documentation clarifies this behavior. | |
| #1881515 Snapcraft pulling wrong arch of debs when building foreign snaps | snapcraft (launchpad) | closed | Reported --target-arch pulling wrong debs for foreign arch builds. Maintainers noted the feature was broken and disabled for core20. Marked resolved as cross-builds have been significantly improved in recent Snapcraft versions. | |
| #2007789 `snapcraft remote-build` does not support long syntax of the `architectures` top-level key. | snapcraft (launchpad) | closed | Fixed by migrating `snapcraft remote-build` to the core22 implementation, which correctly parses the long `architectures` syntax. | |
| #1862256 snapcraft should complain loudly when building base: core20 snap on i386 | snapcraft (launchpad) | closed | Closed as superseded: improved architecture parsing rejects unsupported core20/i386 builds, making a dedicated check unnecessary; snapcraft#4392 improved this handling. |