summaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorZach White <skullydazed@gmail.com>2021-05-08 20:56:07 -0700
committerGitHub <noreply@github.com>2021-05-08 20:56:07 -0700
commit7a25dcacffcadf541da5107a35856b66e770bcaf (patch)
treecdb3ee8542ae68b61708f3cab99bbd921e2b8b76 /util
parentd0a3bca9ecc6ccdc75218524b97b9cfb8a681baf (diff)
downloadqmk_firmware-7a25dcacffcadf541da5107a35856b66e770bcaf.tar.gz
qmk_firmware-7a25dcacffcadf541da5107a35856b66e770bcaf.zip
New command: qmk console (#12828)
* stash poc * stash * tidy up implementation * Tidy up slightly for review * Tidy up slightly for review * Bodge environment to make tests pass * Refactor away from asyncio due to windows issues * Filter devices * align vid/pid printing * Add hidapi to the installers * start preparing for multiple hid_listeners * udev rules for hid_listen * refactor to move closer to end state * very basic implementation of the threaded model * refactor how vid/pid/index are supplied and parsed * windows improvements * read the report directly when usage page isn't available * add per-device colors, the choice to show names or numbers, and refactor * add timestamps * Add support for showing bootloaders * tweak the color for bootloaders * Align bootloader disconnect with connect color * add support for showing all bootloaders * fix the pyusb check * tweaks * fix exception * hide a stack trace behind -v * add --no-bootloaders option * add documentation for qmk console * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * pyformat * clean up and flesh out KNOWN_BOOTLOADERS Co-authored-by: zvecr <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com>
Diffstat (limited to 'util')
-rwxr-xr-xutil/install/arch.sh10
-rwxr-xr-xutil/install/debian.sh7
-rwxr-xr-xutil/install/fedora.sh7
-rwxr-xr-xutil/install/gentoo.sh7
-rwxr-xr-xutil/install/msys2.sh9
-rw-r--r--util/udev/50-qmk.rules3
6 files changed, 22 insertions, 21 deletions
diff --git a/util/install/arch.sh b/util/install/arch.sh
index 7442e2f136..eac4ad64ef 100755
--- a/util/install/arch.sh
+++ b/util/install/arch.sh
@@ -4,13 +4,13 @@ _qmk_install() {
echo "Installing dependencies"
sudo pacman --needed --noconfirm -S \
- base-devel clang diffutils gcc git unzip wget zip \
- python-pip \
- avr-binutils \
- arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-newlib \
- avrdude dfu-programmer dfu-util
+ base-devel clang diffutils gcc git unzip wget zip python-pip \
+ avr-binutils arm-none-eabi-binutils arm-none-eabi-gcc \
+ arm-none-eabi-newlib avrdude dfu-programmer dfu-util
sudo pacman --needed --noconfirm -U https://archive.archlinux.org/packages/a/avr-gcc/avr-gcc-8.3.0-1-x86_64.pkg.tar.xz
sudo pacman --needed --noconfirm -S avr-libc # Must be installed after the above, or it will bring in the latest avr-gcc instead
+ sudo pacman --needed --noconfirm -S hidapi # This will fail if the community repo isn't enabled
+
python3 -m pip install --user -r $QMK_FIRMWARE_DIR/requirements.txt
}
diff --git a/util/install/debian.sh b/util/install/debian.sh
index 0ae9764a33..ef87c41b51 100755
--- a/util/install/debian.sh
+++ b/util/install/debian.sh
@@ -13,10 +13,9 @@ _qmk_install() {
sudo apt-get -yq install \
build-essential clang-format diffutils gcc git unzip wget zip \
- python3-pip \
- binutils-avr gcc-avr avr-libc \
- binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi \
- avrdude dfu-programmer dfu-util teensy-loader-cli libusb-dev
+ python3-pip binutils-avr gcc-avr avr-libc binutils-arm-none-eabi \
+ gcc-arm-none-eabi libnewlib-arm-none-eabi avrdude dfu-programmer \
+ dfu-util teensy-loader-cli libhidapi-hidraw0
python3 -m pip install --user -r $QMK_FIRMWARE_DIR/requirements.txt
}
diff --git a/util/install/fedora.sh b/util/install/fedora.sh
index 44b71b98bf..10fc7c8ad8 100755
--- a/util/install/fedora.sh
+++ b/util/install/fedora.sh
@@ -5,11 +5,10 @@ _qmk_install() {
# TODO: Check whether devel/headers packages are really needed
sudo dnf -y install \
- clang diffutils git gcc glibc-headers kernel-devel kernel-headers make unzip wget zip \
- python3 \
- avr-binutils avr-gcc avr-libc \
+ clang diffutils git gcc glibc-headers kernel-devel kernel-headers \
+ make unzip wget zip python3 avr-binutils avr-gcc avr-libc \
arm-none-eabi-binutils-cs arm-none-eabi-gcc-cs arm-none-eabi-newlib \
- avrdude dfu-programmer dfu-util libusb-devel
+ avrdude dfu-programmer dfu-util hidapi
python3 -m pip install --user -r $QMK_FIRMWARE_DIR/requirements.txt
}
diff --git a/util/install/gentoo.sh b/util/install/gentoo.sh
index 97eb5df07f..604d07bf84 100755
--- a/util/install/gentoo.sh
+++ b/util/install/gentoo.sh
@@ -22,9 +22,10 @@ _qmk_install() {
echo "sys-devel/gcc multilib" | sudo tee --append /etc/portage/package.use/qmkfirmware >/dev/null
sudo emerge -auN sys-devel/gcc
sudo emerge -au --noreplace \
- app-arch/unzip app-arch/zip net-misc/wget sys-devel/clang sys-devel/crossdev \
- \>=dev-lang/python-3.7 \
- dev-embedded/avrdude dev-embedded/dfu-programmer app-mobilephone/dfu-util
+ app-arch/unzip app-arch/zip net-misc/wget sys-devel/clang \
+ sys-devel/crossdev \>=dev-lang/python-3.7 dev-embedded/avrdude \
+ dev-embedded/dfu-programmer app-mobilephone/dfu-util sys-apps/hwloc \
+ dev-libs/hidapi
sudo crossdev -s4 --stable --g \<9 --portage --verbose --target avr
sudo crossdev -s4 --stable --g \<9 --portage --verbose --target arm-none-eabi
diff --git a/util/install/msys2.sh b/util/install/msys2.sh
index c8598a60fa..9b8343aed0 100755
--- a/util/install/msys2.sh
+++ b/util/install/msys2.sh
@@ -9,11 +9,10 @@ _qmk_install() {
pacman --needed --noconfirm --disable-download-timeout -S pactoys-git
pacboy sync --needed --noconfirm --disable-download-timeout \
- base-devel: toolchain:x clang:x git: unzip: \
- python3-pip:x \
- avr-binutils:x avr-gcc:x avr-libc:x \
- arm-none-eabi-binutils:x arm-none-eabi-gcc:x arm-none-eabi-newlib:x \
- avrdude:x bootloadhid:x dfu-programmer:x dfu-util:x teensy-loader-cli:x
+ base-devel: toolchain:x clang:x git: unzip: python3-pip:x \
+ avr-binutils:x avr-gcc:x avr-libc:x arm-none-eabi-binutils:x \
+ arm-none-eabi-gcc:x arm-none-eabi-newlib:x avrdude:x bootloadhid:x \
+ dfu-programmer:x dfu-util:x teensy-loader-cli:x hidapi:x
_qmk_install_drivers
diff --git a/util/udev/50-qmk.rules b/util/udev/50-qmk.rules
index acaa7dcc58..679fe4ced3 100644
--- a/util/udev/50-qmk.rules
+++ b/util/udev/50-qmk.rules
@@ -60,3 +60,6 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="239a", ATTRS{idProduct}=="000e", TAG+="uacc
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0036", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
### Micro
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0037", TAG+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
+
+# hid_listen
+KERNEL=="hidraw*", MODE="0660", GROUP="plugdev", TAG+="uaccess", TAG+="udev-acl"