dotfiles/private_dot_config/waybar/_modules/executable_dualsense-notifier.sh
Jinks c2f4366fd0 Add .config/waybar/_modules/dualsense-notifier.sh
Add .config/waybar/_modules/storage.sh
Add .config/waybar/_modules/wittr.sh
Add .config/waybar/dracula/colors.css
Add .config/waybar/dracula/config
Add .config/waybar/dracula/style.css
Add .config/waybar/geo/config
Add .config/waybar/geo/weather.sh
Add .config/waybar/geo/style.css
Add .config/waybar/jinks/bak.css
Add .config/waybar/jinks/colors.css
Add .config/waybar/jinks/config
Add .config/waybar/jinks/style.css
Add .config/waybar/siren/config
Add .config/waybar/siren/style.css
Add .config/waybar/sway/config
Add .config/waybar/sway/config.save
Add .config/waybar/sway/style.css
2025-01-02 03:08:16 +01:00

35 lines
1.1 KiB
Bash

#!/bin/bash
notify_id=0
#icon="/usr/share/icons/breeze-dark/devices/64/input-gamepad.svg"
icon="/usr/share/icons/Arc/devices/64/input-gaming.png"
dev=$(echo $DS_DEV | tr '[:lower:]' '[:upper:]')
case "$1" in
add)
notify_id=$(notify-send -r $notify_id -i $icon "$dev" "Controller connected")
while true; do
class=""
battery=$(dualsensectl battery 2> /dev/null)
perc=$(echo $battery | cut -d' ' -f1)
state=$(echo $perc | cut -d' ' -f2)
if [ -z "$perc" -o -z "$state" ]; then
exit;
fi
if [ $perc -lt 15 -a "$state" != "charging" ]; then
notify_id=$(notify-send -r $notify_id -i $icon "$dev" "Low battery ${perc}%")
fi
echo "{\"class\": \"$class\", \"text\": \" ${perc}%\"}"
sleep 5m
done
;;
remove)
notify_id=$(notify-send -r $notify_id -i $icon "$dev" "Controller disconnected")
echo "{\"text\": \"\"}"
;;
*)
echo "{\"text\": \"\"}"
exec dualsensectl monitor add "${BASH_SOURCE[0]} add" remove "${BASH_SOURCE[0]} remove"
;;
esac