From d5244c1d6685b7e1e34c69363ce53716725b82de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20Cie=C5=9Blik?= Date: Thu, 21 May 2026 19:50:25 +0200 Subject: [PATCH] Switch to Debian apt packages, pin nrfx to v2.9.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace ARM tarball download with gcc-arm-none-eabi from apt - Drop TARGETARCH/GCC_VERSION build args — no longer needed - Pin nrfx submodule to v2.9.0 which still bundles mdk/ headers - nrfx 3+ dropped mdk/ from the repo --- Dockerfile | 22 +++++----------------- justfile | 8 +------- vendor/nrfx | 2 +- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/Dockerfile b/Dockerfile index 952bf20..e8ea987 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,23 +1,11 @@ FROM debian:bookworm-slim -ARG GCC_VERSION=13.2.rel1 -ARG TARGETARCH=amd64 - RUN apt-get update && apt-get install -y --no-install-recommends \ - wget xz-utils cmake ninja-build \ + gcc-arm-none-eabi \ + binutils-arm-none-eabi \ + libnewlib-arm-none-eabi \ + cmake \ + ninja-build \ && rm -rf /var/lib/apt/lists/* -RUN case "${TARGETARCH}" in \ - amd64) _arch=x86_64 ;; \ - arm64) _arch=aarch64 ;; \ - *) echo "unsupported arch: ${TARGETARCH}" >&2 && exit 1 ;; \ - esac \ - && wget -qO /tmp/gcc.tar.xz \ - "https://developer.arm.com/-/media/Files/downloads/gnu/${GCC_VERSION}/binrel/arm-gnu-toolchain-${GCC_VERSION}-${_arch}-arm-none-eabi.tar.xz" \ - && tar -xf /tmp/gcc.tar.xz -C /opt \ - && ln -s "/opt/arm-gnu-toolchain-${GCC_VERSION}-${_arch}-arm-none-eabi" /opt/arm-toolchain \ - && rm /tmp/gcc.tar.xz - -ENV PATH="/opt/arm-toolchain/bin:${PATH}" - WORKDIR /src diff --git a/justfile b/justfile index d1adc05..5b51e28 100644 --- a/justfile +++ b/justfile @@ -13,17 +13,11 @@ user_ns := `command -v podman >/dev/null 2>&1 \ && echo "--userns=keep-id" \ || echo "--user $(id -u):$(id -g)"` -# host CPU arch → container build arg -arch := `uname -m | sed 's/x86_64/amd64/; s/aarch64/arm64/'` - # ── recipes ──────────────────────────────────────────────────────────────── # build container image (only rebuilt when Dockerfile changes) image-build: - {{engine}} build \ - --build-arg TARGETARCH={{arch}} \ - --build-arg GCC_VERSION=13.2.rel1 \ - -t {{image}} . + {{engine}} build -t {{image}} . # compile firmware inside the container build: image-build diff --git a/vendor/nrfx b/vendor/nrfx index 0883a27..16756ca 160000 --- a/vendor/nrfx +++ b/vendor/nrfx @@ -1 +1 @@ -Subproject commit 0883a272c34004697dd56dfa44f6e2d0f8705689 +Subproject commit 16756cadac53aa72e4262dc3e17db73f6bda715c