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 RUN ccache --set-config=cache_dir=/kaleidoscope-persist/ccache/cache ENV ARDUINO_VERSION "1.8.13" WORKDIR /usr/local RUN curl https://downloads.arduino.cc/arduino-${ARDUINO_VERSION}-linux64.tar.xz | \ xzcat | tar xf - && \ ln -s arduino-${ARDUINO_VERSION} arduino RUN curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | \ sh RUN /usr/local/bin/arduino-cli core install arduino:avr COPY docker-entrypoint.sh /usr/local/bin/entrypoint VOLUME ["/kaleidoscope", \ "/kaleidoscope-src", \ "/kaleidoscope-persist", \ "/kaleidoscope/hardware/keyboardio/avr/libraries/Kaleidoscope/testing/googletest/build", \ "/kaleidoscope/hardware/keyboardio/avr/libraries/Kaleidoscope/_build"] ENV BOARD_HARDWARE_PATH "/kaleidoscope/hardware" 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/*