espressif-adf (v2.x)
Published 2026-02-08 17:32:43 +01:00 by cs
Installation
docker pull git.stop.pe/images/espressif-adf:v2.xsha256:a4460ce7bc75a748462e463273a58c6cbae2343d070e0b0049a17c21039911c4Image layers
| # debian.sh --arch 'amd64' out/ 'trixie' '@1769990400' |
| ARG DEBIAN_FRONTEND=noninteractive |
| RUN |1 DEBIAN_FRONTEND=noninteractive /bin/sh -c : && apt update 2>&1 >/dev/null && apt upgrade -y 2>&1 >/dev/null && apt install -y apt-utils bison bzip2 ca-certificates ccache check curl flex git git-lfs gperf lcov libbsd-dev libffi-dev libglib2.0-0 libncurses-dev libpixman-1-0 libsdl2-2.0-0 libslirp0 libusb-1.0-0-dev make libgcrypt20 ninja-build python3 python3-venv ruby unzip wget xz-utils zip 2>&1 >/dev/null && apt autoremove -y 2>&1 >/dev/null && rm -rf /var/lib/apt/lists/* && update-alternatives --install /usr/bin/python python /usr/bin/python3 10 && : # buildkit |
| ARG ADF_CLONE_URL=https://github.com/espressif/esp-adf.git |
| ARG ADF_CHECKOUT_REF= |
| ARG ADF_CLONE_SHALLOW= |
| ARG ADF_CLONE_SHALLOW_DEPTH=1 |
| ARG ADF_INSTALL_TARGETS=all |
| ARG ADF_VERSION=release/v2.x |
| ARG IDF_VERSION=release/v5.5 |
| ENV ADF_PATCH=esp-adf-fix-struct.patch |
| ENV ADF_PATH=/opt/esp/adf |
| ENV IDF_PATH=/opt/esp/adf/esp-idf |
| ENV IDF_TOOLS_PATH=/opt/esp |
| ENV ESP_USER=esp |
| ENV ADF_CLONE_BRANCH_OR_TAG=release/v2.x |
| ENV IDF_CLONE_BRANCH_OR_TAG=release/v5.5 |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c if [ "$ADF_INSTALL_TARGETS" = "all" ]; then apt update >/dev/null 2>&1 && apt install -y build-essential patch jq >/dev/null 2>&1 && apt autoremove -y >/dev/null 2>&1 && rm -rf /var/lib/apt/lists/* ; fi && curl -fsSL https://github.com/mikefarah/yq/releases/download/v4.52.2/yq_linux_amd64 -o /usr/local/bin/yq && chmod +x /usr/local/bin/yq # buildkit |
| COPY esp-adf-fix-struct.patch /tmp/ # buildkit |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c echo ADF_CHECKOUT_REF=$ADF_CHECKOUT_REF ADF_CLONE_BRANCH_OR_TAG=$ADF_CLONE_BRANCH_OR_TAG && git clone --recursive ${ADF_CLONE_SHALLOW:+--depth=${ADF_CLONE_SHALLOW_DEPTH} --shallow-submodules} ${ADF_CLONE_BRANCH_OR_TAG:+-b $ADF_CLONE_BRANCH_OR_TAG} $ADF_CLONE_URL $ADF_PATH && git config --system --add safe.directory $ADF_PATH && if [ -n "$ADF_CHECKOUT_REF" ]; then cd $ADF_PATH && if [ -n "$ADF_CLONE_SHALLOW" ]; then git fetch origin --depth=${ADF_CLONE_SHALLOW_DEPTH} --recurse-submodules ${ADF_CHECKOUT_REF}; fi && git checkout $ADF_CHECKOUT_REF && git submodule update --init --recursive; fi && if [ -n "$IDF_CLONE_BRANCH_OR_TAG" ]; then cd $ADF_PATH/esp-idf && git checkout "${IDF_CLONE_BRANCH_OR_TAG}" && git submodule update; fi # buildkit |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c : && update-ca-certificates --fresh && $ADF_PATH/esp-idf/tools/idf_tools.py --non-interactive install required --targets=${ADF_INSTALL_TARGETS} && $ADF_PATH/esp-idf/tools/idf_tools.py --non-interactive install qemu* --targets=${ADF_INSTALL_TARGETS} && $ADF_PATH/esp-idf/tools/idf_tools.py --non-interactive install cmake && $ADF_PATH/esp-idf/tools/idf_tools.py --non-interactive install-python-env && rm -rf $IDF_TOOLS_PATH/dist $ADF_PATH/.git* && : # buildkit |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c : && useradd -m -s /usr/bin/bash ${ESP_USER} && mkdir /project && chown ${ESP_USER}:${ESP_USER} /project # buildkit |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c echo 'alias get_adf=". /opt/esp/adf/export.sh"' >> /home/${ESP_USER}/.bashrc # buildkit |
| ENV IDF_PYTHON_CHECK_CONSTRAINTS=no |
| ENV IDF_CCACHE_ENABLE=1 |
| COPY entrypoint.sh /opt/esp/entrypoint.sh # buildkit |
| ENV NVM_DIR=/usr/local/nvm |
| ENV NODE_VERSION=24.13.0 |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c mkdir -p $NVM_DIR && curl -sf -o- https://raw.githubusercontent.com/creationix/nvm/v0.40.4/install.sh | bash # buildkit |
| RUN |8 DEBIAN_FRONTEND=noninteractive ADF_CLONE_URL=https://github.com/espressif/esp-adf.git ADF_CHECKOUT_REF= ADF_CLONE_SHALLOW= ADF_CLONE_SHALLOW_DEPTH=1 ADF_INSTALL_TARGETS=all ADF_VERSION=release/v2.x IDF_VERSION=release/v5.5 /bin/sh -c . $NVM_DIR/nvm.sh && nvm install $NODE_VERSION && nvm alias default $NODE_VERSION && nvm use default && echo "PATH=${PATH}" >>/etc/environment # buildkit |
| ENV NODE_PATH=/usr/local/nvm/v24.13.0/lib/node_modules |
| ENV PATH=/usr/local/nvm/versions/node/v24.13.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| USER esp |
| WORKDIR /tmp |
| SHELL [/bin/bash --login -e -o pipefail -c] |
| CMD ["/bin/bash"] |