forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial structure for shared msys2 and wsl installation
- Loading branch information
1 parent
fcd08b8
commit a2d3fc9
Showing
4 changed files
with
144 additions
and
128 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#!/bin/bash | ||
|
||
dir=$(cd -P -- "$(dirname -- "$0")" && pwd -P) | ||
source "$dir/win_shared_install.sh" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
#!/bin/bash | ||
|
||
download_dir=win_downloaded | ||
wsl_download_dir=wsl_downloaded | ||
|
||
function install_utils { | ||
rm -f -r $download_dir | ||
mkdir $download_dir | ||
|
||
pushd $download_dir | ||
|
||
echo "Installing dfu-programmer" | ||
wget 'http://downloads.sourceforge.net/project/dfu-programmer/dfu-programmer/0.7.2/dfu-programmer-win-0.7.2.zip' | ||
unzip -d dfu-programmer dfu-programmer-win-0.7.2.zip | ||
|
||
echo "Installing dfu-util" | ||
wget 'http://dfu-util.sourceforge.net/releases/dfu-util-0.9-win64.zip' | ||
unzip dfu-util-0.9-win64.zip | ||
|
||
echo "Installing teensy_loader_cli" | ||
wget 'https://www.pjrc.com/teensy/teensy_loader_cli_windows.zip' | ||
unzip teensy_loader_cli_windows.zip | ||
|
||
echo "Installing Atmel Flip" | ||
wget 'http://www.atmel.com/images/Flip%20Installer%20-%203.4.7.112.exe' | ||
mv Flip\ Installer\ \-\ 3.4.7.112.exe FlipInstaller.exe | ||
|
||
echo "Downloading the QMK driver installer" | ||
wget -qO- https://api.github.com/repos/qmk/qmk_driver_installer/releases | grep browser_download_url | head -n 1 | cut -d '"' -f 4 | wget -i - | ||
|
||
rm -f *.zip | ||
|
||
popd > /dev/null | ||
} | ||
|
||
function install_drivers { | ||
pushd $download_dir | ||
cmd.exe /C qmk_driver_installer.exe $1 $2 ../drivers.txt | ||
popd > /dev/null | ||
} | ||
|
||
pushd "$dir" | ||
|
||
if [ -d "$wsl_download_dir" ]; then | ||
echo "Renaming existing wsl_download_dir to win_download" | ||
mv -f "$wsl_download_dir" "$download_dir" | ||
fi | ||
|
||
if [ ! -d "$download_dir" ]; then | ||
install_utils | ||
else | ||
while true; do | ||
echo | ||
read -p "The utils seem to already be downloaded, do you want to re-download them and update to the newest version (Y/N) " res | ||
case $res in | ||
[Yy]* ) install_utils; break;; | ||
[Nn]* ) break;; | ||
* ) echo "Invalid answer";; | ||
esac | ||
done | ||
fi | ||
|
||
while true; do | ||
echo | ||
read -p "Flip need to be installed if you want to use that for programming, do you want to install it now? (Y/N) " res | ||
case $res in | ||
[Yy]* ) cmd.exe /c $download_dir\\FlipInstaller.exe; break;; | ||
[Nn]* ) break;; | ||
* ) echo "Invalid answer";; | ||
esac | ||
done | ||
|
||
|
||
while true; do | ||
echo | ||
echo "Which USB drivers do you want to install?" | ||
echo "(A)all - All supported drivers will be installed" | ||
echo "(C)onnected - Only drivers for connected keyboards (in bootloader/flashing mode) will be installed" | ||
echo "(F)force - Like all, but will also override existing drivers for connected keyboards" | ||
echo "(N)one - No drivers will be installed, flashing your keyboard will most likely not work" | ||
read -p "(A/C/F/N)? " res | ||
case $res in | ||
[Aa]* ) install_drivers --all; break;; | ||
[Cc]* ) install_drivers; break;; | ||
[Ff]* ) install_drivers --all --force; break;; | ||
[Nn]* ) break;; | ||
* ) echo "Invalid answer";; | ||
esac | ||
done | ||
|
||
echo | ||
echo "Creating a softlink to the utils directory as ~/qmk_utils." | ||
echo "This is needed so that the the make system can find all utils it need." | ||
read -p "Press any key to continue (ctrl-c to abort)" | ||
ln -sfn "$dir" ~/qmk_utils | ||
|
||
if grep "^source ~/qmk_utils/activate_wsl.sh$" ~/.bashrc | ||
then | ||
echo | ||
echo "The line source ~/qmk_utils/activate_wsl.sh is already added to your /.bashrc" | ||
echo "Not adding it twice" | ||
else | ||
while true; do | ||
echo | ||
echo "Do you want to add 'source ~/qmk_utils/activate_wsl.sh' to the end of you .bashrc file?" | ||
echo "Without this make won't find the needed utils, so if you don't want to do it automatically," | ||
echo "then you have to do it manually." | ||
read -p "(Y/N)? " res | ||
case $res in | ||
[Yy]* ) echo "source ~/qmk_utils/activate_wsl.sh" >> ~/.bashrc; break;; | ||
[Nn]* ) break;; | ||
* ) echo "Invalid answer";; | ||
esac | ||
done | ||
fi | ||
|
||
while true; do | ||
echo | ||
echo "Do you want to add a symlink to the QMK repository in your home directory for convenience?" | ||
echo "This will create a folder 'qmk_firmware' in your home directory." | ||
echo "In the future you can use this folder instead of the full path on your windows file system" | ||
read -p "(Y/N)? " res | ||
case $res in | ||
[Yy]* ) ln -sfn "$dir/.." ~/qmk_firmware; break;; | ||
[Nn]* ) break;; | ||
* ) echo "Invalid answer";; | ||
esac | ||
done | ||
|
||
echo | ||
echo "******************************************************************************" | ||
echo "Installation completed!" | ||
echo "You need to open a new batch command prompt for all the utils to work properly" | ||
echo "******************************************************************************" | ||
|
||
popd > /dev/null | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters