Mount the Rust archive from its own sources/rust directory

Download the per-architecture Rust tarball into sources/rust/ and have the
rocky9 and debian13 Dockerfiles bind that directory and pick the archive
with uname -m. This drops the architecture-neutral hard link and keeps the
Rust layer's cache key independent of other source archives.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
GuofangandClaude Sonnet 5.5 committed 2026-10-27 09:54:32 +08:00
1 parent 4fbd9daa30
commit eb0e3ba5d9
3 files changed
+8 -8

No files matched your search

+4 -4
View File
@@ -135,16 +135,16 @@ fetch lz4-v1.10.0.tar.gz \
fetch arrow-apache-arrow-25.0.1.tar.gz \
https://wangguofang.net/github.com/apache/arrow/archive/apache-arrow-25.0.1.tar.gz
# Rust ships one standalone tarball per architecture, named after `uname -m` (x86_64, aarch64).
# The Dockerfiles mount it under the architecture-neutral name rust-1.99.1.tar.xz (a hard link
# that is refreshed on every run, so switching architectures never leaves a stale archive).
# It lives in its own sources/rust/ directory, which the Dockerfiles mount as a whole and pick the
# archive from by architecture, so adding other sources never invalidates the Rust build layer.
rust_triple="$(uname -m)-unknown-linux-gnu"
fetch "rust-1.99.1-$rust_triple.tar.xz" \
mkdir -p rust
fetch "rust/rust-1.99.1-$rust_triple.tar.xz" \
"https://mirrors.cloud.tencent.com/rustup/dist/rust-1.99.1-$rust_triple.tar.xz" \
"https://mirrors.tuna.tsinghua.edu.cn/rustup/dist/2026-10-15/rust-1.99.1-$rust_triple.tar.xz" \
"https://repo.huaweicloud.com/rustup/dist/rust-1.99.1-$rust_triple.tar.xz" \
"https://mirrors.ustc.edu.cn/rust-static/dist/rust-1.99.1-$rust_triple.tar.xz" \
"https://static.rust-lang.org/dist/rust-1.99.1-$rust_triple.tar.xz"
ln -f "rust-1.99.1-$rust_triple.tar.xz" rust-1.99.1.tar.xz
fetch duckdb-v1.5.6.tar.gz \
https://wangguofang.net/github.com/duckdb/duckdb/archive/v1.5.6.tar.gz
fetch duckdb-ui-0628932f74b1e2e9eaf68a05b22d737455541dca.tar.gz \