]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Adding Docker build system & documentation
authorErik Dasque <erik@frenchguys.com>
Fri, 15 Jul 2016 16:55:40 +0000 (12:55 -0400)
committerErik Dasque <erik@frenchguys.com>
Fri, 15 Jul 2016 16:55:40 +0000 (12:55 -0400)
Dockerfile [new file with mode: 0644]
readme.md

diff --git a/Dockerfile b/Dockerfile
new file mode 100644 (file)
index 0000000..96ace4e
--- /dev/null
@@ -0,0 +1,28 @@
+FROM debian:jessie
+MAINTAINER Erik Dasque <erik@frenchguys.com>
+
+RUN apt-get update
+RUN 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
+
+RUN apt-get clean
+RUN rm -rf /var/lib/apt/lists/*
+
+ENV keyboard=ergodox_ez
+ENV keymap=default
+
+VOLUME /qmk
+WORKDIR /qmk
+CMD make clean ; make keyboard=${keyboard} keymap=${keymap}
\ No newline at end of file
index e0dcd56088fcd27f90e4942dee4745ced183e61a..7a970eea02e5ee2d2cc90cd782098f62695f1eb5 100644 (file)
--- a/readme.md
+++ b/readme.md
@@ -75,6 +75,25 @@ Debian/Ubuntu example:
     sudo apt-get update
     sudo apt-get install gcc-avr avr-libc dfu-programmer
 
+### Docker
+
+If this is a bit complex for you, Docker might be the turn-key solution you need. After installing [Docker](https://www.docker.com/products/docker), run the following commands at the root of the QMK folder:
+
+```bash
+# You only need to run this once, it'll take a little while
+
+docker build -t qmk .
+
+# and you'll run this every time you want to build a keymap
+# modify the keymap and keyboard assigment to compile what you want
+# defaults are ergodox_ez/default
+
+docker run -e keymap=gwen -e keyboard=ergodox_ez --rm -v $('pwd'):/qmk:rw qmk
+
+```
+
+This will compile the targetted keyboard/keymap and leave it in your QMK directory for you to flash.
+
 ### Vagrant
 If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [VAGRANT_GUIDE file](VAGRANT_GUIDE.md).