# smartbotic-automation Build Base Image # Pre-installed Debian 13 build dependencies for fast iterative builds. # # Build: # docker buildx build -f packaging/Dockerfile.base \ # --build-arg REPO_PASS= \ # -t smartbotic-automation-build-base:debian13 . FROM debian:trixie ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates \ && rm -rf /var/lib/apt/lists/* # SmartBotics APT repository (for libsmartbotic-db-client-dev) ARG REPO_USER=callerai ARG REPO_PASS COPY packaging/smartbotics-repo.gpg /usr/share/keyrings/smartbotics-repo.gpg RUN echo "deb [signed-by=/usr/share/keyrings/smartbotics-repo.gpg] https://repository.smartbotics.ai trixie main" \ > /etc/apt/sources.list.d/smartbotics.list \ && printf "machine repository.smartbotics.ai\nlogin %s\npassword %s\n" \ "$REPO_USER" "$REPO_PASS" > /etc/apt/auth.conf.d/smartbotics.conf \ && chmod 600 /etc/apt/auth.conf.d/smartbotics.conf \ && apt-get update \ && apt-get install -y --no-install-recommends libsmartbotic-db-client-dev \ && rm -rf /var/lib/apt/lists/* \ && rm -f /etc/apt/auth.conf.d/smartbotics.conf \ && rm -f /etc/apt/sources.list.d/smartbotics.list RUN apt-get update && apt-get install -y --no-install-recommends \ # Build tools build-essential cmake ninja-build git pkg-config ccache dpkg-dev \ # Compression / crypto / uuid libssl-dev zlib1g-dev libbrotli-dev uuid-dev \ # gRPC + protobuf protobuf-compiler libprotobuf-dev libgrpc++-dev protobuf-compiler-grpc \ # JSON + logging + fmt nlohmann-json3-dev libspdlog-dev libfmt-dev \ # curl / websockets libcurl4-openssl-dev libwebsockets-dev \ # WebUI build (Node.js + npm) nodejs npm \ && rm -rf /var/lib/apt/lists/* \ && echo "smartbotic-automation:debian13:$(date -u +%Y-%m-%dT%H:%M:%SZ)" > /etc/smartbotic-automation-build-base