From 7e575ee9f5a89d004561dc10d9de34a64e872e0a Mon Sep 17 00:00:00 2001 From: Bartek Stalewski Date: Sun, 31 Jul 2022 23:33:25 +0200 Subject: [PATCH] Custom script instead of battery widget. --- _desktop/_scripts/sb-battery | 18 ++++++++++++++++++ _desktop/qtile/config.py | 9 +++------ 2 files changed, 21 insertions(+), 6 deletions(-) create mode 100755 _desktop/_scripts/sb-battery diff --git a/_desktop/_scripts/sb-battery b/_desktop/_scripts/sb-battery new file mode 100755 index 0000000..153c1b4 --- /dev/null +++ b/_desktop/_scripts/sb-battery @@ -0,0 +1,18 @@ +#!/bin/bash + +icon='\uf241 ' +for battery in /sys/class/power_supply/BAT?*; do + # If non-first battery, print a space separator. + [ -n "${capacity+x}" ] && printf " " + # Sets up the status and capacity + case "$(cat "$battery/status")" in + "Full") status="\uf102" ;; + "Discharging") status="\uf078" ;; + "Charging") status="\uf077" ;; + "Not charging") status="\uf444" ;; + "Unknown") status="\uf128" ;; + esac + capacity=$(cat "$battery/capacity") + # Will make a warn variable if discharging and low + [ "$capacity" -le 20 ] && printf "$icon ${status} ${capacity}%%" || printf "$icon ${status} ${capacity}%%" +done && exit 0 diff --git a/_desktop/qtile/config.py b/_desktop/qtile/config.py index 01b3f68..3a5478f 100644 --- a/_desktop/qtile/config.py +++ b/_desktop/qtile/config.py @@ -136,12 +136,9 @@ screens = [ update_interval=0.2, func=lambda: subprocess.check_output("sb-network").decode(), ), - widget.Battery( - format='\uf241 {char} {percent:2.0%}', - charge_char="\uf077", - discharge_char="\uf078", - full_char="\uf102", - unknown_char="\uf444", + widget.GenPollText( + update_interval=0.2, + func=lambda: subprocess.check_output("sb-battery").decode(), ), widget.Clock( format='\uf073 [%d] %I:%M:%S %p'