Raw dependency graph data (JSON)
Tinkerbell
Author: Ludovic HENRY ludovic.henry@qti.qualcomm.com
Date: 2026-09-08
Readiness: orange
Scope: RISC-V (riscv64/linux) support status for Tinkerbell
Audience: Technical leadership, resource allocation strategy
Verification policy: Every claim is cross-referenced to a primary upstream source. Items that could not be verified against a second source are marked [NEEDS VERIFICATION].
1. Project Overview
Tinkerbell (github.com/tinkerbell/tinkerbell, homepage tinkerbell.org) is a bare-metal provisioning engine written entirely in Go. It bundles four historically separate subsystems into one monorepo: Smee (DHCP/PXE/iPXE boot service), Tootles (metadata service), HookOS (in-memory OS used during provisioning), and Tink (the workflow/orchestration engine). It was accepted into the Cloud Native Computing Foundation (CNCF) at the Sandbox maturity tier on November 10, 2020, and remains at Sandbox (not Incubating or Graduated).
Governance: documented in tinkerbell/org/GOVERNANCE.md (referenced from the main repo README). Role ladder is Contributor to Member to Reviewer to Approver to Maintainer to Admin, escalating in tenure and PR-review requirements, decided by a consensus-seeking process rather than pure voting. Sponsorship guidance recommends (not mandates) sponsors from multiple member companies. In practice .github/CODEOWNERS and .github/settings.yml are both gated to a single owner, @jacobweinstock.
Corporate backing: dominated by Equinix. The project originated at Packet (acquired by Equinix, now Equinix Metal); lead maintainer Jacob Weinstock (~1,726 commits) and the next several highest-committing humans (Manuel Mendez ~420, Kelly Deng 160, Amy Tobey 111, Nahum Shalman 50) all carry Equinix/Packet email domains. AWS is the other significant corporate contributor (Aravind Ramalingam, ~56 commits, @amazon.com), consistent with AWS’s EKS Anywhere using Tinkerbell/Cluster API Provider Tinkerbell (CAPT) for bare-metal provisioning. docs/ADOPTERS.md self-reports Colony (Konstruct.io), AWS EKS Anywhere, and Rackdog as production users, but this is not a formal sponsor tier.
Community culture on new ports: there is no written PLATFORMS.md/SUPPORT.md architecture-support policy anywhere in the repo or org. Architecture support is de facto defined by the Makefile’s GOARCH targets and CI matrix, both of which currently cover only amd64 and arm64. There has never been any issue, PR, or commit in the tinkerbell org requesting or discussing a RISC-V port, so there is no documented stance, positive or negative, on adding one - the topic has simply never been raised.
2. Port History and Upstreaming Timeline
No RISC-V port exists and no genuine RISC-V enablement work has ever been attempted.
| Date | Event | Source |
|---|---|---|
| 2021-04-23 | Commit 37b0b4ac (Manuel Mendez, Equinix) adds the literal string arch: "riscv" to a DHCP unit test as the example value for an explicitly unrecognized/unsupported architecture test case |
Local git history, commit 37b0b4ac |
| 2021-10-11 | Commit b63e4ade (Jacob Weinstock) reverts the above, removing the string again |
Local git history, commit b63e4ade |
| 2023-10-30 | Dependabot bump of opencontainers/image-spec (merged into tinkerbell/tink#823, pre-monorepo) quotes an upstream changelog line about riscv64 being added to the OCI image-spec architecture list - incidental, not Tinkerbell code |
commit ed313ca |
| 2024-09-05 | Dependabot bump of golang.org/x/sys (merged into tinkerbell/smee#513, pre-monorepo) quotes an upstream changelog mentioning “cpu: add support for detecting RISC-V extensions” - incidental, Go stdlib only |
commit 2488c9e |
| 2025-05-07 | PR #157, golang.org/x/sys bump, quotes upstream riscv64 crypto-extension-detection changelog text; closed unmerged, superseded by Dependabot |
PR #157 |
| 2026-05-28 | PR #775, golang.org/x/sys bump, quotes upstream “cpu: detect zbc extension on riscv64” changelog text; merged, first shipped in tag v0.24.0 |
PR #775 |
| 2026-09-02 | PR #937, golang.org/x/crypto bump, quotes upstream “provide optimised assembly for riscv64” changelog text; closed unmerged |
PR #937 |
All six items above are incidental: five are Dependabot Go-module version bumps whose PR bodies quote upstream changelog text that happens to mention riscv64 (Go stdlib CPU-feature detection or the OCI image-spec architecture list), and the sixth is a one-line test-fixture placeholder for an “unrecognized architecture” that was added and then reverted. None touch Tinkerbell’s own source, build system, or CI. There is no RISC-V port, in progress or completed, and nothing is upstream.
3. Upstream Support Tier
No formal tier policy document exists. Architecture support is defined entirely by what the Makefile and .github/workflows/ci.yaml build and test.
| amd64 | arm64 | riscv64 | |
|---|---|---|---|
| CI builds | Yes | Yes (native ubuntu-24.04-arm runners) |
No |
| CI tests | Yes | Yes | No |
| Release-blocking | Yes | Yes | N/A |
| Official binaries | Yes (tinkerbell-embedded-linux-amd64, container images) |
Yes (tinkerbell-embedded-linux-arm64, container images) |
No |
Source: .github/workflows/ci.yaml and .github/workflows/ipxe.yaml, read directly at HEAD 733792cc0e07ba01b7ae82eae989c5935537ddda; Makefile GOARCH targets.
4. Technical Architecture and RISC-V-Specific Subsystems
Tinkerbell has no architecture-specific subsystems for any target, riscv64 included. It is a pure-Go application (no cgo; CGO_ENABLED=0 per the Makefile) with no JIT, no SIMD, no hand-written assembly, and no compute kernels of its own. Code-search confirmed zero .S assembly files, zero arch/riscv/-style directories, and zero build-tagged per-architecture Go files (*_amd64.go, *_arm64.go, *_riscv64.go) anywhere in the repository - “architecture support” in this codebase means exclusively which GOARCH values the Makefile cross-compiles.
| Component | amd64 | arm64 | riscv64 |
|---|---|---|---|
| Hand-tuned assembly / SIMD | None (not applicable to this project type) | None | None |
| JIT | None | None | None |
| Crypto acceleration | Delegated to stdlib/BMC libs | Delegated to stdlib/BMC libs | Delegated to stdlib/BMC libs (would work if built) |
| Build target exists | Yes | Yes | No |
The absence of RISC-V-specific code is consistent with the project’s nature (an orchestration/provisioning tool, not a numerics or codec library) rather than being a gap specific to RISC-V - amd64 and arm64 equally have no such code, they simply have a build target and CI coverage that riscv64 lacks.
5. Build System, Cross-Compilation, and Toolchain
Tinkerbell is a pure Go project (go.mod requires Go 1.26.3); there is no CMake, no C/C++ compiler requirement, and no BUILDING.md/INSTALL.md. Build system is make wrapping go build.
- Current build targets: only
GOARCH=amd64andGOARCH=arm64are defined in theMakefile(out/tinkerbell-linux-amd64,out/tinkerbell-linux-arm64, equivalent-embedded-andtink-agent-variants). Noriscv64target exists to invoke. - Container images: built via
docker buildxwithdocker/setup-qemu-action@v4in CI, but QEMU is invoked generically (“Add support for more platforms with QEMU (optional)”) and is only ever exercised for the amd64/arm64 matrix already defined - no riscv64 platform string appears anywhere in the workflow. - Dockerfiles (
Dockerfile.tinkerbell,Dockerfile.agent) are architecture-parametrized viaTARGETOS/TARGETARCHbuild args and would in principle acceptriscv64if a matchingout/tinkerbell-linux-riscv64binary existed, but no such binary is ever produced. - Known build failures on riscv64: none documented, because no riscv64 build has ever been attempted upstream.
- To add riscv64 support, work would need to start with a
GOARCH=riscv64target in theMakefileand a corresponding CI matrix leg - there is currently no groundwork for it anywhere in thetinkerbellorg.
Source: Makefile, .github/workflows/ci.yaml lines 327-330, Dockerfile.tinkerbell/Dockerfile.agent (root of repo).
6. Feature Coverage and Gap Analysis vs arm64 and amd64
| Capability | amd64 | arm64 | riscv64 |
|---|---|---|---|
tinkerbell server binary |
Yes | Yes | No |
tink-agent binary |
Yes | Yes | No |
| Embedded (single-binary) build | Yes | Yes | No |
| Container images | Yes | Yes (native runner) | No |
iPXE boot binaries (ipxe.efi, undionly.kpxe, snp-*.efi) |
Yes (x86_64) | Yes | No |
IANA-architecture-to-iPXE-binary mapping table (docs/technical/smee/IPXE_ARCH_MAP.md) |
Covers x86 BIOS/UEFI | Covers ARM32/64 UEFI incl. Raspberry Pi netboot, plus legacy (Itanium, Alpha, Xscale) | No riscv64 entry |
Functional gap: a riscv64 machine cannot run the Tinkerbell control-plane binaries at all (nothing to build or download), and cannot be provisioned as a target either, since Smee’s iPXE architecture map has no riscv64 entry and HookOS (the in-memory provisioning OS) ships no riscv64 image. Note the map is user-overridable at runtime via --ipxe-override-arch-mapping without a code change, so the mechanism is designed to be extensible, but Tinkerbell itself does not ship a riscv64 iPXE binary, agent binary, or container image to point that override at.
Performance gap: not applicable - there is no riscv64 build to benchmark, and no SIMD/vectorized hot path exists in this project for any architecture.
Security hardening gap: not evaluable - no riscv64 build exists to assess.
NaN/floating-point semantics: not applicable to this project’s domain (bare-metal provisioning orchestration, no numerics).
7. CI/CD Infrastructure
No riscv64 CI exists, in any form (build-only, test, or otherwise), on any trigger. Verified by directly reading the only two GitHub Actions workflow files in the repo, and by confirming the absence of .gitlab-ci.yml, .cirrus.yml, and any Jenkinsfile.
.github/workflows/ci.yaml(on: pushtomain/v**tags, and everypull_request):build-embedded-binariesmatrix is exactlygoarch: amd64andgoarch: arm64(two entries).build-container-images/build-publish-container-imagesruns-onmatrix isubuntu-latest(amd64) andubuntu-24.04-arm(native arm64 hardware runner, no QEMU emulation used for either).build-binariesrunsmake cross-compile[-agent]with no arch axis of its own; whatever architectures result come from the Makefile (amd64/arm64 only)..github/workflows/ipxe.yaml(on: pushtomain, path-filtered): buildssnp-arm64.efi,snp-x86_64.efi,ipxe.efi,undionly.kpxe,ipxe.iso,ipxe-efi.img- x86_64 and arm64 only.- A repo-wide
grep -rniE "riscv"across the entire checkout (code, CI, docs, Makefile) returned zero matches. - No RISE RISC-V runners are referenced anywhere in the workflows or org.
| amd64 | arm64 | riscv64 | |
|---|---|---|---|
| CI builds | Yes | Yes | No |
| CI tests | Yes | Yes | No |
| Native hardware runner | No (ubuntu-latest, x86_64 cloud VM) | Yes (ubuntu-24.04-arm) |
N/A |
| Release-blocking | Yes | Yes | N/A |
Source: .github/workflows/ci.yaml, .github/workflows/ipxe.yaml, local clone at HEAD 733792cc0e07ba01b7ae82eae989c5935537ddda, fetched fresh 2026-09-08.
8. Distribution and Release Status
No riscv64 binary, package, or artifact exists for Tinkerbell (the bare-metal provisioning project) on any channel checked.
| Channel | Result |
|---|---|
| GitHub Releases (v0.23.0-v0.25.0) | Only tinkerbell-embedded-linux-amd64 and tinkerbell-embedded-linux-arm64 published; no riscv64 asset in any checked release |
| Ubuntu 26.04 “resolute” | No tinkerbell package exists at all, for any architecture (“Sorry, your search gave no results” on packages.ubuntu.com) |
| Arch Linux RISC-V port | Not listed on archriscv.felixc.at |
| PyPI | The tinkerbell PyPI package (v0.2.0) is an unrelated pure-Python project sharing the name by coincidence; ships only py3-none-any wheels and sdist - architecture-independent, no compiled artifact, and not the bare-metal provisioning project |
| RISE Python wheel builder | The GitLab package-registry query for tinkerbell redirects to plain PyPI (no RISE-built entry exists) |
| OCI container images | amd64 and arm64 platform tags only (confirmed via CI matrix; no linux/riscv64 platform string anywhere) |
What a user must do to get a working binary today: nothing works - there is no supported path to run Tinkerbell on riscv64. A user would need to add a GOARCH=riscv64 target to the Makefile, add a CI/build recipe, cross-compile the tinkerbell and tink-agent binaries themselves, build a riscv64 container image locally, and separately solve the HookOS/iPXE riscv64-provisioning-target gap (Section 6) before Tinkerbell could provision a riscv64 machine at all.
9. Dependencies
Tinkerbell is a pure-Go project (Go 1.26.3, CGO_ENABLED=0); dependencies are Go modules, not distro-packaged C/C++ libraries, so most rows below have no Ubuntu apt package to check against the project graph.
| Dependency | Role | riscv64 build | riscv64 test | riscv64 release | Community/blocking issues |
|---|---|---|---|---|---|
Go toolchain (go 1.26.3) |
Compiler/runtime | Yes - native GOARCH=riscv64 since Go 1.14; found in Ubuntu 26.04 riscv64 (golang-go) |
Mostly green, but one active regression | Official Go releases ship riscv64 binaries | Open: golang/go#81175 (linker relocation-offset failure on coverage-instrumented TestScript/cover_atomic_pkgall builds, opened 2026-08-27); active builder-flakiness tracking in #79067-#79069, #80880 |
bytedance/sonic v1.15.0 (indirect, via gin’s JSON codec) |
JIT JSON encode/decode | Falls through to pure-Go compat.go path on riscv64 (JIT gated to amd64/arm64 only) - builds and runs, no JIT acceleration |
No riscv64-specific issues found | Library only | None found |
twitchyliquid64/golang-asm v0.15.1 (indirect) |
sonic’s JIT assembler | Not compiled into a riscv64 build of sonic at all | N/A | N/A | Effectively inert on riscv64 |
klauspost/compress v1.19.1 (indirect) |
zstd/s2/flate compression | Compiles via pure-Go fallback; no riscv64 asm | No riscv64 signal in issues | Library only | None found |
klauspost/cpuid/v2 v2.3.0 (indirect) |
CPU feature detection | Explicit riscv64 support: detect_riscv64.go, os_linux_riscv64.go, riscv_isa.go |
No issues found | Library only | None |
golang.org/x/crypto v0.55.0 (direct) |
TLS/SSH/crypto | Builds via generic mac_noasm.go fallback path (poly1305) |
No riscv64-specific issues | Library only | None found |
golang.org/x/arch v0.22.0 (indirect) |
Instruction-encoding tables | Dedicated riscv64/ disassembler package exists |
No issues found | Library only | None |
go.etcd.io/bbolt v1.5.0 (indirect, embedded etcd) |
mmap-based KV store | Uses golang.org/x/sys/unix mmap syscalls with riscv64 support |
No riscv64 signal, positive or negative | Library only | None found |
pierrec/lz4/v4 v4.1.26 (indirect) |
LZ4 compression | No dedicated asm for riscv64 or arm64; falls back to Go | No riscv64-specific issues | Library only | None found - correctness fine, no SIMD speedup |
quic-go/quic-go v0.59.1 (indirect) |
QUIC/HTTP3 transport | No data found either way | No data found | Library only | Unverified rather than proven-good |
containerd/containerd/v2 v2.3.4 (direct) |
Container/OCI/CNI plumbing | Release-class architecture since v1.6.8 (2022-05-03), release binaries ship; found in Ubuntu 26.04 riscv64 (containerd) |
Not CI-tested - tracking issue open | Release binaries ship for riscv64 today | Open: containerd/containerd#13020 (opened 2026-03-12, riscv64 not yet in CI matrix); open PR #13124 working to add it |
Summary: the dependency stack is essentially riscv64-clean at the source level - every performance-sensitive dependency examined (sonic’s JIT, klauspost’s compression/cpuid, x/crypto, lz4) degrades gracefully to a portable Go implementation on riscv64 rather than failing to build, and none showed a riscv64 blocking issue in its own tracker. The two real gaps are structural and project-level, not dependency-level: (1) Tinkerbell’s own Makefile/CI has no riscv64 target at all, and (2) containerd, the one dependency with actual OS distribution and a project-graph hit, ships riscv64 release binaries but still lacks CI test coverage (open issue #13020) - the main residual risk in the transitive stack, should Tinkerbell ever add a riscv64 build.
11. Known Bugs and Active Issues
| ID | Title | Status | Severity | Notes |
|---|---|---|---|---|
| N/A | No riscv64 issues exist in tinkerbell/tinkerbell or tinkerbell/tink |
N/A | N/A | Confirmed via search_issues/search_pull_requests for riscv, riscv64, RISC-V scoped to both repos - zero results |
| golang/go#81175 | riscv64 linker “J-type instruction relocation offset” failure on coverage-instrumented builds | Open (as of 2026-08-27) | Transitive/toolchain | Would only matter if Tinkerbell’s own CI ever adds -coverprofile on a riscv64 build |
| containerd/containerd#13020 | riscv64 not yet in containerd’s CI test matrix despite shipping release binaries | Open (opened 2026-03-12) | Transitive dependency risk | PR #13124 (open) working to close this |
No correctness bugs, NaN/floating-point bugs, or performance bugs specific to Tinkerbell-on-RISC-V exist anywhere, because no RISC-V enablement work for Tinkerbell itself has ever been attempted - there is nothing to have a bug in yet.
12. Objections and Upstream Blockers
Stated objections: none found. There is zero recorded community discussion (no issues, PRs, or commits) requesting or discussing a RISC-V port anywhere in the tinkerbell org. This is not evidence of resistance - the topic appears never to have been raised at all.
Technical blockers: none identified beyond the absence of groundwork - no GOARCH=riscv64 Makefile target, no CI matrix leg, no riscv64 entry in the iPXE architecture map (docs/technical/smee/IPXE_ARCH_MAP.md), and no riscv64 HookOS image. The dependency stack itself (Section 9) presents no blocking issue.
Organizational blockers: the project’s single-owner CODEOWNERS/settings gating (@jacobweinstock) means any new architecture target would need that maintainer’s buy-in; there is no evidence of an existing relationship with RISE, Equinix, or AWS around RISC-V that would create organizational pressure to add it.
Acceptance probability: [NEEDS VERIFICATION] - cannot be assessed from available evidence since no proposal has ever been made. The project does demonstrate willingness to support new architectures generically (the iPXE arch-map is user-overridable at runtime without code changes, and arm64 was added as a first-class native-runner target alongside amd64), which is a positive signal for extensibility, but this is inference, not a stated position.
13. Readiness Assessment
- Color: orange (no upstream CI)
- Release provider: none - no upstream, distro, RISE, or third-party riscv64 release exists for Tinkerbell on any channel checked (Section 8)
- Optimization gap: N/A - Tinkerbell is not an optimization-purpose project. It is a bare-metal provisioning/orchestration tool with no JIT, SIMD, or compute-kernel hot paths of its own (Section 4); running it on RISC-V with only generic Go code would deliver its full stated value, so the Step 2 optimization modifier does not apply.
- Justification: Tinkerbell has no upstream riscv64 CI - both GitHub Actions workflow files (
ci.yaml,ipxe.yaml) define build matrices limited toamd64andarm64only, with zero occurrences of “riscv” anywhere in the repository tree. There is also no distribution floor to apply: Tinkerbell is not packaged by Ubuntu, Debian, Fedora, or Arch Linux RISC-V on any architecture, so there is no clean-distro-build or downstream-only signal to lift the grade above the base “no upstream CI” case. Per the color model’s Step 1 table, no upstream CI plus no distro package plus no confirmed breakage places this project at orange (not yellow, since there is no unpatched distro build to apply the floor; not red, since nothing is confirmed broken - riscv64 has simply never been attempted). - Pending work that could change the grade: none identified. No open PR or issue in the
tinkerbellorg proposes riscv64 support, and no RISE blog post, working group, funded project (RFP/RP-series), or runner/provisioning infrastructure references or uses Tinkerbell in any way - the only appearance of “Tinkerbell” anywhere in theriseproject-devGitHub org is as an un-actioned candidate name in this reporting queue itself.
14. Investment Analysis
RISE has not funded, discussed, or otherwise touched Tinkerbell in any capacity (Section 13). All work items below start from zero prior art and are sized on that basis.
14.1 Functional Enablement
- Add
GOARCH=riscv64cross-compile targets toMakefilefortinkerbell,tink-agent, and the embedded binary variants. - Add a riscv64 leg to
build-embedded-binariesandbuild-container-images/build-publish-container-imagesin.github/workflows/ci.yaml, most likely via QEMU emulation initially (no native riscv64 GitHub-hosted runner exists today, unlike the nativeubuntu-24.04-armused for arm64). - Add a riscv64 entry to
docs/technical/smee/IPXE_ARCH_MAP.mdand confirm/build a riscv64 iPXE binary (snp-riscv64.efior equivalent) in.github/workflows/ipxe.yaml- required before Tinkerbell can provision a riscv64 target machine, not just run its own control plane on riscv64. - Build/verify a riscv64 HookOS image, since the in-memory provisioning OS used during workflows is a separate artifact not covered by the Tinkerbell binary build alone. [NEEDS VERIFICATION: HookOS build process was not directly researched in this pass.]
- Validate the dependency stack (Section 9) compiles cleanly end-to-end on riscv64; expected low-risk given every checked dependency degrades to a portable Go path, but containerd’s lack of riscv64 CI coverage (
containerd/containerd#13020) means its riscv64 behavior is unverified upstream and should be smoke-tested directly.
14.2 Performance Optimization
Not applicable. Tinkerbell has no SIMD/JIT/compute-kernel hot paths for any architecture (Section 4); there is no optimization work to size beyond what generic Go compilation already provides.
14.3 CI/CD Infrastructure
- Stand up riscv64 CI, initially via QEMU emulation matching the existing generic
docker/setup-qemu-action@v4setup already present in the workflow (currently unused for any riscv64 target). - Evaluate RISE RISC-V runners (referenced in RISE’s own blog series, e.g. “Announcing the RISE RISC-V Runners” and “RISE RISC-V Runners: Six Weeks In” - see Section 16) as a lower-latency alternative to QEMU emulation once functional enablement lands, to bring riscv64 CI to native-hardware parity with the existing
ubuntu-24.04-armarm64 runners. - Add riscv64 to the release-blocking matrix only after test execution (not just build) is confirmed working, to avoid the yellow-tier “build-only” ceiling.
14.4 Ecosystem Enablement
Not applicable - Section 10 is omitted per the report format rules. Tinkerbell is a standalone Go application/tool with no dependent package ecosystem (no PyPI/npm/Maven consumers building against it) that would require separate riscv64 enablement.
14.5 Summary Table
| Area | Work Item | Effort (person-weeks) | Owner | Priority |
|---|---|---|---|---|
| Functional | Add GOARCH=riscv64 Makefile targets (tinkerbell, tink-agent, embedded variants) |
0.5-1 | Upstream maintainer or contributor PR | Critical |
| Functional | Add riscv64 CI matrix leg (build + test) via QEMU | 1-2 | Upstream maintainer or contributor PR | Critical |
| Functional | Add riscv64 entry to IPXE_ARCH_MAP.md and build riscv64 iPXE binary | 1-2 | Upstream maintainer or contributor PR | High |
| Functional | Build/verify riscv64 HookOS image | 1-3 (unverified scope) | Upstream maintainer or contributor PR | High |
| Functional | Validate dependency stack end-to-end on riscv64 (esp. containerd given open #13020) | 0.5-1 | Contributor PR | Medium |
| CI/CD | Evaluate/adopt RISE RISC-V runners for native-hardware CI | 0.5-1 | Contributor PR + RISE coordination | Medium |
| Release | Publish riscv64 release binaries and container images once CI is green | 0.5 | Upstream maintainer | Medium |
15. Updates
(No updates yet - initial report dated 2026-09-08.)
16. References
- tinkerbell/tinkerbell repository
- Tinkerbell homepage
.github/workflows/ci.yaml.github/workflows/ipxe.yaml- Makefile
- PR #937 - bump golang.org/x/crypto 0.54.0 to 0.55.0
- PR #775 - bump golang.org/x/sys 0.44.0 to 0.45.0
- PR #157 - bump golang.org/x/sys 0.32.0 to 0.33.0
- Commit 2488c9e - bump golang.org/x/sys 0.24.0 to 0.25.0 (originally tinkerbell/smee#513)
- Commit ed313ca - bump opencontainers/image-spec 1.1.0-rc4 to 1.1.0-rc5 (originally tinkerbell/tink#823)
- tinkerbell/tinkerbell PR #513 (current, unrelated EMBEDDED.md doc PR)
- tinkerbell/tinkerbell PR #823 (current, unrelated Mergify merge-queue PR)
- docs/technical/smee/IPXE_ARCH_MAP.md
- docs/ADOPTERS.md
- Ubuntu 26.04 “resolute” package search for Tinkerbell
- Arch Linux RISC-V port package index
- PyPI tinkerbell package JSON
- RISE Python wheel-builder GitLab package registry query for tinkerbell
- golang/go#81175 - riscv64 linker relocation-offset failure on coverage builds
- containerd/containerd#13020 - riscv64 not yet in CI test matrix
- RISE Project blog
- RISE Project homepage
- RISE blog - Announcing the RISE RISC-V Runners
- RISE blog - RISE RISC-V Runners: Six Weeks In
- Local clone used for source inspection:
/home/user/tinkerbell/tinkerbell(shallow clone, HEAD733792cc0e07ba01b7ae82eae989c5935537ddda, fetched 2026-09-08)