From 0a03f7cff7b6892ca93333fa5061c1ca454de0cb Mon Sep 17 00:00:00 2001
From: zvecr <git@zvecr.com>
Date: Wed, 5 Jun 2019 01:17:01 +0100
Subject: [PATCH] Update docker util script and travis to use new base
 container

---
 .travis.yml          |  2 --
 Dockerfile           | 20 +-------------------
 util/docker_build.sh |  2 +-
 util/travis_build.sh |  2 +-
 util/travis_test.sh  |  2 +-
 5 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b4a76765cc..52c8f50a86 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -13,8 +13,6 @@ env:
   - MAKEFLAGS="-j3 --output-sync"
 services:
   - docker
-before_install:
-  - docker build -t qmkfm/qmk_firmware .
 install:
   - npm install -g moxygen
 script:
diff --git a/Dockerfile b/Dockerfile
index f15eb2ee36..3f1f753002 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,22 +1,4 @@
-FROM debian:9
-
-RUN apt-get update && apt-get install --no-install-recommends -y \
-    avr-libc \
-    avrdude \
-    binutils-arm-none-eabi \
-    binutils-avr \
-    build-essential \
-    dfu-programmer \
-    dfu-util \
-    gcc \
-    gcc-avr \
-    git \
-    libnewlib-arm-none-eabi \
-    software-properties-common \
-    unzip \
-    wget \
-    zip \
-    && rm -rf /var/lib/apt/lists/*
+FROM qmkfm/base_container
 
 # upgrade gcc-arm-none-eabi from the default 5.4.1 to 6.3.1 due to ARM runtime issues
 RUN wget -q https://developer.arm.com/-/media/Files/downloads/gnu-rm/6-2017q2/gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2 -O - | \
diff --git a/util/docker_build.sh b/util/docker_build.sh
index c573ebcae2..6feeb1f5d2 100755
--- a/util/docker_build.sh
+++ b/util/docker_build.sh
@@ -46,5 +46,5 @@ fi
 dir=$(pwd -W 2>/dev/null) || dir=$PWD  # Use Windows path if on Windows
 
 # Run container and build firmware
-docker run --rm -it $usb_args -v "$dir":/qmk_firmware qmkfm/qmk_firmware \
+docker run --rm -it $usb_args -w /qmk_firmware/ -v "$dir":/qmk_firmware qmkfm/base_container \
 	make "$keyboard${keymap:+:$keymap}${target:+:$target}"
diff --git a/util/travis_build.sh b/util/travis_build.sh
index 554ec8b689..fd5511a72b 100755
--- a/util/travis_build.sh
+++ b/util/travis_build.sh
@@ -3,7 +3,7 @@
 # if docker is installed - call make within the qmk docker image
 if command -v docker >/dev/null; then
   function make() {
-    docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/qmk_firmware make "$@"
+    docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@"
   }
 fi
 
diff --git a/util/travis_test.sh b/util/travis_test.sh
index 3be4afff7a..e6a50ac165 100644
--- a/util/travis_test.sh
+++ b/util/travis_test.sh
@@ -22,7 +22,7 @@ fi
 # if docker is installed - call make within the qmk docker image
 if command -v docker >/dev/null; then
   function make() {
-    docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/qmk_firmware make "$@"
+    docker run --rm -e MAKEFLAGS="$MAKEFLAGS" -w /qmk_firmware/ -v "$PWD":/qmk_firmware --user $(id -u):$(id -g) qmkfm/base_container make "$@"
   }
 fi