diff options
author | Jack Humbert <jack.humb@gmail.com> | 2016-01-23 20:33:35 -0500 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2016-01-23 20:33:35 -0500 |
commit | 544a49329cac78206c0d195f2e7bfd39db05507d (patch) | |
tree | bfcd304f7215738909e1241d73a77a426f5a195c /avr_setup.sh | |
parent | a820533ab770e1919f190c102a091c1060f6302e (diff) | |
parent | e5aee62e54d0b6f02ff170f4e9bf1e738d36fb4c (diff) |
Merge branch 'master' of https://github.com/jackhumbert/tmk_keyboard into smarkefile
Diffstat (limited to 'avr_setup.sh')
-rw-r--r-- | avr_setup.sh | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/avr_setup.sh b/avr_setup.sh new file mode 100644 index 0000000000..34a8a3281b --- /dev/null +++ b/avr_setup.sh @@ -0,0 +1,72 @@ +#!/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-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-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 |