dwmblocks/scripts/dwmblocks-battery

54 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env zsh
if [[ "$(uname)" = 'Linux' ]]; then
let charge_full="$(cat '/sys/class/power_supply/BAT0/charge_full')."
function get_battery_percent {
let charge_now="$(cat '/sys/class/power_supply/BAT0/charge_now')."
printf '%.0f' "$((charge_now / charge_full * 100))"
}
function is_adapted_connected {
let connected="$(cat /sys/class/power_supply/ADP1/online)"
if ((${connected} == 1)); then
echo 'true'
else
echo 'false'
fi
}
function get_battery_icon {
let charge_percent="${1}"
if "$(is_adapted_connected)"; then
echo -n ''
elif ((${charge_percent} <= 10)); then
echo -n ''
elif ((${charge_percent} <= 20)); then
echo -n ''
elif ((${charge_percent} <= 30)); then
echo -n ''
elif ((${charge_percent} <= 40)); then
echo -n ''
elif ((${charge_percent} <= 50)); then
echo -n ''
elif ((${charge_percent} <= 60)); then
echo -n ''
elif ((${charge_percent} <= 70)); then
echo -n ''
elif ((${charge_percent} <= 80)); then
echo -n ''
elif ((${charge_percent} < 100)); then
echo -n ''
else
echo -n ''
fi
}
let cp="$(get_battery_percent)"
get_battery_icon "${cp}"
printf '%3d%%\n' "${cp}"
# Linux ends here
else
echo "${0}: error: unknown os: \"$(uname)\"" >&2
exit 1
fi