← Back to issue list

docs: make tutorials architecture-agnostic

View original Github issue

Metadata

Project
rockcraft
Number
#1289
Type
pull request
State
open
Author
minulo
Labels
—
Created
Updated
Closed
—

Current evaluation

Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg-based substitutions. Author agreed to revise scope to only Hello World tutorial; awaiting changes.

Suggested action: keep open

Reason: Maintainer @asanvaq changed the scope on 2026-10-02 (use environment variable instead of dpkg, focus on Hello World only) and asked if the author is still interested. The author confirmed willingness to continue, but has not yet pushed revisions. The PR has 2 unresolved review comments and failing CI (docs-spread-tests, lint/files), so it is under active development and not ready for merge.

Evaluated by: mr-cal-bot

Impact: 45 Quick Win: 11 Complexity: 20 Confidence: 75 Actionability: 30

Issue body

#### Summary Several tutorials hardcoded `amd64` in the `platforms:` block and in the resulting `.rock` filenames used by later commands. A reader on an arm64 host packs a `..._arm64.rock` file, so the copy-paste `skopeo` import commands that reference `..._amd64.rock` fail with a file-not-found error. This applies the approach already used by the Flask tutorial across the remaining affected tutorials. #### Changes Tutorials updated: **Hello World**, **Pack a Python package** (pyfiglet), and **Bundle a Node.js app**. For each: - `rockcraft.yaml`: commented-out extra architectures + a hint to check the host arch with `dpkg --print-architecture`. - `task.yaml`: hardcoded `..._amd64.rock` replaced with `..._$(dpkg --print-architecture).rock`; `skopeo copy` reformatted to multi-line. - `.rst`: added a note after `rockcraft pack` clarifying the `.rock` filename depends on name, version, and platform. #### Testing - `make docs-lint` — passes (0 errors/warnings, linkcheck clean) - `make test-fast` — 620 passed, 1 skipped The `task.yaml` files run in CI as Spread tests; the `dpkg` substitution keeps them passing on any host architecture. Fixes #1280 --- - [ x] I've followed the [contribution guidelines](https://github.com/canonical/rockcraft/blob/main/CONTRIBUTING.md). - [ x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/). - [ x] I've successfully run `make lint && make test-fast`. - [x ] I've added or updated any relevant documentation. - [ x] 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
qwen/qwen3.6-35b-a3b
Impact: 45
Quick Win: 11
Complexity: 20
Confidence: 75
Actionability: 30
keep open Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg-based substitutions. Author agreed to revise scope to only Hello World tutorial; awaiting changes.
qwen/qwen3.6-35b-a3b
Impact: 50
Quick Win: 10
Complexity: 30
Confidence: 70
Actionability: 30
keep open Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg-based detection. Author agreed to revise scope to only Hello World tutorial per maintainer feedback.
~deepseek/deepseek-pro-latest
Impact: 45
Quick Win: 10
Complexity: 25
Confidence: 85
Actionability: 30
keep open Docs-only change making Hello World, pyfiglet, and Node.js tutorials architecture-agnostic. Maintainer has since changed scope to use an environment variable and start with Hello World only; author is reworking.
stealth/space-bunny-alpha
Impact: 32
Quick Win: 6
Complexity: 28
Confidence: 82
Actionability: 25
keep open Docs-only PR making rockcraft tutorials architecture-agnostic (Hello World, pyfiglet, Node.js) using dpkg --print-architecture for .rock filenames. Approved earlier, but maintainers changed direction to env vars and narrowed scope to Hello World; author is reworking it.
stealth/space-bunny-alpha
Impact: 38
Quick Win: 9
Complexity: 25
Confidence: 78
Actionability: 30
keep open Docs change making Hello World, Python and Node.js tutorials architecture-agnostic via dpkg --print-architecture. Approved, but maintainer redirected scope (env var, Hello World only); 2 unresolved comments, OSV-scanner red. Awaiting rework.
stealth/space-bunny-alpha
Impact: 38
Quick Win: 22
Complexity: 20
Confidence: 78
Actionability: 74
needs review Replaces hardcoded amd64 in Hello World, pyfiglet and Node.js tutorials with dpkg-derived .rock names plus arch notes, matching the Flask pattern; fixes #1280. Approved, CI green, 2 threads pending, lint/files still running.
stealth/space-bunny-alpha
Impact: 38
Quick Win: 19
Complexity: 18
Confidence: 90
Actionability: 62
keep open Makes three tutorials architecture-agnostic using dpkg-derived .rock filenames; approved, but two review threads remain unresolved and the author plans another push to recheck external lint connectivity.
qwen/qwen3.6-35b-a3b
Impact: 35
Quick Win: 30
Staleness: 15
Complexity: 15
Confidence: 85
needs review Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg-based detection. Approved, all CI passing, reviewer feedback addressed.
qwen/qwen3.6-35b-a3b
Impact: 55
Quick Win: 41
Staleness: 15
Complexity: 25
Confidence: 75
keep open Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg --print-architecture substitutions. Approved by 1 reviewer, contributor addressed feedback, but docs-spread-tests CI is failing.
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 34
Staleness: 10
Complexity: 15
Confidence: 85
needs review Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dynamic dpkg-based detection. Approved, CI passing, reviewer comments addressed.
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 32
Staleness: 15
Complexity: 20
Confidence: 80
needs review Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dpkg --print-architecture. Reviewed, author addressed comments, most CI passing except docs-spread-tests.
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 34
Staleness: 5
Complexity: 15
Confidence: 90
needs review Documentation update making tutorials architecture-agnostic by replacing hardcoded amd64 with dynamic architecture detection. Approved, CI passing, comments addressed.
qwen3.6-35b-a3b-mtp-q6
Impact: 35
Quick Win: 30
Staleness: 25
Complexity: 15
Confidence: 75
needs review Makes tutorials architecture-agnostic by replacing hardcoded amd64 with dynamic architecture detection. Approved by 1 reviewer, all comments addressed, CI passing.
qwen/qwen3.6-35b-a3b
Staleness: 10
Complexity: 15
Confidence: 85
needs review Updates tutorials to dynamically detect host architecture instead of hardcoding amd64, preventing copy-paste failures on arm64. Approved by one reviewer with requested changes implemented; awaiting minor network-related lint fix.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 10
Confidence: 85
needs review Updates three tutorials to dynamically detect host architecture instead of hardcoding amd64, preventing copy-paste failures on arm64 systems. Implements reviewer feedback and passes local tests. Awaiting maintainer review to address a minor external network lint issue.
qwen/qwen3.6-35b-a3b
Staleness: 10
Complexity: 15
Confidence: 90
needs review Updates three tutorials to replace hardcoded amd64 architectures with dynamic detection, resolving copy-paste failures on arm64 hosts. PR is approved with recent author updates addressing reviewer feedback and pending minor CI fixes.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 10
Confidence: 90
needs review Updates tutorials to dynamically detect host architecture instead of hardcoding amd64, preventing copy-paste failures on arm64. Approved by reviewer, feedback implemented, awaiting merge.
qwen/qwen3.6-35b-a3b
Staleness: 10
Complexity: 15
Confidence: 90
needs review Updates three tutorials to dynamically detect host architecture instead of hardcoding amd64, preventing copy-paste failures on arm64. Approved by one reviewer, CI mostly passes except a known unrelated docs-spread-test failure, awaiting final commit.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 10
Confidence: 90
needs review Updates documentation tutorials to dynamically detect host architecture instead of hardcoding amd64. Approved by one reviewer, CI passing, and actively addressed with recent contributor updates.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 90
needs review Updates tutorials to use dynamic architecture detection instead of hardcoded amd64, fixing arm64 copy-paste errors. Approved by one reviewer, all CI checks passing, and ready for final maintainer merge.
qwen3.6-35b-a3b-mtp-q6
Staleness: 0
Complexity: 10
Confidence: 90
needs review Updates tutorials to dynamically detect host architecture instead of hardcoding amd64, fixing copy-paste failures on arm64 hosts. Tests pass; awaiting maintainer review/rebase.

Update history

Date Change
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated
updated

Related work

  • Related To: rockcraft#1280 (confidence 95%)

    This PR fixes issue #1280, which reported that tutorials hardcode amd64 and break on arm64 hosts.

Related issues

No related issues found above the similarity threshold.