packages: fetch stage-packages from host arch's repo
Metadata
Current evaluation
Merged to resolve cross-compilation failures by fetching stage-packages from the host architecture repository. Approved, passed CI, and closes LP #1983009 and CRAFT-1216.
Suggested action: —
No scores available.
Issue body
- [X] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
`stage-packages` are now fetched from the host architecture's repositories instead of the target architecture's repository.
This was causing an error during cross-compiling because the target architecture's repository was not registered.
LP: #[1983009](https://bugs.launchpad.net/snapcraft/+bug/1983009)
(CRAFT-1216)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged to resolve cross-compilation failures by fetching stage-packages from the host architecture repository. Approved, passed CI, and closes LP #1983009 and CRAFT-1216. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix resolving cross-compilation failures by fetching stage-packages from the host architecture repository instead of the unregistered target architecture repository. Resolves LP #1983009 and CRAFT-1216. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #4542 When cross-compiling incorrect architecture `stage-packages` are fetched | snapcraft | closed | Closed without resolution. Internal ticket CRAFT-2620 tracks the bug where cross-compilation fetches host architecture stage-packages instead of the target. Manual repository configuration and explicit architecture variables work around it. | |
| #721 fix(part_handler): fetch correct target stage packages | craft-parts | open | Fixes cross-compilation stage-package fetching to use target architecture. Approved with 1 unresolved review comment; regression testing requested but not yet confirmed. | |
| #876 repo: allow for architecture-specific stage-packages | snapcraft | merged | Merged. Implements architecture-specific stage-packages using a package:arch syntax in the stage-packages list. A per-part architecture approach was rejected during review. The updated code passed CI and was merged. | |
| #3416 repo: default to target arch for stage package cache | snapcraft | merged | Merged into master following approval and passing CI. The change defaults the stage package cache to the target architecture, updates 22 files, and adds spread tests to verify the behavior. | |
| #3461 repo: account for arch & version when filtering stage packages | snapcraft | merged | Merged into master. Refactored stage package filtering to correctly handle architecture and version qualifiers via a new helper. Updated cross-compile tests, achieved 90.74% diff coverage, and passed CI after maintainer approval. | |
| #3080 repo: fix for multi-arch stage-package scenario | snapcraft | merged | Merged fix for multi-arch stage-package dependency resolution. Uses python-apt's or_dependencies to resolve architectures correctly, passes target_arch internally, and adds fallback logic. Approved and merged after test updates. |