-
Notifications
You must be signed in to change notification settings - Fork 3.8k
fix: use LLVM unstable repo for Debian trixie/forky [build images] #25470
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
WalkthroughAdds Debian-specific logic to Changes
Possibly related PRs
Suggested reviewers
Pre-merge checks❌ Failed checks (1 inconclusive)
✅ Passed checks (1 passed)
Comment |
The LLVM apt repository (apt.llvm.org) doesn't have a dedicated release for Debian trixie (13) or forky. When running llvm.sh on these distros, it tries to access llvm-toolchain-trixie-19 which returns a 404. This fix passes -n=unstable to llvm.sh when running on Debian trixie or forky, directing it to use the unstable repository which does have the packages available. Fixes the docker image build failure: E: The repository 'http://apt.llvm.org/trixie llvm-toolchain-trixie-19 Release' does not have a Release file. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
34b34ef to
131442a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
scripts/bootstrap.sh(1 hunks)
🔇 Additional comments (1)
scripts/bootstrap.sh (1)
1160-1172: Approved — LLVM repository selection for Debian trixie/forky is correctly implemented.The logic properly detects Debian trixie/forky systems and passes
-n=unstableto llvm.sh to work around the missing trixie-specific repository. Variable initialization, conditional gating, and shell expansion are all correct. The fix matches the commit message intent and solves the documented 404 error on llvm-toolchain-trixie-19.
| case "$VERSION_CODENAME" in | ||
| trixie|forky) | ||
| llvm_codename_arg="-n=unstable" | ||
| ;; | ||
| esac | ||
| fi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick | 🔵 Trivial
Optional: Add default case to case statement for clarity.
While the current code works correctly (unmatched codenames simply set no additional argument), adding an explicit default case improves code clarity and future maintainability.
if [ "$distro" = "debian" ]; then
case "$VERSION_CODENAME" in
trixie|forky)
llvm_codename_arg="-n=unstable"
+ ;;
+ *)
+ # Other Debian versions use their native LLVM repository
;;
esac
fiCommittable suggestion skipped: line range outside the PR's diff.
🤖 Prompt for AI Agents
In scripts/bootstrap.sh around lines 1164 to 1169, the case statement handling
$VERSION_CODENAME only lists trixie|forky and then ends, which is functional but
lacks an explicit default branch; add a default (*) case that explicitly sets
llvm_codename_arg to an empty value or leaves it unchanged (e.g.,
llvm_codename_arg="" or a no-op comment) to make intent clear and improve
maintainability, and ensure the case block still ends with ;; and the esac as
currently structured.
Summary
unstablerepository instead of the non-existenttrixierepositoryapt.llvm.org) doesn't have packages for Debian trixie (13) or forky - attempts to accessllvm-toolchain-trixie-19return 404-n=unstableflag tollvm.shwhen running on these Debian versionsTest plan
Fixes the build failure from: https://github.com/oven-sh/bun-development-docker-image/actions/runs/20105199193
Error was:
🤖 Generated with Claude Code