# A thin overlay that adds the C/C++ build toolchain to an already-built # runtime image. # # The durable fix lives in `deploy/clawmates-runtime/Dockerfile`, which now # installs `cmake build-essential` in its runtime stage. But that Dockerfile # also COMPILES zeroclaw from our fork in an earlier stage — a long build that # needs credentials for git.redclaw.dev — so rebuilding it just to add two apt # packages is the wrong trade on a laptop. # # This layers those packages onto the existing image instead, which is exact: # the same apt, the same distro, on top of the same base. Build and point the # server at it with: # # docker build -f images/runtime-toolchain.Dockerfile \ # -t clawmates-runtime:toolchain images/ # CLAWMATES_RUNTIME_IMAGE=clawmates-runtime:toolchain # # Once a runtime image built from the corrected deploy/ Dockerfile is published, # this file has no reason to exist — delete it rather than letting a second # source of toolchain truth persist. ARG BASE=clawmates-runtime:sync FROM ${BASE} # `cmake` and `g++` (via build-essential) plus `python3-dev` for pyo3 crates # that link `-lpython3.11`. Missing them made `cargo test` on a repo whose # deps drive a cmake build exit 101, which the delivery gate reads as a red # suite rather than as "could not build". RUN apt-get update \ && apt-get install -y --no-install-recommends cmake build-essential python3-dev \ && rm -rf /var/lib/apt/lists/* \ && cmake --version | head -1 \ && c++ --version | head -1 \ && ls /usr/lib/*/libpython3*.so | head -1