FROM ubuntu:20.04 LABEL maintainer="Keyboard.io, inc" RUN apt-get -qq update && \ DEBIAN_FRONTEND=noninteractive \ apt-get -qq install -y xz-utils curl make build-essential libxtst-dev cmake ccache vim git RUN ccache --set-config=cache_dir=/kaleidoscope-persist/ccache/cache RUN curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | \ sh RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data \ ARDUINO_BOARD_MANAGER_ADDITIONAL_URLS=https://raw.githubusercontent.com/keyboardio/boardsmanager/master/devel/package_kaleidoscope_devel_index.json \ /bin/arduino-cli config init RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data /bin/arduino-cli update RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data /bin/arduino-cli core update-index RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data /bin/arduino-cli core install arduino:avr RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data /bin/arduino-cli core install "keyboardio:avr-tools-only" RUN ARDUINO_DIRECTORIES_DATA=/arduino-cli/data /bin/arduino-cli core install "keyboardio:gd32-tools-only" COPY docker-entrypoint.sh /usr/local/bin/entrypoint VOLUME ["/kaleidoscope", \ "/kaleidoscope-src", \ "/kaleidoscope-persist", \ "/kaleidoscope/testing/googletest/build", \ "/kaleidoscope/_build"] ENV KALEIDOSCOPE_TEMP_PATH "/kaleidoscope-persist/temp" ENTRYPOINT ["/usr/local/bin/entrypoint"] # Clean up APT when done. RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*