3 dir=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
4 download_dir=~/qmk_utils
5 avrtools=avr8-gnu-toolchain
6 armtools=gcc-arm-none-eabi
9 echo "Installing dependencies needed for the installation (quazip)"
10 pacman --needed -S msys/unzip msys/p7zip base-devel msys/git mingw-w64-x86_64-toolchain
12 source "$dir/win_shared_install.sh"
14 function install_avr {
16 wget "http://ww1.microchip.com/downloads/en/DeviceDoc/avr8-gnu-toolchain-3.6.1.1752-win32.any.x86.zip"
17 echo "Extracting AVR toolchain..."
18 unzip -q avr8-gnu-toolchain-3.6.1.1752-win32.any.x86.zip
19 mv avr8-gnu-toolchain-win32_x86/ avr8-gnu-toolchain
21 rm avr8-gnu-toolchain-3.6.1.1752-win32.any.x86.zip
22 pacman --needed -S mingw-w64-x86_64-avrdude
25 function install_arm {
26 wget -O gcc-arm-none-eabi.zip "https://developer.arm.com/-/media/Files/downloads/gnu-rm/6-2017q2/gcc-arm-none-eabi-6-2017-q2-update-win32.zip?product=GNU%20ARM%20Embedded%20Toolchain,ZIP,,Windows,6-2017-q2-update"
27 unzip -d gcc-arm-none-eabi gcc-arm-none-eabi.zip
28 rm gcc-arm-none-eabi.zip
31 function extract_flip {
33 7z -oflip x FlipInstaller.exe
38 if [ -f "FlipInstaller.exe" ]; then
40 echo "Extracting flip"
44 if [ ! -d "$avrtools" ]; then
47 echo "The AVR toolchain is not installed."
48 echo "This is needed for building AVR based keboards."
49 read -p "Do you want to install it? (Y/N) " res
51 [Yy]* ) install_avr; break;;
53 * ) echo "Invalid answer";;
59 echo "The AVR toolchain is already installed"
60 read -p "Do you want to reinstall? (Y/N) " res
62 [Yy]* ) install_avr; break;;
64 * ) echo "Invalid answer";;
69 if [ ! -d "$armtools" ]; then
72 echo "The ARM toolchain is not installed."
73 echo "This is needed for building ARM based keyboards."
74 read -p "Do you want to install it? (Y/N) " res
76 [Yy]* ) install_arm; break;;
78 * ) echo "Invalid answer";;
84 echo "The ARM toolchain is already installed"
85 read -p "Do you want to reinstall? (Y/N) " res
87 [Yy]* ) install_arm; break;;
89 * ) echo "Invalid answer";;
95 cp -f "$dir/activate_msys2.sh" "$download_dir/"
97 if grep "^source ~/qmk_utils/activate_msys2.sh$" ~/.bashrc
100 echo "The line source ~/qmk_utils/activate_msys2.sh is already added to your /.bashrc"
101 echo "Not adding it twice!"
105 echo "Do you want to add 'source ~/qmk_utils/activate_msys2.sh' to the end of your"
106 echo ".bashrc file? Without this make won't find the needed utils, so if you don't"
107 echo "want to do it automatically, then you have to do it manually later."
108 read -p "(Y/N)? " res
110 [Yy]* ) echo "source ~/qmk_utils/activate_msys2.sh" >> ~/.bashrc; break;;
112 * ) echo "Invalid answer";;
118 echo "******************************************************************************"
119 echo "Installation completed!"
120 echo "Please close this Window and restart MSYS2 MinGW"
121 echo "******************************************************************************"