# The Linux test environment: what CI runs, and what `just test-linux` runs locally. FROM docker.io/library/rust:1.96-slim-trixie RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates build-essential cmake perl pkg-config clang mold git git-lfs curl openssh-client \ && rm -rf /var/lib/apt/lists/* ARG GO_VERSION=1.26.0 RUN arch="$(dpkg --print-architecture)" \ && curl -fsSL "https://go.dev/dl/go${GO_VERSION}.linux-${arch}.tar.gz" | tar -C /usr/local -xz ENV PATH=/usr/local/go/bin:$PATH \ RUSTFLAGS="-C linker=clang -C link-arg=-fuse-ld=mold" \ CARGO_TARGET_DIR=/target RUN rustup component add rustfmt clippy # The reference git-lfs-transfer (SSH LFS) for the LFS conformance gate. RUN cargo install --locked --root /usr/local scutiger-lfs@0.3.0 \ && rm -rf /usr/local/cargo/registry WORKDIR /src