From ac65e122e11baa0c9b4705db8be6ce74db0a9bac Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 4 May 2022 16:58:07 +0200 Subject: [PATCH 01/18] Add gitpod files --- .gitpod.Dockerfile | 43 +++++++++++++++++++++++++++++++++++++++++++ .gitpod.yml | 18 ++++++++++++++++++ README.md | 3 +++ 3 files changed, 64 insertions(+) create mode 100644 .gitpod.Dockerfile create mode 100644 .gitpod.yml diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile new file mode 100644 index 00000000..3447455b --- /dev/null +++ b/.gitpod.Dockerfile @@ -0,0 +1,43 @@ +# Note: gitpod/workspace-base image references older version of CMake, it's necessary to install newer one +FROM gitpod/workspace-base +ENV LC_ALL=C.UTF-8 +ENV LANG=C.UTF-8 + +# Set users +ARG CONTAINER_USER=gitpod +ARG CONTAINER_GROUP=gitpod +ARG TOOLCHAIN_VERSION=1.60.0.1 + +# Install dependencies +RUN sudo install-packages git curl gcc ninja-build libudev-dev \ + python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ + && pip3 install websockets==10.2 + +USER ${CONTAINER_USER} +WORKDIR /home/${CONTAINER_USER} + +# Install toolchain with extra crates +ARG NIGHTLY_VERSION=nightly-2022-03-10 +ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin:/home/${CONTAINER_USER}/opt/bin +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ + --default-toolchain ${NIGHTLY_VERSION} -y \ + && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ + && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ + +# Add newer version of CMake +ADD --chown=${CONTAINER_USER}:${CONTAINER_GROUP} \ + https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1-linux-x86_64.sh \ + /home/${CONTAINER_USER}/cmake-install.sh +RUN chmod a+x /home/gitpod/cmake-install.sh \ + && mkdir -p /home/gitpod/opt \ + && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license + +ENV ESP_BOARD=esp32c3 +ENV ESP_IDF_VERSION=release/v4.4 +RUN mkdir -p /home/${CONTAINER_USER}/.espressif/frameworks/ \ + && git clone -b ${ESP_IDF_VERSION} --depth 1 --shallow-submodules \ + --recursive https://github.com/espressif/esp-idf.git \ + /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4 \ + && /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ + && rm -rf /home/${CONTAINER_USER}/.espressif/dist \ + && rm -rf /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/docs \ No newline at end of file diff --git a/.gitpod.yml b/.gitpod.yml new file mode 100644 index 00000000..d495b4a8 --- /dev/null +++ b/.gitpod.yml @@ -0,0 +1,18 @@ +image: + file: .gitpod.Dockerfile +tasks: + - name: Setup environment variables for Rust and ESP-IDF + command: | + export IDF_TOOLS_PATH=/home/gitpod/.espressif + source /home/gitpod/.espressif/frameworks/esp-idf-v4.4/export.sh +vscode: + extensions: + - matklad.rust-analyzer + - tamasfe.even-better-toml + - vadimcn.vscode-lldb + - anwar.resourcemonitor + - yzhang.markdown-all-in-one + - serayuzgur.crates +ports: + - port: 9012 + visibility: public \ No newline at end of file diff --git a/README.md b/README.md index 91ef4cd4..d95e9dc4 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,9 @@ with the Espressif ESP32-C3. We suggest you start by [reading the book](https://espressif-trainings.ferrous-systems.com). + +[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://github.com/SergioGasquez/espressif-trainings/tree/feature/gitpod) + ## Contents There is: From bc6f0d1de6ab4b191060eeaa735dcdb669d91692 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 4 May 2022 16:59:47 +0200 Subject: [PATCH 02/18] Update gitpod button --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d95e9dc4..289cbcf4 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ with the Espressif ESP32-C3. We suggest you start by [reading the book](https://espressif-trainings.ferrous-systems.com). -[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://github.com/SergioGasquez/espressif-trainings/tree/feature/gitpod) +[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/SergioGasquez/espressif-trainings/tree/feature/gitpod) ## Contents From 4cdc64c8e0e21507a1a89f201743453c5811bedf Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 4 May 2022 17:06:02 +0200 Subject: [PATCH 03/18] Add cargo tools Remove comments --- .gitpod.Dockerfile | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 3447455b..586a89e1 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -2,36 +2,26 @@ FROM gitpod/workspace-base ENV LC_ALL=C.UTF-8 ENV LANG=C.UTF-8 - -# Set users ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod -ARG TOOLCHAIN_VERSION=1.60.0.1 - -# Install dependencies RUN sudo install-packages git curl gcc ninja-build libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ - && pip3 install websockets==10.2 - + && pip3 install websockets==10.2 USER ${CONTAINER_USER} WORKDIR /home/${CONTAINER_USER} - -# Install toolchain with extra crates ARG NIGHTLY_VERSION=nightly-2022-03-10 ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin:/home/${CONTAINER_USER}/opt/bin RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ - -# Add newer version of CMake + && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy ADD --chown=${CONTAINER_USER}:${CONTAINER_GROUP} \ https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1-linux-x86_64.sh \ /home/${CONTAINER_USER}/cmake-install.sh RUN chmod a+x /home/gitpod/cmake-install.sh \ && mkdir -p /home/gitpod/opt \ - && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license - + && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license ENV ESP_BOARD=esp32c3 ENV ESP_IDF_VERSION=release/v4.4 RUN mkdir -p /home/${CONTAINER_USER}/.espressif/frameworks/ \ From 89c3dd0e1da6e040854a60eeb27b5b48e7527a68 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 4 May 2022 21:05:08 +0200 Subject: [PATCH 04/18] Dont install CMake Add ESP_IDF_TOOLS_INSTALL_DIR --- .gitpod.Dockerfile | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 586a89e1..b3c2cb67 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -5,7 +5,7 @@ ENV LANG=C.UTF-8 ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod RUN sudo install-packages git curl gcc ninja-build libudev-dev \ - python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ + python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ && pip3 install websockets==10.2 USER ${CONTAINER_USER} WORKDIR /home/${CONTAINER_USER} @@ -16,12 +16,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy -ADD --chown=${CONTAINER_USER}:${CONTAINER_GROUP} \ - https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1-linux-x86_64.sh \ - /home/${CONTAINER_USER}/cmake-install.sh -RUN chmod a+x /home/gitpod/cmake-install.sh \ - && mkdir -p /home/gitpod/opt \ - && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license +# ADD --chown=${CONTAINER_USER}:${CONTAINER_GROUP} \ +# https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1-linux-x86_64.sh \ +# /home/${CONTAINER_USER}/cmake-install.sh +# RUN chmod a+x /home/gitpod/cmake-install.sh \ +# && mkdir -p /home/gitpod/opt \ +# && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license +ENV ESP_IDF_TOOLS_INSTALL_DIR=global ENV ESP_BOARD=esp32c3 ENV ESP_IDF_VERSION=release/v4.4 RUN mkdir -p /home/${CONTAINER_USER}/.espressif/frameworks/ \ From 9cadfeb556e497ef5330856955e19d2850e924ed Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 08:17:25 +0000 Subject: [PATCH 05/18] Installl ninja and cmake with idf_tools --- .gitpod.Dockerfile | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index b3c2cb67..f84c5e7b 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -16,19 +16,14 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy -# ADD --chown=${CONTAINER_USER}:${CONTAINER_GROUP} \ -# https://github.com/Kitware/CMake/releases/download/v3.23.1/cmake-3.23.1-linux-x86_64.sh \ -# /home/${CONTAINER_USER}/cmake-install.sh -# RUN chmod a+x /home/gitpod/cmake-install.sh \ -# && mkdir -p /home/gitpod/opt \ -# && ./cmake-install.sh --prefix=/home/gitpod/opt --skip-license -ENV ESP_IDF_TOOLS_INSTALL_DIR=global +# ENV ESP_IDF_TOOLS_INSTALL_DIR=global ENV ESP_BOARD=esp32c3 ENV ESP_IDF_VERSION=release/v4.4 RUN mkdir -p /home/${CONTAINER_USER}/.espressif/frameworks/ \ && git clone -b ${ESP_IDF_VERSION} --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4 \ + && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake ninja \ && /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ && rm -rf /home/${CONTAINER_USER}/.espressif/dist \ && rm -rf /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/docs \ No newline at end of file From 88917a3e7195bb8a425145546b9ab9d8def12ff1 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 12:00:52 +0000 Subject: [PATCH 06/18] Format gitpod.Dockerfile --- .gitpod.Dockerfile | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index f84c5e7b..69072f68 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -4,26 +4,25 @@ ENV LC_ALL=C.UTF-8 ENV LANG=C.UTF-8 ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod +ARG NIGHTLY_VERSION=nightly-2022-03-10 RUN sudo install-packages git curl gcc ninja-build libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ && pip3 install websockets==10.2 USER ${CONTAINER_USER} WORKDIR /home/${CONTAINER_USER} -ARG NIGHTLY_VERSION=nightly-2022-03-10 ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin:/home/${CONTAINER_USER}/opt/bin RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy -# ENV ESP_IDF_TOOLS_INSTALL_DIR=global ENV ESP_BOARD=esp32c3 ENV ESP_IDF_VERSION=release/v4.4 -RUN mkdir -p /home/${CONTAINER_USER}/.espressif/frameworks/ \ +RUN mkdir -p .espressif/frameworks/ \ && git clone -b ${ESP_IDF_VERSION} --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ - /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4 \ + .espressif/frameworks/esp-idf-v4.4 \ && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake ninja \ - && /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ - && rm -rf /home/${CONTAINER_USER}/.espressif/dist \ - && rm -rf /home/${CONTAINER_USER}/.espressif/frameworks/esp-idf-v4.4/docs \ No newline at end of file + && .espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ + && rm -rf .espressif/dist \ + && rm -rf .espressif/frameworks/esp-idf-v4.4/docs \ No newline at end of file From d3ab0ebbd79b53dcd816e898841945948208726d Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 12:35:21 +0000 Subject: [PATCH 07/18] Remove task --- .gitpod.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.gitpod.yml b/.gitpod.yml index d495b4a8..7d74c719 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,10 +1,5 @@ image: file: .gitpod.Dockerfile -tasks: - - name: Setup environment variables for Rust and ESP-IDF - command: | - export IDF_TOOLS_PATH=/home/gitpod/.espressif - source /home/gitpod/.espressif/frameworks/esp-idf-v4.4/export.sh vscode: extensions: - matklad.rust-analyzer From da559d8db5b02b2850c6f6c4978a1037a5c4841d Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 12:50:42 +0000 Subject: [PATCH 08/18] Add wokwi alias --- .gitpod.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitpod.yml b/.gitpod.yml index 7d74c719..cce62fc2 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,5 +1,9 @@ image: file: .gitpod.Dockerfile +tasks: + - name: Setup wokwi alias + command: | + alias wokwi='bash /workspace/ferrous-training/wokwi/run.sh' vscode: extensions: - matklad.rust-analyzer From f5cfb76149afe237c162e6c8ae930065a3912696 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 12:53:40 +0000 Subject: [PATCH 09/18] Remove wokwi alias --- .gitpod.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.gitpod.yml b/.gitpod.yml index cce62fc2..7d74c719 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,9 +1,5 @@ image: file: .gitpod.Dockerfile -tasks: - - name: Setup wokwi alias - command: | - alias wokwi='bash /workspace/ferrous-training/wokwi/run.sh' vscode: extensions: - matklad.rust-analyzer From 9336a792d5c0f98b1b1df689999247efc3013d25 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Thu, 5 May 2022 22:14:56 +0200 Subject: [PATCH 10/18] Update gitpod button --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 289cbcf4..1e49e9f3 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ with the Espressif ESP32-C3. We suggest you start by [reading the book](https://espressif-trainings.ferrous-systems.com). -[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/SergioGasquez/espressif-trainings/tree/feature/gitpod) +[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/ferrous-systems/espressif-trainings) ## Contents From 1de80b09279ea1cd2d563507bae76840ca4170d7 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Sun, 8 May 2022 00:37:14 +0200 Subject: [PATCH 11/18] Fix ESP-IDF environment --- .gitpod.Dockerfile | 10 ++++++---- .gitpod.yml | 4 ++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 69072f68..bfc704f4 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -5,12 +5,12 @@ ENV LANG=C.UTF-8 ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod ARG NIGHTLY_VERSION=nightly-2022-03-10 -RUN sudo install-packages git curl gcc ninja-build libudev-dev \ +RUN sudo install-packages git curl gcc libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ && pip3 install websockets==10.2 USER ${CONTAINER_USER} WORKDIR /home/${CONTAINER_USER} -ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin:/home/${CONTAINER_USER}/opt/bin +ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ @@ -18,11 +18,13 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy ENV ESP_BOARD=esp32c3 ENV ESP_IDF_VERSION=release/v4.4 +ENV ESP_IDF_TOOLS_INSTALL_DIR=global RUN mkdir -p .espressif/frameworks/ \ - && git clone -b ${ESP_IDF_VERSION} --depth 1 --shallow-submodules \ + && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ .espressif/frameworks/esp-idf-v4.4 \ && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake ninja \ && .espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ && rm -rf .espressif/dist \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/docs \ No newline at end of file + && rm -rf .espressif/frameworks/esp-idf-v4.4/docs +ENV IDF_TOOLS_PATH=/home/${CONTAINER_USER}/.espressif \ No newline at end of file diff --git a/.gitpod.yml b/.gitpod.yml index 7d74c719..1a42e3dc 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,5 +1,9 @@ image: file: .gitpod.Dockerfile +tasks: + - name: Setup environment variables for ESP-IDF + command: | + source /home/gitpod/.espressif/frameworks/esp-idf-v4.4/export.sh vscode: extensions: - matklad.rust-analyzer From 8d26447b743138b0a8778b502533d19807616d26 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Sun, 8 May 2022 10:48:09 +0200 Subject: [PATCH 12/18] Intaslla ninja with install-packages Cleanup of environment variables --- .gitpod.Dockerfile | 7 +++---- .gitpod.yml | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index bfc704f4..c037f063 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -5,7 +5,8 @@ ENV LANG=C.UTF-8 ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod ARG NIGHTLY_VERSION=nightly-2022-03-10 -RUN sudo install-packages git curl gcc libudev-dev \ +ARG ESP_IDF_VERSION=release/v4.4 +RUN sudo install-packages git curl gcc ninja-build libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ && pip3 install websockets==10.2 USER ${CONTAINER_USER} @@ -17,13 +18,11 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy ENV ESP_BOARD=esp32c3 -ENV ESP_IDF_VERSION=release/v4.4 -ENV ESP_IDF_TOOLS_INSTALL_DIR=global RUN mkdir -p .espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ .espressif/frameworks/esp-idf-v4.4 \ - && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake ninja \ + && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake \ && .espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ && rm -rf .espressif/dist \ && rm -rf .espressif/frameworks/esp-idf-v4.4/docs diff --git a/.gitpod.yml b/.gitpod.yml index 1a42e3dc..a0cb8ee5 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -3,7 +3,7 @@ image: tasks: - name: Setup environment variables for ESP-IDF command: | - source /home/gitpod/.espressif/frameworks/esp-idf-v4.4/export.sh + source /home/gitpod/.espressif/frameworks/esp-idf-v4.4/export.sh > /dev/null 2>&1 vscode: extensions: - matklad.rust-analyzer From 8cef46a73b2d80f575b85e7729456a0163812d1e Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Mon, 9 May 2022 12:50:08 +0200 Subject: [PATCH 13/18] Delete unecesary esp-idf folders Use ESP_BOARD as ARG --- .gitpod.Dockerfile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index c037f063..b233ed09 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -6,6 +6,7 @@ ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod ARG NIGHTLY_VERSION=nightly-2022-03-10 ARG ESP_IDF_VERSION=release/v4.4 +ARG ESP_BOARD=esp32c3 RUN sudo install-packages git curl gcc ninja-build libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ && pip3 install websockets==10.2 @@ -17,7 +18,6 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy -ENV ESP_BOARD=esp32c3 RUN mkdir -p .espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ @@ -25,5 +25,8 @@ RUN mkdir -p .espressif/frameworks/ \ && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake \ && .espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ && rm -rf .espressif/dist \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/docs + && rm -rf .espressif/frameworks/esp-idf-v4.4/docs \ + && rm -rf .espressif/frameworks/esp-idf-v4.4/examples \ + && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/esp_app_trace \ + && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/test_idf_size ENV IDF_TOOLS_PATH=/home/${CONTAINER_USER}/.espressif \ No newline at end of file From c69e35408ad305c866d128e923a6c8670c21c193 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 11 May 2022 16:07:13 +0200 Subject: [PATCH 14/18] Remove installing python dependencies --- .gitpod.Dockerfile | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index b233ed09..1fd75eb0 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -7,9 +7,8 @@ ARG CONTAINER_GROUP=gitpod ARG NIGHTLY_VERSION=nightly-2022-03-10 ARG ESP_IDF_VERSION=release/v4.4 ARG ESP_BOARD=esp32c3 -RUN sudo install-packages git curl gcc ninja-build libudev-dev \ - python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 clang \ - && pip3 install websockets==10.2 +RUN sudo install-packages git curl gcc clang ninja-build libudev-dev \ + python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 libpython2.7 USER ${CONTAINER_USER} WORKDIR /home/${CONTAINER_USER} ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin From e50e0581adb3ee454020f1836fc3775d216e7f1b Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Fri, 13 May 2022 15:23:37 +0200 Subject: [PATCH 15/18] Remove bindgen --- .gitpod.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 1fd75eb0..8bfa0cc8 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -16,7 +16,7 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ - && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor bindgen ldproxy + && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor ldproxy RUN mkdir -p .espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ From 58fe3257408c37d9b89b485ebd6879b23fbb1c4f Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Arcos Date: Tue, 19 Jul 2022 16:34:11 +0200 Subject: [PATCH 16/18] Remove espmonitor and cargo-generate --- .gitpod.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 8bfa0cc8..8ae56e39 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -16,7 +16,7 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ - && $HOME/.cargo/bin/cargo install cargo-generate cargo-espflash espmonitor ldproxy + && $HOME/.cargo/bin/cargo install cargo-espflash ldproxy RUN mkdir -p .espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ @@ -28,4 +28,4 @@ RUN mkdir -p .espressif/frameworks/ \ && rm -rf .espressif/frameworks/esp-idf-v4.4/examples \ && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/esp_app_trace \ && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/test_idf_size -ENV IDF_TOOLS_PATH=/home/${CONTAINER_USER}/.espressif \ No newline at end of file +ENV IDF_TOOLS_PATH=/home/${CONTAINER_USER}/.espressif From 67a845223e9e85ebaef4cb05f35128b41101fd50 Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Wed, 20 Jul 2022 11:31:08 +0200 Subject: [PATCH 17/18] Update target --- .gitpod.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 8ae56e39..3edb4e61 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -15,7 +15,7 @@ ENV PATH=${PATH}:/home/${CONTAINER_USER}/.cargo/bin RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ --default-toolchain ${NIGHTLY_VERSION} -y \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ - && $HOME/.cargo/bin/rustup target add riscv32i-unknown-none-elf \ + && $HOME/.cargo/bin/rustup target add riscv32imc-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-espflash ldproxy RUN mkdir -p .espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ From 2031b8edde1bd275af2b989bbc25d6a626934c7b Mon Sep 17 00:00:00 2001 From: Sergio Gasquez Date: Mon, 25 Jul 2022 11:50:20 +0200 Subject: [PATCH 18/18] Update esp-idf version and installation paths --- .gitpod.Dockerfile | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.gitpod.Dockerfile b/.gitpod.Dockerfile index 3edb4e61..c7fdf763 100644 --- a/.gitpod.Dockerfile +++ b/.gitpod.Dockerfile @@ -5,7 +5,7 @@ ENV LANG=C.UTF-8 ARG CONTAINER_USER=gitpod ARG CONTAINER_GROUP=gitpod ARG NIGHTLY_VERSION=nightly-2022-03-10 -ARG ESP_IDF_VERSION=release/v4.4 +ARG ESP_IDF_VERSION=v4.4.1 ARG ESP_BOARD=esp32c3 RUN sudo install-packages git curl gcc clang ninja-build libudev-dev \ python3 python3-pip libusb-1.0-0 libssl-dev pkg-config libtinfo5 libpython2.7 @@ -17,15 +17,15 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \ && $HOME/.cargo/bin/rustup component add rust-src --toolchain ${NIGHTLY_VERSION} \ && $HOME/.cargo/bin/rustup target add riscv32imc-unknown-none-elf \ && $HOME/.cargo/bin/cargo install cargo-espflash ldproxy -RUN mkdir -p .espressif/frameworks/ \ +RUN mkdir -p ${HOME}/.espressif/frameworks/ \ && git clone --branch ${ESP_IDF_VERSION} -q --depth 1 --shallow-submodules \ --recursive https://github.com/espressif/esp-idf.git \ - .espressif/frameworks/esp-idf-v4.4 \ - && python3 .espressif/frameworks/esp-idf-v4.4/tools/idf_tools.py install cmake \ - && .espressif/frameworks/esp-idf-v4.4/install.sh ${ESP_BOARD} \ + ${HOME}/.espressif/frameworks/esp-idf \ + && python3 ${HOME}/.espressif/frameworks/esp-idf/tools/idf_tools.py install cmake \ + && ${HOME}/.espressif/frameworks/esp-idf/install.sh ${ESP_BOARD} \ && rm -rf .espressif/dist \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/docs \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/examples \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/esp_app_trace \ - && rm -rf .espressif/frameworks/esp-idf-v4.4/tools/test_idf_size + && rm -rf .espressif/frameworks/esp-idf/docs \ + && rm -rf .espressif/frameworks/esp-idf/examples \ + && rm -rf .espressif/frameworks/esp-idf/tools/esp_app_trace \ + && rm -rf .espressif/frameworks/esp-idf/tools/test_idf_size ENV IDF_TOOLS_PATH=/home/${CONTAINER_USER}/.espressif