Dockerfile 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. FROM ubuntu:focal
  2. RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
  3. ca-certificates \
  4. build-essential \
  5. python3 \
  6. python-lxml \
  7. git \
  8. clang-format-12 \
  9. dfu-util \
  10. openocd \
  11. srecord \
  12. libncurses5 \
  13. wget && \
  14. apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
  15. RUN wget --progress=dot:giga "https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-$(uname -m)-linux.tar.bz2" && \
  16. tar xjf gcc-arm-none-eabi-10-2020-q4-major-$(uname -m)-linux.tar.bz2 && \
  17. rm gcc-arm-none-eabi-10-2020-q4-major-$(uname -m)-linux.tar.bz2 && \
  18. cd gcc-arm-none-eabi-10-2020-q4-major/bin/ && \
  19. rm -rf ../share && \
  20. for file in * ; do ln -s "${PWD}/${file}" "/usr/bin/${file}" ; done && \
  21. cd / && arm-none-eabi-gcc -v && arm-none-eabi-gdb -v
  22. RUN git clone https://github.com/rusdacent/hex2dfu.git && \
  23. cd hex2dfu && gcc hex2dfu.c ED25519/*.c -o hex2dfu && mv ./hex2dfu /usr/local/bin/hex2dfu && \
  24. hex2dfu -h
  25. COPY entrypoint.sh syntax_check.sh /
  26. RUN chmod +x /syntax_check.sh
  27. ENTRYPOINT ["/entrypoint.sh"]