1
1
FROM mcr.microsoft.com/vscode/devcontainers/cpp:debian
2
2
3
3
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
4
- && apt-get -y install --no-install-recommends \
5
- python3 \
6
- python3-pip \
7
- git \
8
- curl \
9
- fish \
10
- docker.io \
11
- build-essential \
12
- dos2unix \
13
- && apt-get clean \
14
- && rm -rf /var/lib/apt/lists/*
15
-
16
- RUN usermod -aG docker vscode \
17
- && mkdir -p /home/vscode/.local/share/CMakeTools \
18
- && mkdir -p /home/vscode/.ssh \
19
- && mkdir -p /home/vscode/.config/fish \
20
- && chown -R vscode:vscode /home/vscode/.local /home/vscode/.ssh /home/vscode/.config \
21
- && chmod 700 /home/vscode/.ssh
4
+ && apt-get -y install --no-install-recommends \
5
+ python3 \
6
+ python3-pip \
7
+ git \
8
+ curl \
9
+ fish \
10
+ docker.io \
11
+ build-essential \
12
+ dos2unix \
13
+ && apt-get clean \
14
+ && rm -rf /var/lib/apt/lists/* \
15
+ && usermod -aG docker vscode
16
+
17
+ RUN mkdir -p /home/vscode/.local/share/CMakeTools \
18
+ && mkdir -p /home/vscode/.ssh \
19
+ && mkdir -p /home/vscode/.config/fish \
20
+ && chown -R vscode:vscode /home/vscode/.local /home/vscode/.ssh /home/vscode/.config \
21
+ && chmod 700 /home/vscode/.ssh
22
22
23
23
RUN curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh \
24
- && arduino-cli config init
24
+ && arduino-cli config init
25
25
26
26
ENV PATH="/usr/local/bin:${PATH}"
27
27
WORKDIR /workspace
28
28
29
29
COPY .devcontainer/arduino-cli.yaml /root/.arduino15/arduino-cli.yaml
30
30
RUN arduino-cli core update-index --additional-urls https://arduino.esp8266.com/stable/package_esp8266com_index.json,https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json \
31
- && arduino-cli core install --additional-urls https://arduino.esp8266.com/stable/package_esp8266com_index.json,https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json esp8266:esp8266 esp32:esp32 \
32
- && arduino-cli lib install "OneWire" "ArduinoUnit"
31
+ && arduino-cli core install --additional-urls https://arduino.esp8266.com/stable/package_esp8266com_index.json,https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json esp8266:esp8266 esp32:esp32 \
32
+ && arduino-cli lib install "OneWire" "ArduinoUnit"
33
33
34
34
COPY .devcontainer/update-libraries.sh /usr/local/bin/
35
35
RUN dos2unix /usr/local/bin/update-libraries.sh && \
36
- chmod +x /usr/local/bin/update-libraries.sh
36
+ chmod +x /usr/local/bin/update-libraries.sh
37
37
38
38
RUN echo 'alias arduino-build="./build.sh build"\n alias arduino-test="./build.sh test"\n alias arduino-build-test="./build.sh all"' >> /home/vscode/.bashrc \
39
- && echo 'set -gx PATH /usr/local/bin $PATH' >> /home/vscode/.config/fish/config.fish
39
+ && echo 'set -gx PATH /usr/local/bin $PATH' >> /home/vscode/.config/fish/config.fish
40
40
41
41
RUN if [ ! -f /home/vscode/.ssh/id_rsa ]; then \
42
- ssh-keygen -t rsa -b 4096 -N "" -C "devcontainer@local" -f /home/vscode/.ssh/id_rsa && \
43
- chmod 600 /home/vscode/.ssh/id_rsa && \
44
- chmod 644 /home/vscode/.ssh/id_rsa.pub && \
45
- chown vscode:vscode /home/vscode/.ssh/id_rsa /home/vscode/.ssh/id_rsa.pub; \
46
- fi
42
+ ssh-keygen -t rsa -b 4096 -N "" -C "devcontainer@local" -f /home/vscode/.ssh/id_rsa && \
43
+ chmod 600 /home/vscode/.ssh/id_rsa && \
44
+ chmod 644 /home/vscode/.ssh/id_rsa.pub && \
45
+ chown vscode:vscode /home/vscode/.ssh/id_rsa /home/vscode/.ssh/id_rsa.pub; \
46
+ fi
47
47
48
- RUN echo '#!/bin/sh\n chmod 666 /var/run/docker.sock\n exec "$@"' > /usr/local/bin/docker-entrypoint.sh \
49
- && chmod +x /usr/local/bin/docker-entrypoint.sh
48
+ RUN echo '#!/bin/sh\n chmod 666 /var/run/docker.sock\n newgrp docker \ n exec "$@"' > /usr/local/bin/docker-entrypoint.sh \
49
+ && chmod +x /usr/local/bin/docker-entrypoint.sh
50
50
51
51
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh" ]
52
- CMD ["sleep" , "infinity" ]
52
+ CMD ["sleep" , "infinity" ]
0 commit comments