X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=util%2Flinux_install.sh;h=efb2ee7746ebd244a5b380514dce7b0f897bd5d3;hb=5b776cfc2daef235595e67ddc0a073490745e736;hp=971d4c543c05d3fae63a1c8797580be64d98e1c9;hpb=b49fd46eaaba5efe3231e6a1019af5c16558a057;p=qmk_firmware.git diff --git a/util/linux_install.sh b/util/linux_install.sh index 971d4c543..efb2ee774 100755 --- a/util/linux_install.sh +++ b/util/linux_install.sh @@ -6,6 +6,8 @@ GENTOO_WARNING="This script will make a USE change in order to ensure that that SLACKWARE_WARNING="You will need the following packages from slackbuilds.org:\n\tarm-binutils\n\tarm-gcc\n\tavr-binutils\n\tavr-gcc\n\tavr-libc\n\tavrdude\n\tdfu-programmer\n\tdfu-util\n\tnewlib\nThese packages will be installed with sudo and sboinstall, so ensure that your user is added to sudoers and that sboinstall is configured." +SOLUS_INFO="Your tools are now installed. To start using them, open new terminal or source these scripts:\n\t/usr/share/defaults/etc/profile.d/50-arm-toolchain-path.sh\n\t/usr/share/defaults/etc/profile.d/50-avr-toolchain-path.sh" + if grep ID /etc/os-release | grep -qE "fedora"; then sudo dnf install \ arm-none-eabi-binutils-cs \ @@ -25,6 +27,7 @@ if grep ID /etc/os-release | grep -qE "fedora"; then kernel-headers \ make \ perl \ + python3 \ unzip \ wget \ zip @@ -32,9 +35,9 @@ if grep ID /etc/os-release | grep -qE "fedora"; then elif grep ID /etc/os-release | grep -qE 'debian|ubuntu'; then DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true - export DEBIAN_FRONTEND DEBCONF_NONINTERACTIVE_SEEN + export DEBIAN_FRONTEND DEBCONF_NONINTERACTIVE_SEEN sudo apt-get update - sudo apt-get install \ + sudo apt-get -yq install \ build-essential \ avr-libc \ binutils-arm-none-eabi \ @@ -47,48 +50,49 @@ elif grep ID /etc/os-release | grep -qE 'debian|ubuntu'; then gcc-avr \ git \ libnewlib-arm-none-eabi \ + python3 \ unzip \ wget \ zip elif grep ID /etc/os-release | grep -q 'arch\|manjaro'; then - # install avr-gcc 8.1 until 8.3 is available. See #3657 for details of the bug. - sudo pacman -U https://archive.archlinux.org/packages/a/avr-gcc/avr-gcc-8.1.0-1-x86_64.pkg.tar.xz + sudo pacman -U https://archive.archlinux.org/packages/a/avr-gcc/avr-gcc-8.3.0-1-x86_64.pkg.tar.xz sudo pacman -S \ arm-none-eabi-binutils \ arm-none-eabi-gcc \ arm-none-eabi-newlib \ + avrdude \ avr-binutils \ avr-libc \ avr-gcc \ - base-devel \ + base-devel \ dfu-util \ - diff-utils \ + diffutils \ gcc \ git \ + python \ unzip \ wget \ zip git clone https://aur.archlinux.org/dfu-programmer.git /tmp/dfu-programmer - cd /tmp/dfu-programmer + cd /tmp/dfu-programmer || exit 1 makepkg -sic rm -rf /tmp/dfu-programmer/ elif grep ID /etc/os-release | grep -q gentoo; then - echo GENTOO_WARNING | fmt - echo -n "Proceed (y/N)? " - old_stty_cfg=$(stty -g) - stty raw -echo - answer=$( while ! head -c 1 | grep -i '[ny]' ;do true ;done ) - stty $old_stty_cfg - if echo "$answer" | grep -iq "^y" ;then + echo "$GENTOO_WARNING" | fmt + printf "\nProceed (y/N)? " + read -r answer + if echo "$answer" | grep -iq "^y"; then sudo touch /etc/portage/package.use/qmkfirmware - echo "sys-devel/gcc multilib" | sudo tee --append /etc/portage/package.use/qmkfirmware > /dev/null + # tee is used here since sudo doesn't apply to >> + echo "sys-devel/gcc multilib" | sudo tee --append /etc/portage/package.use/qmkfirmware >/dev/null sudo emerge -auN \ app-arch/unzip \ app-arch/zip \ app-mobilephone/dfu-util \ dev-embedded/avrdude \ + dev-lang/python:3.5 \ net-misc/wget \ sys-devel/gcc \ sys-devel/crossdev @@ -104,6 +108,7 @@ elif grep ID /etc/os-release | grep -q sabayon; then app-arch/zip \ app-mobilephone/dfu-util \ dev-embedded/avrdude \ + dev-lang/python \ net-misc/wget \ sys-devel/gcc \ sys-devel/crossdev @@ -112,18 +117,22 @@ elif grep ID /etc/os-release | grep -q sabayon; then elif grep ID /etc/os-release | grep -qE "opensuse|tumbleweed"; then CROSS_AVR_GCC=cross-avr-gcc8 + CROSS_ARM_GCC=cross-arm-none-gcc8 if grep ID /etc/os-release | grep -q "15.0"; then CROSS_AVR_GCC=cross-avr-gcc7 + CROSS_ARM_GCC=cross-arm-none-gcc7 fi sudo zypper install \ avr-libc \ $CROSS_AVR_GCC \ + $CROSS_ARM_GCC \ cross-avr-binutils \ cross-arm-none-newlib-devel \ cross-arm-binutils cross-arm-none-newlib-devel \ dfu-tool \ dfu-programmer \ gcc \ + python3 \ unzip \ wget \ zip @@ -142,12 +151,33 @@ elif grep ID /etc/os-release | grep -q slackware; then dfu-util \ arm-binutils \ arm-gcc \ - newlib + newlib \ + python3 echo "Done!" else echo "Quitting..." fi +elif grep ID /etc/os-release | grep -q solus; then + sudo eopkg ur + sudo eopkg it \ + -c system.devel \ + arm-none-eabi-gcc \ + arm-none-eabi-binutils \ + arm-none-eabi-newlib \ + avr-libc \ + avr-binutils \ + avr-gcc \ + avrdude \ + dfu-util \ + dfu-programmer \ + python3 \ + git \ + wget \ + zip \ + unzip + printf "\n$SOLUS_INFO\n" + else echo "Sorry, we don't recognize your OS. Help us by contributing support!" echo