summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmin Bandali <amin@aminb.org>2018-07-24 14:55:10 -0400
committerAmin Bandali <amin@aminb.org>2018-07-24 14:55:10 -0400
commit7564bd4dd624d1504dcf819dd1fb20ff16dbdd9d (patch)
tree6dc67856e3bac0aaa2895da5abe62fa74c393c26
parentbe33ab1ff436cdc693422d4e9b057bdbdc14c5de (diff)
downloadconfigs-7564bd4dd624d1504dcf819dd1fb20ff16dbdd9d.tar.gz
configs-7564bd4dd624d1504dcf819dd1fb20ff16dbdd9d.tar.xz
configs-7564bd4dd624d1504dcf819dd1fb20ff16dbdd9d.zip
[rc/battery-percentage-time] drastically improve the script
thanks to @sircmpwn: https://cmpwn.com/@sir/100431155990909270
-rw-r--r--rc.org47
1 files changed, 18 insertions, 29 deletions
diff --git a/rc.org b/rc.org
index 1ea4d4e..de4435a 100644
--- a/rc.org
+++ b/rc.org
@@ -4878,41 +4878,30 @@ exact brightness value.
** battery-percentage-time
:PROPERTIES:
-:header-args+: :tangle ~/.local/bin/battery-percentage-time :shebang "#!/bin/bash"
+:header-args+: :tangle ~/.local/bin/battery-percentage-time :shebang "#!/bin/sh"
:END:
-#+begin_src bash
-perc=$(dbus-send --print-reply=literal --system \
- --dest=org.freedesktop.UPower \
- /org/freedesktop/UPower/devices/battery_BAT0 \
- org.freedesktop.DBus.Properties.Get \
- string:org.freedesktop.UPower.Device \
- string:'Percentage' | awk '{print $3}')
-
-state=$(dbus-send --print-reply=literal --system \
- --dest=org.freedesktop.UPower \
- /org/freedesktop/UPower/devices/battery_BAT0 \
- org.freedesktop.DBus.Properties.Get \
- string:org.freedesktop.UPower.Device \
- string:'State' | awk '{print $3}')
+#+begin_src sh
+dbus_send() {
+ label=$1
+ dbus-send --print-reply=literal --system \
+ --dest=org.freedesktop.UPower \
+ /org/freedesktop/UPower/devices/battery_BAT0 \
+ org.freedesktop.DBus.Properties.Get \
+ string:org.freedesktop.UPower.Device \
+ string:"${label}" | awk '{print $3}'
+}
+
+perc=$(dbus_send 'Percentage')
+state=$(dbus_send 'State')
if [ "$state" -eq 2 ]; then # Discharging
- secs=$(dbus-send --print-reply=literal --system \
- --dest=org.freedesktop.UPower \
- /org/freedesktop/UPower/devices/battery_BAT0 \
- org.freedesktop.DBus.Properties.Get \
- string:org.freedesktop.UPower.Device \
- string:'TimeToEmpty' | awk '{print $3}')
- printf '%s%%%%%2dh%02dm\n' "$perc" $((secs/3600)) $((secs%3600/60))
+ secs=$(dbus_send 'TimeToEmpty')
elif [ "$state" -eq 1 ]; then # Charging
- secs=$(dbus-send --print-reply=literal --system \
- --dest=org.freedesktop.UPower \
- /org/freedesktop/UPower/devices/battery_BAT0 \
- org.freedesktop.DBus.Properties.Get \
- string:org.freedesktop.UPower.Device \
- string:'TimeToFull' | awk '{print $3}')
- printf '%s%%%%%2dh%02dm\n' "$perc" $((secs/3600)) $((secs%3600/60))
+ secs=$(dbus_send 'TimeToFull')
fi
+
+printf '%s%%%%%2dh%02dm\n' "$perc" $((secs / 3600)) $((secs % 3600 / 60))
#+end_src
** rofi-light