← Back to issue list

stage-packages do not honor --target-arch

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1737561
Type
issue
State
open
Author
~lool
Labels
—
Created
Updated
Closed
—

Current evaluation

Cross-builds still fetch stage-packages for the host architecture; current craft-parts passes step_info.host_arch instead of the requested target architecture.

Suggested action: keep open

Reason: The reporter confirmed the target-architecture work in snapcore/snapcraft#1536 was relevant, but the defect remains: craft_parts/executor/part_handler.py passes step_info.host_arch to Repository.fetch_stage_packages while Snapcraft supplies the target architecture to the lifecycle. The behavior and likely fix site are now clear and suitable for implementation with a cross-architecture regression test.

Evaluated by: mr-cal-bot

Impact: 52 Quick Win: 29 Complexity: 28 Confidence: 96 Actionability: 78

Issue body

Hi, When cross-building, stage-packages are pulled for the host architecture instead of the target architecture. Best, - Loïc

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 52
Quick Win: 29
Complexity: 28
Confidence: 96
Actionability: 78
keep open Cross-builds still fetch stage-packages for the host architecture; current craft-parts passes step_info.host_arch instead of the requested target architecture.
stealth/space-bunny-alpha
Impact: 58
Quick Win: 20
Complexity: 48
Confidence: 94
Actionability: 67
keep open Cross-building still fetches stage-packages for the host rather than the build-for architecture; current craft-parts code still passes host_arch.
qwen/qwen3.6-35b-a3b
Impact: 75
Quick Win: 54
Complexity: 15
Confidence: 85
Actionability: 85
keep open stage-packages are fetched using host_arch instead of target_arch during cross-building, causing wrong architecture packages to be pulled. Bug is in craft-parts executor/part_handler.py line 1334.
qwen/qwen3.8-27b
Impact: 30
Quick Win: 18
Staleness: 95
Complexity: 40
Confidence: 65
Support Request: 10
close stale Cross-building stage-packages pulls host architecture packages instead of target architecture. Issue is 8.7 years old with no maintainer interaction or comments. Old cross-build mode deprecated in favor of core24/craft-parts architecture.
qwen/qwen3.6-35b-a3b
Staleness: 95
Complexity: 40
Confidence: 90
Support Request: 10
close stale Cross-building stage-packages pulls host architecture packages instead of target. Issue is over 8 years old with no maintainer interaction or comments.
qwen/qwen3.6-35b-a3b
Staleness: 98
Complexity: 30
Confidence: 85
Support Request: 10
close stale Cross-building pulls stage-packages for the host architecture instead of the target architecture. The report has no labels, zero comments, and has been inactive for over eight years.
qwen3.6-35b-a3b-mtp-q6
Staleness: 98
Complexity: 45
Confidence: 90
Support Request: 10
close stale Cross-building with stage-packages pulls host architecture packages instead of target architecture. Issue is completely inactive for over 8 years with no maintainer response or labels.

Update history

Date Change
created

Related work

  • Related To: snapcore/snapcraft#1536 (confidence 94%)

    The reporter explicitly identified its :target package-architecture feature as relevant to this bug.

Related issues

Issue Project State Summary Similarity
#4542 When cross-compiling incorrect architecture `stage-packages` are fetched snapcraft closed Closed as expected behavior: stage packages use the build architecture; cross-builds require target-qualified package names and repositories.
74%
#1686481 stage-packages does not handle unmet dependencies snapcraft (launchpad) closed Fixed by canonical/craft-parts#258 (commit 8d0ee1cd), making stage-packages use repositories for the build host architecture when resolving cross-architecture packages.
73%