diff options
author | Raymaekers Luca <raymaekers.luca@gmail.com> | 2024-04-16 10:09:29 +0200 |
---|---|---|
committer | Raymaekers Luca <raymaekers.luca@gmail.com> | 2024-04-16 10:09:29 +0200 |
commit | 692bc52c20da866630fa401be6740bc38f8f8574 (patch) | |
tree | be52e621dbbb15bfd2f43ec92053e4b0a817c392 /bin/extra/usbtoggle | |
parent | 197a1a74f468d9d69d624b19f90280a3946455e5 (diff) | |
parent | 19ea61db733c9152f2b334b0ae9871f81ac3664d (diff) |
Merge branch 'main' of debuc.com:dotfiles
Diffstat (limited to 'bin/extra/usbtoggle')
-rwxr-xr-x | bin/extra/usbtoggle | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/bin/extra/usbtoggle b/bin/extra/usbtoggle new file mode 100755 index 0000000..7adb2a2 --- /dev/null +++ b/bin/extra/usbtoggle @@ -0,0 +1,25 @@ +#!/bin/sh + +# toggle an usb device + +# dependencies +# - lsusb (to list usb devices) +# - commander (menu command) +# - doas (to run as root) + +device="$(lsusb | fzf)" +[ "$device" ] || exit 1 +# get vendor id +d=${device#*: * } +v=${d%%:*} +# get product id +d=${device#*:*:} +p=${d%% *} + +# find path by uzing vendor and product IDs +file="$(grep -l "$p" $(grep -l "$v" /sys/bus/usb/devices/*/idVendor | + sed 's/idVendor/idProduct/') | + sed 's/idProduct$/authorized/')" + +echo 0 | doas tee "$file" +echo 1 | doas tee "$file" |