feat: replace noctalia with an eww panel (#3)
This commit was merged in pull request #3.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# One JSON object for the panel's bluetooth row. bluetoothctl blocks forever
|
||||
# instead of erroring when there is no adapter, hence the /sys check + timeouts.
|
||||
|
||||
if [ -z "$(find /sys/class/bluetooth -mindepth 1 -maxdepth 1 2>/dev/null)" ]; then
|
||||
jq -nc '{ powered: false, icon: "", label: "No adapter", sub: "" }'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
powered=$(timeout 2 bluetoothctl show 2>/dev/null | awk '/Powered:/ { print $2; exit }' || true)
|
||||
|
||||
if [ "$powered" != "yes" ]; then
|
||||
jq -nc '{ powered: false, icon: "", label: "Off", sub: "" }'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
connected=$(timeout 2 bluetoothctl devices Connected 2>/dev/null | cut -d' ' -f3- | paste -sd', ' - || true)
|
||||
|
||||
if [ -n "$connected" ]; then
|
||||
jq -nc --arg sub "$connected" '{ powered: true, icon: "", label: "On", sub: $sub }'
|
||||
else
|
||||
jq -nc '{ powered: true, icon: "", label: "On", sub: "Nothing connected" }'
|
||||
fi
|
||||
Reference in New Issue
Block a user