You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
2.8 KiB

  1. #!/bin/bash
  2. QMK_FIRMWARE_DIR=$(cd -P -- "$(dirname -- "$0")/.." && pwd -P)
  3. QMK_FIRMWARE_UTIL_DIR=$QMK_FIRMWARE_DIR/util
  4. case $(uname -a) in
  5. *Darwin*)
  6. . "$QMK_FIRMWARE_UTIL_DIR/install/macos.sh";;
  7. *FreeBSD*)
  8. . "$QMK_FIRMWARE_UTIL_DIR/install/freebsd.sh";;
  9. *MINGW64_NT*)
  10. . "$QMK_FIRMWARE_UTIL_DIR/install/msys2.sh";;
  11. *MSYS_NT*|*MINGW32_NT*)
  12. echo "Please open a MinGW64 terminal window and re-run this script."
  13. exit 1;;
  14. *Linux*)
  15. . "$QMK_FIRMWARE_UTIL_DIR/install/linux_shared.sh"
  16. case $(grep ID /etc/os-release) in
  17. *arch*|*manjaro*)
  18. . "$QMK_FIRMWARE_UTIL_DIR/install/arch.sh";;
  19. *debian*|*ubuntu*)
  20. . "$QMK_FIRMWARE_UTIL_DIR/install/debian.sh";;
  21. *fedora*)
  22. . "$QMK_FIRMWARE_UTIL_DIR/install/fedora.sh";;
  23. *gentoo*)
  24. . "$QMK_FIRMWARE_UTIL_DIR/install/gentoo.sh";;
  25. *slackware*)
  26. . "$QMK_FIRMWARE_UTIL_DIR/install/slackware.sh";;
  27. *solus*)
  28. . "$QMK_FIRMWARE_UTIL_DIR/install/solus.sh";;
  29. *void*)
  30. . "$QMK_FIRMWARE_UTIL_DIR/install/void.sh";;
  31. *)
  32. echo "Sorry, we don't recognize your distribution. Try using the docker image instead:"
  33. echo
  34. echo "https://docs.qmk.fm/#/getting_started_docker"
  35. exit 1;;
  36. esac
  37. if uname -a | grep -qi microsoft; then
  38. echo "********************************************************************************"
  39. echo "* Detected Windows Subsystem for Linux. *"
  40. echo "* Currently, WSL has no access to USB devices and so flashing from within the *"
  41. echo "* WSL terminal will not work. *"
  42. echo "* *"
  43. echo "* Please install the QMK Toolbox instead: *"
  44. echo "* https://github.com/qmk/qmk_toolbox/releases *"
  45. echo "* Then, map your WSL filesystem as a network drive: *"
  46. echo "* \\\\\\\\wsl$\\<distro> *"
  47. echo "********************************************************************************"
  48. echo
  49. fi
  50. ;;
  51. *)
  52. echo "Sorry, we don't recognize your environment. Help us by contributing support!"
  53. echo
  54. echo "https://docs.qmk.fm/#/contributing"
  55. exit 1;;
  56. esac
  57. if type _qmk_install_prepare &>/dev/null; then
  58. _qmk_install_prepare || exit 1
  59. fi
  60. _qmk_install
  61. if type _qmk_install_bootloadhid &>/dev/null; then
  62. _qmk_install_bootloadhid
  63. fi