# Toolchain installer image: installs the pinned toolchain onto the host; Docker is the only prerequisite. # docker build -f ctrl/Dockerfile.deps --target deps -t -deps . # docker build -f ctrl/Dockerfile.deps --target deps-full -t -deps:full . # Notes: docs/notes/Dockerfile.deps.md FROM debian:trixie-slim AS deps # curl: fetch and verify; graphviz + python3: diagrams. docker-cli, NOT docker.io # (which lacks the `docker` binary under --no-install-recommends). RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates curl jq graphviz python3 docker-cli \ && rm -rf /var/lib/apt/lists/* # The installer is the generated one-file standalone kit, pins frozen in. ARG PROFILE=default WORKDIR /work COPY standalone/${PROFILE}/rigdeps.sh /work/rigdeps.sh RUN chmod +x /work/rigdeps.sh # Defaults; every one is overridable with -e at run time. ENV DEPS_SOURCE=upstream \ OUT_BIN=/out/bin \ HOST_ROOT=/host ENTRYPOINT ["/work/rigdeps.sh"] CMD ["install"] # --------------------------------------------------------------------------- # deps-full — same image, binaries baked in, works with no network at all. FROM deps AS deps-full RUN /work/rigdeps.sh fetch --to /opt/rig/bin ENV DEPS_SOURCE=baked \ BAKED_BIN=/opt/rig/bin