init
This commit is contained in:
Executable
+41
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env python3
|
||||
def read_file(path):
|
||||
try:
|
||||
with open(path, "r") as f:
|
||||
return f.read().strip()
|
||||
except:
|
||||
return None
|
||||
|
||||
def get_battery_info():
|
||||
capacity = read_file("/sys/class/power_supply/BAT1/capacity")
|
||||
status = read_file("/sys/class/power_supply/BAT1/status")
|
||||
ac_online = read_file("/sys/class/power_supply/ACAD/online")
|
||||
|
||||
try:
|
||||
percent = int(capacity)
|
||||
except (TypeError, ValueError):
|
||||
percent = None
|
||||
|
||||
charging = (status == "Charging") or (ac_online == "1")
|
||||
return charging, percent
|
||||
|
||||
def print_symbol():
|
||||
charging, percent = get_battery_info()
|
||||
|
||||
if percent is None:
|
||||
print("[?]")
|
||||
return
|
||||
|
||||
if charging and percent >= 90:
|
||||
print("[++]")
|
||||
elif charging and percent < 30:
|
||||
print("[-+]")
|
||||
elif charging:
|
||||
print("[+]")
|
||||
elif not charging and percent < 30:
|
||||
print("[--]")
|
||||
else:
|
||||
print("[-]")
|
||||
|
||||
if __name__ == "__main__":
|
||||
print_symbol()
|
||||
Reference in New Issue
Block a user