ci(nixos): free GitHub ARM primary, Pi5 last-resort fallback (PR + release builders) - #31
Open
mrosseel wants to merge 1 commit into
Open
ci(nixos): free GitHub ARM primary, Pi5 last-resort fallback (PR + release builders)#31mrosseel wants to merge 1 commit into
mrosseel wants to merge 1 commit into
Conversation
…llback Both the testable-PR builder (nixos-pr-build.yml) and the release builder (release.yml) tried the self-hosted Pi5 first, which can't compile the OB patched kernel within its timeout. Flip both: build on the free ubuntu-24.04-arm runner first (faster cores; Attic substitutes everything unchanged, so only a kernel/source change compiles, and each build is pushed back so the next is fast), with the Pi5 as a last-resort fallback that runs only if the hosted build fails. Drops the native-wait polling job from both. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015EWb2JET2JE1t4ya3HZPNL
mrosseel
force-pushed
the
ci-nixos-arm-primary
branch
from
July 19, 2026 20:18
f17f296 to
8612c8e
Compare
mrosseel
force-pushed
the
nixos
branch
3 times, most recently
from
August 18, 2026 18:42
6c8781c to
dc7b527
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The OB patched-kernel build overran the CI timeouts. Both build workflows
tried the self-hosted Pi5 first, which can't compile the aarch64 kernel from
scratch within its timeout (~2 h on the Pi5).
What
Flip both build workflows to free
ubuntu-24.04-armfirst, Pi5 self-hosted asa last-resort fallback, with Attic as the substituter in front of both:
nixos-pr-build.yml(labeled testable/preview PRs):build-hosted(arm,150 min) primary →
build-pi5fallback (only if hosted fails). Drops thenative-waitpolling job.release.yml(workflow_dispatchrelease builder): same flip —build-hosted(arm, 150 min) primary →build-native(Pi5) fallback. Dropsnative-wait. Prefers the hosted artifact when assembling.Attic substitutes anything already built (incl. the patched kernel once it
exists), so only a kernel/source change compiles from scratch (~1 h on the free
runner); each build is pushed back, so every subsequent build is fast.
Net effect: add
testable→ it builds, and dispatch a release → itbuilds, without the Pi5 bottleneck. First build after a kernel change is the
only slow one.
Must land on
nixosbefore it affects labeled PR builds (pull_request_targetuses the base-branch workflow).
release.yml(workflow_dispatch) uses theworkflow from the branch it's dispatched on and builds
source_branch(default
main).🤖 Generated with Claude Code