fixed batteryperc script

main
The_miro 2025-04-24 15:03:31 +02:00
parent 7772940862
commit 05ffecc81b
3 changed files with 78 additions and 34 deletions

View File

@ -1,37 +1,44 @@
#!/bin/bash #!/bin/bash
perc=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep percentage | awk -F: '{print $2}' | xargs) # Get percentage and remove the % sign cleanly
state=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep state | awk -F: '{print $2}' | xargs) perc=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | awk '/percentage/ {gsub("%",""); print $2}')
state=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | awk '/state/ {print $2}')
num=$(echo ${perc::-1}) # Check if values are not empty
if [ -z "$perc" ] || [ -z "$state" ]; then
if [ $state == "charging" ]; then echo "Battery info unavailable"
echo "󰂄 ${perc}" exit 1
else
#echo "󰁹 ${perc}"
if [ $num -gt 95 ]; then
echo "󰁹 ${perc}"
elif [ $num -gt 90 ]; then
echo "󰂂 ${perc}"
elif [ $num -gt 80 ]; then
echo "󰂁 ${perc}"
elif [ $num -gt 70 ]; then
echo "󰂀 ${perc}"
elif [ $num -gt 60 ]; then
echo "󰁿 ${perc}"
elif [ $num -gt 50 ]; then
echo "󰁾 ${perc}"
elif [ $num -gt 40 ]; then
echo "󰁽 ${perc}"
elif [ $num -gt 30 ]; then
echo "󰁼 ${perc}"
elif [ $num -gt 20 ]; then
echo "󰁻 ${perc}"
elif [ $num -gt 10 ]; then
echo "󰁺 ${perc}"
else
notify-send --urgency=critical -t 2000 "󱃍 low battery, please charge"
echo "󰂎 ${perc}"
fi
fi fi
# Convert to integer
num=${perc%%.*} # In case perc is float
if [ "$state" == "charging" ]; then
echo "󰂄 ${perc}%"
else
if [ "$num" -gt 95 ]; then
echo "󰁹 ${perc}%"
elif [ "$num" -gt 90 ]; then
echo "󰂂 ${perc}%"
elif [ "$num" -gt 80 ]; then
echo "󰂁 ${perc}%"
elif [ "$num" -gt 70 ]; then
echo "󰂀 ${perc}%"
elif [ "$num" -gt 60 ]; then
echo "󰁿 ${perc}%"
elif [ "$num" -gt 50 ]; then
echo "󰁾 ${perc}%"
elif [ "$num" -gt 40 ]; then
echo "󰁽 ${perc}%"
elif [ "$num" -gt 30 ]; then
echo "󰁼 ${perc}%"
elif [ "$num" -gt 20 ]; then
echo "󰁻 ${perc}%"
elif [ "$num" -gt 10 ]; then
echo "󰁺 ${perc}%"
else
notify-send --urgency=critical -t 2000 "󱃍 low battery, please charge"
echo "󰂎 ${perc}%"
fi
fi

View File

@ -0,0 +1,37 @@
#!/bin/bash
perc=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep percentage | awk -F: '{print $2}' | xargs)
state=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep state | awk -F: '{print $2}' | xargs)
num=$(echo ${perc::-1})
if [ $state == "charging" ]; then
echo "󰂄 ${perc}"
else
#echo "󰁹 ${perc}"
if [ $num -gt 95 ]; then
echo "󰁹 ${perc}"
elif [ $num -gt 90 ]; then
echo "󰂂 ${perc}"
elif [ $num -gt 80 ]; then
echo "󰂁 ${perc}"
elif [ $num -gt 70 ]; then
echo "󰂀 ${perc}"
elif [ $num -gt 60 ]; then
echo "󰁿 ${perc}"
elif [ $num -gt 50 ]; then
echo "󰁾 ${perc}"
elif [ $num -gt 40 ]; then
echo "󰁽 ${perc}"
elif [ $num -gt 30 ]; then
echo "󰁼 ${perc}"
elif [ $num -gt 20 ]; then
echo "󰁻 ${perc}"
elif [ $num -gt 10 ]; then
echo "󰁺 ${perc}"
else
notify-send --urgency=critical -t 2000 "󱃍 low battery, please charge"
echo "󰂎 ${perc}"
fi
fi

View File

@ -117,7 +117,7 @@ label {
# weather edit specific location. Note, this cause a 2-4 seconds delay in locking # weather edit specific location. Note, this cause a 2-4 seconds delay in locking
label { label {
monitor = monitor =
text = cmd[update:3600000] [ -f ~/.cache/.weather_cache ] && cat ~/.cache/.weather_cache text = cmd[update:10000] sh ~/Dotfiles/desktopenvs/hyprland/eww/scripts/batteryperc
color = $color12 color = $color12
font_size = 24 font_size = 24
font_family = Agave NerdFont 10 font_family = Agave NerdFont 10