aboutsummaryrefslogtreecommitdiff
path: root/bin/status-bar
blob: f0523aed559bbba2ade0493042013067f5ce2ea1 (plain) (blame)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/bin/sh
timeout=5

_sys_memory() {
		free -m | awk '/^Mem/{print $6;exit 0;}'
}

_sys_uptime() {
uptime | sed -re's/^.*up[ 	]+//g' -e's/^([^,]*),.*/\1/g' -e's/^([^ 	]+)[ 	]*(.).*/\1\2/g'
}

wireless_info() {
	_if="$1"

	printf "WiFi: %s %s %s %s" \
	"$_if" \
	"$(nmcli c | awk "/$_if/"'{print $1}')" \
	"$(ip -4 addr show dev "$_if" | awk '/inet /{print $2}')" \
	"$(awk '/^wlp3s0/{print $4+0}' /proc/net/wireless)dbm"
}

eth_info() {
	_if="$1"

	printf "Eth: %s %s %s" \
	"$_if" \
	"$(ip -4 addr show dev "$_if" | awk '/inet /{print $2}')" \
	""

	# "$(ifconfig "$_if" | grep -oE '[0-9]+baseT')"
}

network_info() {
	# default_if="$(netstat -rnf inet | awk '/^default/{print $8}')"
	default_if="$(ip route | awk '/^default/{print $5;exit 0;}')"

	if [ -z "$default_if" ]  ; then
		echo "No conn"
	elif [ -d "/sys/class/net/$default_if/wireless" ] ; then
		wireless_info "$default_if"
	else
		eth_info "$default_if"
	fi
}


ac_status() {
	sudo tlp-stat -b | awk '/\/status/{print $3}'
}

cpu_freq() {
cat /proc/cpuinfo  | grep '^cpu MHz' | awk '{print $4}' | sort -nr | sed 1q
}

status_line() {
echo \
"Temp: $(sensors | sed -n 's/^temp1:[\t ]*//p' | sed 's/ *//g' | sed 1q | tr -d '\n')|"\
"Fan: $(sensors | sed -n 's/^fan1:[\t ]*//p')|"\
"Cpu Freq: $(cpu_freq)mhz|"\
"Batt: $(sudo tlp-stat -b | awk '/^Charge/{print $3}') $(ac_status)|"\
"$(network_info)|"\
"Free Mem: $(_sys_memory)|"\
"Uptime: $(_sys_uptime)|"\
"$(date '+%m.%d.%Y %H:%M:%S')"
}

x230() {
while true ; do

xsetroot -name "$(status_line)"

sleep "$timeout"
done
}


$@