ci: use the image's pinned snapshot.debian.org for EOL Debian bases - #94
Open
chaseshyu wants to merge 1 commit into
Open
ci: use the image's pinned snapshot.debian.org for EOL Debian bases#94chaseshyu wants to merge 1 commit into
chaseshyu wants to merge 1 commit into
Conversation
bullseye-security expired on deb.debian.org, and archive.debian.org carries no bullseye at all -- the old rewrite 404'd, and dropping the suite leaves libc6-dev older than the image's installed libc6. Official Debian images ship a commented-out snapshot.debian.org pin from their own build date; use that. One perl pass covers sources.list (buster, bullseye) and deb822 debian.sources (bookworm+). Drop `make clean` from both build steps: the container and checkout are fresh, objects are ndims-suffixed, and it hard-errored on the missing HDF5 headers anyway. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Problem
g++ 9/10/11 legs die in
apt, before reaching the compiler. Those images are Debian bullseye, which just went EOL:deb.debian.orgserves an expiredbullseye-securityRelease, soapt-get updatefails and the archive fallback runs. It is wrong twice:s|deb.debian.org/debian|archive.debian.org/debian|galso matches insidedebian-**security**, andarchive.debian.orghas no bullseye at all → 404.libc6, plainbullseye mainonly has the olderlibc6-dev.g++ 8 (buster) survived by luck — its suite is
buster/updates, which the sed happened to rewrite to a real path. Moot now:deb.debian.orgno longer serves buster either.Fix
Every official Debian image ships a commented-out
snapshot.debian.orgpin from its own build date — immutable, security included, version-consistent with what is installed. Fall back to that instead of the archive. Oneperlpass covers both formats (sources.listfor buster/bullseye, deb822debian.sourcesfor bookworm+), so it keeps working as later bases are archived. The guard runs before the rewrite, so a pin-less image fails loudly rather than ending up with zero sources.Also drops
make cleanfrom both build steps: container and checkout are fresh, objects arendims-suffixed, and it was hard-erroring on missing HDF5 headers, surviving only because of the;.Verification
Locally under
docker --platform linux/amd64, using therun:block extracted from the YAML:debian:busteranddebian:bullseyetake the real fallback and install boost;gcc:11itself installs boost 1.74 under g++ 11.5.0;bookworm/trixiepass the forced-fallback branch.make cleanremoval checked ingcc:11— 2D then 3D back-to-back, both binaries link. This PR touches the workflow, so it also runs the matrix on itself.🤖 Generated with Claude Code