# add a # before ,args: and run 'vagrant up' to get a working
# non-updated box and then attempt to troubleshoot or open a Github issue
- config.vm.provision "shell", run: "always", path: "./util/avr_setup.sh", args: "-update"
+ config.vm.provision "shell", run: "always", path: "./util/install_dependencies.sh", args: "-update"
config.vm.post_up_message = <<-EOT
Log into the VM using 'vagrant ssh' on OSX or from Git Bash (Win)
Or you can copy and paste the example line below.
- cd /vagrant; cd keyboard; cd ergodox_ez; make clean; make
+ cd /vagrant; cd keyboards; cd ergodox_ez; make clean; make
EOT
+++ /dev/null
-#!/usr/bin/env bash
-# This script will attempt to setup the Linux dependencies for compiling QMK/TMK
-
-# This could probably go much lower, but since we are including an Arch vagrant,
-# making it the first match makes sense
-
-if [[ -n "$(type -P pacman )" ]]; then
- # Arch linux and derivatives like Apricity
- # Future improvements:
- # Allow user to speed up package installs using powerpill/wget tweaks
- # Always run the pacman mirror update script if possible when vagrant comes up
- # This will ensure that users never get stalled on a horribly slow mirror
- pacman -Syyu --needed --noconfirm
- pacman -S --needed --noconfirm \
- base-devel \
- avr-gcc \
- avr-binutils \
- avr-libc \
- dfu-util
-
-elif [[ -n "$(type -P apt-get)" ]]; then
- # Debian and derivatives
- # This block performs completely non-interactive updates {{
- export DEBIAN_FRONTEND=noninteractive
- export DEBCONF_NONINTERACTIVE_SEEN=true
- echo "grub-pc hold" | dpkg --set-selections
- apt-get -y update
- apt-get -y --allow-unauthenticated upgrade \
- -o Dpkg::Options::="--force-confdef" \
- -o Dpkg::Options::="--force-confold"
- # }}
- apt-get install -y \
- build-essential \
- gcc \
- unzip \
- wget \
- zip \
- gcc-avr \
- binutils-avr \
- avr-libc \
- dfu-programmer \
- dfu-util
-
-elif [[ -n "$(type -P yum)" ]]; then
- # Fedora, CentOS or RHEL and derivatives
- yum -y makecache && yum -y update
- yum -y install \
- gcc \
- glibc-headers \
- kernel-devel \
- kernel-headers \
- make \
- perl \
- git \
- wget \
- avr-binutils \
- avr-gcc \
- avr-libc \
- dfu-programmer \
- dfu-util
-
-elif [[ -n "$(type -P zypper)" ]]; then
- # openSUSE
- zypper --non-interactive refresh && zypper --non-interactive update
- zypper --non-interactive install \
- git \
- make \
- gcc \
- kernel-devel \
- patch \
- wget \
- dfu-programmer
-
-fi
--- /dev/null
+#!/usr/bin/env bash
+# This script will attempt to setup the Linux dependencies for compiling QMK/TMK
+
+# This could probably go much lower, but since we are including an Arch vagrant,
+# making it the first match makes sense
+
+if [[ -n "$(type -P pacman )" ]]; then
+ # Arch linux and derivatives like Apricity
+ # Future improvements:
+ # Allow user to speed up package installs using powerpill/wget tweaks
+ # Always run the pacman mirror update script if possible when vagrant comes up
+ # This will ensure that users never get stalled on a horribly slow mirror
+ pacman -Syyu --needed --noconfirm
+ pacman -S --needed --noconfirm \
+ base-devel \
+ avr-gcc \
+ avr-binutils \
+ avr-libc \
+ dfu-util \
+ arm-none-eabi-gcc \
+ arm-none-eabi-binutils \
+ arm-none-eabi-newlib \
+ git
+
+elif [[ -n "$(type -P apt-get)" ]]; then
+ # Debian and derivatives
+ # This block performs completely non-interactive updates {{
+ export DEBIAN_FRONTEND=noninteractive
+ export DEBCONF_NONINTERACTIVE_SEEN=true
+ echo "grub-pc hold" | dpkg --set-selections
+ apt-get -y update
+ apt-get -y --allow-unauthenticated upgrade \
+ -o Dpkg::Options::="--force-confdef" \
+ -o Dpkg::Options::="--force-confold"
+ # }}
+ apt-get install -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
+
+elif [[ -n "$(type -P yum)" ]]; then
+ # Fedora, CentOS or RHEL and derivatives
+ yum -y makecache && yum -y update
+ yum -y install \
+ gcc \
+ glibc-headers \
+ kernel-devel \
+ kernel-headers \
+ make \
+ perl \
+ git \
+ wget \
+ avr-binutils \
+ avr-gcc \
+ avr-libc \
+ dfu-programmer \
+ dfu-util \
+ gcc-arm-none-eabi \
+ binutils-arm-none-eabi \
+ libnewlib-arm-none-eabi \
+ git
+ # The listed eabi pacackes do unfortunately not exist for CentOS,
+ # But at least in Fedora they do, so try to install them anyway
+ # TODO: Build them from sources, if the installation fails
+
+elif [[ -n "$(type -P zypper)" ]]; then
+ # openSUSE
+ zypper --non-interactive refresh && zypper --non-interactive update
+ zypper --non-interactive install \
+ git \
+ make \
+ gcc \
+ kernel-devel \
+ patch \
+ wget \
+ dfu-programmer \
+ git
+ # TODO: The avr and eabi tools are not available as default packages, so we need
+ # another way to install them
+
+fi