implemented trust menu and autotrust
This commit is contained in:
parent
3dbb35c5e5
commit
28661c0ab3
@ -44,5 +44,5 @@ make uninstall
|
|||||||
Here's a growing list of features that are not yet actively worked on but might be nice in the future. Currently I'm more concerned with reliability than fulfilling feature requests, but I'm still open to put some on this list.
|
Here's a growing list of features that are not yet actively worked on but might be nice in the future. Currently I'm more concerned with reliability than fulfilling feature requests, but I'm still open to put some on this list.
|
||||||
|
|
||||||
- start scanning for new devices immediately at execution to save time when pairing new devices -> Implemented (I think, seems to be working at least)
|
- start scanning for new devices immediately at execution to save time when pairing new devices -> Implemented (I think, seems to be working at least)
|
||||||
- auto-trust newly paired devices/trust device via dmenu
|
- auto-trust newly paired devices/trust device via dmenu -> Implemented changeable via the AUTOTRUST variable in the beginning of bt, menu display adjusts accordingly
|
||||||
- blacklist devices via dmenu
|
- blacklist devices via dmenu
|
||||||
|
16
bt
16
bt
@ -4,11 +4,18 @@ SCAN_PERIOD=5
|
|||||||
#locations of blacklist and hard coded list of paired devices (watch out, need to modify Makefile as well if you want to change these values and still use make install)
|
#locations of blacklist and hard coded list of paired devices (watch out, need to modify Makefile as well if you want to change these values and still use make install)
|
||||||
BLACKLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/blacklist
|
BLACKLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/blacklist
|
||||||
PAIRLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/paired
|
PAIRLIST=${XDG_DATA_HOME:-$HOME/.local/share}/bt/paired
|
||||||
|
AUTOTRUST=true
|
||||||
actions="turn off
|
actions="turn off
|
||||||
turn on
|
turn on
|
||||||
pair
|
pair
|
||||||
unpair"
|
unpair"
|
||||||
|
|
||||||
|
if ! $AUTOTRUST; then
|
||||||
|
actions+="
|
||||||
|
trust"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
#Checks for necessary programs to be present. Very unlikely not to be present but let's just err on the safer side.
|
#Checks for necessary programs to be present. Very unlikely not to be present but let's just err on the safer side.
|
||||||
for prog in dmenu bluetoothctl awk cat date nl; do
|
for prog in dmenu bluetoothctl awk cat date nl; do
|
||||||
if ! hash "$prog" 2>/dev/null; then
|
if ! hash "$prog" 2>/dev/null; then
|
||||||
@ -68,6 +75,9 @@ pair(){
|
|||||||
|
|
||||||
bluetoothctl pair "$dev_id" && sleep 2
|
bluetoothctl pair "$dev_id" && sleep 2
|
||||||
bluetoothctl connect "$dev_id"
|
bluetoothctl connect "$dev_id"
|
||||||
|
if $AUTOTRUST; then
|
||||||
|
bluetoothctl trust "$dev_id"
|
||||||
|
fi
|
||||||
#if device is not already hard coded as paired, add to paired devices list
|
#if device is not already hard coded as paired, add to paired devices list
|
||||||
if grep -q "$dev_id" "$PAIRLIST"
|
if grep -q "$dev_id" "$PAIRLIST"
|
||||||
then
|
then
|
||||||
@ -96,6 +106,12 @@ case $choice in
|
|||||||
echo "$new_paired_list" > "$PAIRLIST"
|
echo "$new_paired_list" > "$PAIRLIST"
|
||||||
fi
|
fi
|
||||||
cleanup;;
|
cleanup;;
|
||||||
|
"trust") choice=$( echo "$paired_devices" | dmenu -l 10 -i -p 'remove which paired device?')
|
||||||
|
if [ -n "$choice" ]; then
|
||||||
|
dev_no=$( echo "$paired_devices" | nl | grep -P "[0-9]+\t$choice$" | awk '{print $1}')
|
||||||
|
dev_id=$( echo "$bt_IDS" | nl | grep -P "^.*$dev_no\t" | awk '{print $2}' )
|
||||||
|
bluetoothctl trust "$dev_id"
|
||||||
|
fi
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [ -n "$choice" ]; then
|
if [ -n "$choice" ]; then
|
||||||
|
Loading…
Reference in New Issue
Block a user