diff options
| author | Thomas Schneider <qsx@chaotikum.eu> | 2024-09-11 21:52:27 +0200 |
|---|---|---|
| committer | Thomas Schneider <qsx@chaotikum.eu> | 2024-09-11 21:52:27 +0200 |
| commit | 3e1c65e72ed1391200aa6ad4471a0b8d3634ff78 (patch) | |
| tree | 2875907d143ec2e64424cbe18e222e5943dd9031 /dot.local-bin-batt | |
| parent | 814a35d77d0bcd4cc3d8d577bb11cc1cc5519a37 (diff) | |
| parent | 1d22be5e4469dd04dddd823ab3672dcbed591c4c (diff) | |
Merge remote-tracking branch 'refs/remotes/origin/main'
Diffstat (limited to 'dot.local-bin-batt')
| -rwxr-xr-x | dot.local-bin-batt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/dot.local-bin-batt b/dot.local-bin-batt new file mode 100755 index 0000000..415afba --- /dev/null +++ b/dot.local-bin-batt @@ -0,0 +1,35 @@ +#!/usr/bin/env python3 + +import datetime + +import gi + +gi.require_version("UPowerGlib", "1.0") +from gi.repository import UPowerGlib as upower + +client = upower.Client.new() +dev = client.get_display_device() + +items = [] + +pct = dev.get_property("percentage") +energy = dev.get_property("energy") +energy_full = dev.get_property("energy-full") +items.append(f"{pct} % ({energy:.4g} Wh / {energy_full:.4g} Wh), ") + +state = upower.Device.state_to_string(dev.get_property("state")) +items.append(state) + +energy_rate = dev.get_property("energy-rate") +if energy_rate != 0: + items.append(f" @ {energy_rate:.4g} W") + +time_to_empty = dev.get_property("time-to-empty") +if time_to_empty > 0: + items.append(f", {datetime.timedelta(seconds=time_to_empty)} until empty") + +time_to_full = dev.get_property("time-to-full") +if time_to_full > 0: + items.append(f", {datetime.timedelta(seconds=time_to_full)} until full") + +print("".join(items)) |
