summaryrefslogtreecommitdiff
path: root/.local/bin/statusbar/batinfo
blob: 86ef56511b04c0a9da90abc7a1530cf88d18b601 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env bash

set -e

status="$(acpi -abi)" # get battery and adapter info

ARG=${1:-$BLOCK_BUTTON}

case $ARG in
	1) notify-send -t $((15 * 1000)) --urgency=low "Battery status" "$status" ;;
	4) brightnessctl -q s 10%+ ;;
	5) brightnessctl -q s 10%- ;;
esac

power=$(echo "${status}" | awk '/Battery [0-9]+: [A-Z]/{s+=$4;c++}; END{printf "%.1f%%", s/c}')

icon='?'
if [[ -z $(echo $status | sed -n '/on-line/p') ]]; then
	case "${power%.*}" in
		100 | 9[0-9]) icon='\x0d\uf578\x0b' ;;
		8[0-9]) icon='\uf581';;
		7[0-9]) icon='\uf580';;
		6[0-9]) icon='\uf57f';;
		5[0-9]) icon='\uf57e';;
		4[0-9]) icon='\uf57d';;
		3[0-9]) icon='\uf57c';;
		2[0-9]) icon='\uf57b';;
		1[0-9]) icon='\x0e\uf57a\x0b';;
		[0-9])  icon='\x1c\uf579\x0b';;
	esac
else
	icon='\uf583'
fi

echo -en "$icon $power"