Files
onepilot/tools/laptop_device_build/Dockerfile
T
firestar5683 1bbee6c390 fix
2026-03-29 23:43:14 -05:00

45 lines
1.4 KiB
Docker

FROM ghcr.io/commaai/openpilot-base-aarch64:latest
ARG CAPNP_VERSION=1.3.0
ENV PYTHONUNBUFFERED=1
ENV UV_LINK_MODE=copy
WORKDIR /work
# Keep this image minimal; dependency resolution is done by uv inside the workspace.
# rsync/ssh-client are needed for optional sysroot sync from a comma device.
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
curl \
rsync \
openssh-client \
e2fsprogs \
android-sdk-libsparse-utils \
qemu-user-static \
gcc-aarch64-linux-gnu \
g++-aarch64-linux-gnu \
cmake \
qtbase5-private-dev \
python3-pip \
xz-utils \
git \
&& rm -rf /var/lib/apt/lists/*
RUN set -eux; \
tmpdir="$(mktemp -d)"; \
curl -fsSL "https://github.com/capnproto/capnproto/archive/refs/tags/v${CAPNP_VERSION}.tar.gz" | tar -xz -C "${tmpdir}"; \
cmake -S "${tmpdir}/capnproto-${CAPNP_VERSION}/c++" -B "${tmpdir}/build" \
-DBUILD_TESTING=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/local; \
cmake --build "${tmpdir}/build" -j"$(nproc)"; \
cmake --install "${tmpdir}/build"; \
ldconfig; \
capnp --version; \
rm -rf "${tmpdir}"
RUN /usr/bin/python3 -m pip install --no-cache-dir --break-system-packages uv
# Fix for "dubious ownership" git errors when mounting folders on Linux hosts.
RUN git config --global --add safe.directory /work