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.

74 lines
3.0 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. *opensuse*|*tumbleweed*)
  26. . "$QMK_FIRMWARE_UTIL_DIR/install/opensuse.sh";;
  27. *sabayon*)
  28. . "$QMK_FIRMWARE_UTIL_DIR/install/sabayon.sh";;
  29. *slackware*)
  30. . "$QMK_FIRMWARE_UTIL_DIR/install/slackware.sh";;
  31. *solus*)
  32. . "$QMK_FIRMWARE_UTIL_DIR/install/solus.sh";;
  33. *void*)
  34. . "$QMK_FIRMWARE_UTIL_DIR/install/void.sh";;
  35. *)
  36. echo "Sorry, we don't recognize your distribution. Help us by contributing support!"
  37. echo
  38. echo "https://docs.qmk.fm/#/contributing"
  39. exit 1;;
  40. esac
  41. if uname -a | grep -qi microsoft; then
  42. echo "********************************************************************************"
  43. echo "* Detected Windows Subsystem for Linux. *"
  44. echo "* Currently, WSL has no access to USB devices and so flashing from within the *"
  45. echo "* WSL terminal will not work. *"
  46. echo "* *"
  47. echo "* Please install the QMK Toolbox instead: *"
  48. echo "* https://github.com/qmk/qmk_toolbox/releases *"
  49. echo "* Then, map your WSL filesystem as a network drive: *"
  50. echo "* \\\\\\\\wsl$\\<distro> *"
  51. echo "********************************************************************************"
  52. echo
  53. fi
  54. ;;
  55. *)
  56. echo "Sorry, we don't recognize your environment. Help us by contributing support!"
  57. echo
  58. echo "https://docs.qmk.fm/#/contributing"
  59. exit 1;;
  60. esac
  61. if type _qmk_install_prepare &>/dev/null; then
  62. _qmk_install_prepare || exit 1
  63. fi
  64. _qmk_install
  65. if type _qmk_install_bootloadhid &>/dev/null; then
  66. _qmk_install_bootloadhid
  67. fi