diff --git a/modules/desktop-environment/home/eww/configDir/scripts/bat.nu b/modules/desktop-environment/home/eww/configDir/scripts/bat.nu
index fc2efae..690cca6 100755
--- a/modules/desktop-environment/home/eww/configDir/scripts/bat.nu
+++ b/modules/desktop-environment/home/eww/configDir/scripts/bat.nu
@@ -15,15 +15,41 @@ const ICONS = [
[ ]
];
+const DELAY = 2sec;
+
+def "main auto" [] {
+ loop {
+ let paths = ls "/sys/class/power_supply"
+ | each {|it| $it.name | path basename}
+ | filter {|it| $it starts-with "BAT"};
+
+ if ($paths | is-not-empty) {
+ let result = $paths
+ | each {|it| get_and_format $it}
+ | prepend ""
+ | str join "|";
+
+ print $result
+ } else {
+ print ""
+ }
+ sleep $DELAY;
+ }
+}
+
def main [ path: string ] {
loop {
+ print (get_and_format $path)
+ sleep $DELAY;
+ }
+}
+
+def get_and_format [ path: string ] {
let fract = get_bat_charge_fraction $path;
let is_charging = get_bat_charging_status $path;
let percent = ($fract * 100) | math round;
-
- print $"(get_bat_icon $fract $is_charging) ($percent)%";
- sleep 2sec;
- }
+
+ return $"(get_bat_icon $fract $is_charging) ($percent)%";
}
def get_bat_charge_fraction [
diff --git a/modules/desktop-environment/home/eww/configDir/topBar/sysinfo.yuck b/modules/desktop-environment/home/eww/configDir/topBar/sysinfo.yuck
index 3cf8e2c..06a5635 100644
--- a/modules/desktop-environment/home/eww/configDir/topBar/sysinfo.yuck
+++ b/modules/desktop-environment/home/eww/configDir/topBar/sysinfo.yuck
@@ -1,10 +1,6 @@
-(deflisten bat0
+(deflisten bat
:initial "BAT0 ERR"
- { "~/.config/eww/scripts/bat.nu BAT0"}
-)
-(deflisten bat1
- :initial "BAT1 ERR"
- { "~/.config/eww/scripts/bat.nu BAT1"}
+ { "~/.config/eww/scripts/bat.nu auto"}
)
(defwidget cpu []
diff --git a/modules/desktop-environment/home/eww/configDir/topBar/topBar.yuck b/modules/desktop-environment/home/eww/configDir/topBar/topBar.yuck
index a2135cc..6725623 100644
--- a/modules/desktop-environment/home/eww/configDir/topBar/topBar.yuck
+++ b/modules/desktop-environment/home/eww/configDir/topBar/topBar.yuck
@@ -27,10 +27,7 @@
(cpu)
(sep)
(mem)
- (sep)
- (label :markup bat0)
- (sep)
- (label :markup bat1)
+ (label :markup bat)
)
(box
:halign "center"