QMK on Docker

QMKでファームウェアを作るための環境構築はdockerが楽。以下のDockerfileはgcc-avr 4.9.2、gcc-arm 5.4.1の環境が作成される。 debianベースなので少し古いgccですが、gcc 8のような問題はないので、枯れた環境と言えます。

  1. docker build -t=qmk:stretch .でイメージ作成
  2. docker run --rm -v $('pwd'):/qmk:rw -e keyboard=planck/rev6:default qmk:stretchでビルド
  3. ファームウェアの書き込みはdockerからはできないようです。
FROM debian:stretch-slim

RUN apt-get update && apt-get install --no-install-recommends -y build-essential \
    gcc \
    unzip \
    wget \
    zip \
    gcc-avr \
    binutils-avr \
    avr-libc \
    dfu-programmer \
    dfu-util \
    gcc-arm-none-eabi \
    binutils-arm-none-eabi \
    libnewlib-arm-none-eabi \
    git \
    software-properties-common \
    avrdude \
    && rm -rf /var/lib/apt/lists/*

ENV keyboard=planck/rev6:default

VOLUME /qmk
WORKDIR /qmk
CMD make clean ; make ${keyboard}