Skip to content

Commit

Permalink
Adding Docker build system & documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
edasque committed Jul 15, 2016
1 parent 9ecf907 commit 0446263
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 0 deletions.
28 changes: 28 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -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}
19 changes: 19 additions & 0 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -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).

Expand Down

0 comments on commit 0446263

Please sign in to comment.