87 lines
2.1 KiB
Bash
87 lines
2.1 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
icon_color="#A0A57E"
|
||
|
icon() { echo -n "%{F$icon_color}"; printf '%b' "\ue$1"; echo -n "%{F-}"; }
|
||
|
|
||
|
icon_music=$(icon 05c)
|
||
|
icon_music_paused=$(icon 059)
|
||
|
icon_services=$(icon 040)
|
||
|
icon_diskspace=$(icon 0ab)
|
||
|
icon_wifi=$(icon 048)
|
||
|
icon_battery=$(icon 033)
|
||
|
icon_battery_charging=$(icon 042)
|
||
|
icon_clock=$(icon 018)
|
||
|
|
||
|
color_service_running="#A0A57E"
|
||
|
color_service_stopped="#C37561"
|
||
|
color_battery_good="white"
|
||
|
color_battery_low="#C37561"
|
||
|
|
||
|
music() {
|
||
|
info=$(mpc current -f '[%artist%] - [%title%]')
|
||
|
icon=$icon_music
|
||
|
if [ -z "$info" ]; then
|
||
|
info="(-)"
|
||
|
elif [ -n "$(mpc status | grep paused)" ]; then
|
||
|
icon=$icon_music_paused
|
||
|
fi
|
||
|
echo -n "$icon $info"
|
||
|
}
|
||
|
|
||
|
serviceinfo() {
|
||
|
service=$1
|
||
|
text=$2
|
||
|
systemctl is-active -q $service
|
||
|
if [ "$?" -eq 0 ]; then
|
||
|
echo -n "%{F$color_service_running}$text%{F-}"
|
||
|
else
|
||
|
echo -n "%{F$color_service_stopped}$text%{F-}"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
services() {
|
||
|
echo -n "$icon_services $(serviceinfo zomnet z) $(serviceinfo docker d)"
|
||
|
}
|
||
|
|
||
|
diskspace() {
|
||
|
echo -n "$icon_diskspace "
|
||
|
df -h | awk '{if($6 == "/") { print $3 " / " $2 }}'
|
||
|
}
|
||
|
|
||
|
wifi() {
|
||
|
echo -n "$icon_wifi "
|
||
|
info=$(wicd-cli --wireless --status | perl -e 'foreach $line (<>) { if($line =~ /Connected to (.+) at .+IP: ([0-9.]+)/ ) { print $1 . " - " . $2; break; } elsif($line =~ /Connecting to wireless network \"(.+)\"/) { print $1 . " - connecting"; break; } }')
|
||
|
if [ -z "$info" ]; then
|
||
|
info="(-)"
|
||
|
fi
|
||
|
echo -n $info
|
||
|
}
|
||
|
|
||
|
battery() {
|
||
|
level=$(acpi -b | awk -F, 'BEGIN { s=0 } { s+=$2 } END { print int(s/NR) }')
|
||
|
charging=$(acpi -b | grep Charging)
|
||
|
if [ -n "$charging" ]; then
|
||
|
echo -n "$icon_battery_charging "
|
||
|
else
|
||
|
echo -n "$icon_battery "
|
||
|
fi
|
||
|
|
||
|
if [ "$level" -lt 20 ]; then
|
||
|
echo -n "%{F$color_battery_low}$level%%{F-}"
|
||
|
else
|
||
|
echo -n "%{F$color_battery_good}$level%%{F-}"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
clock() {
|
||
|
echo -n "$icon_clock "
|
||
|
date +"%a %d.%m (%V) %H:%M"
|
||
|
}
|
||
|
|
||
|
while true; do
|
||
|
echo "%{l} $(music) $(services) $(diskspace)%{r}$(wifi) $(battery) $(clock) "
|
||
|
sleep 1
|
||
|
done | lemonbar -g 1366x15 -f "Terminus:size=8","Stlarch:size=6:style=regular" -B "#88000000"
|
||
|
|
||
|
|