dotfiles

Dotfiles for my OpenBSD environment.
git clone https://git.mtkn.jp/dotfiles
Log | Files | Refs

dwm_status (1122B)


      1 #!/bin/sh
      2 date="$(date '+%m/%d %a %H:%M') |"
      3 
      4 mute=$(sndioctl -n output.mute)
      5 [ "$mute" = 1 ] && state="MUTE" || state="VOL"
      6 volume=$(printf '%.0f' $(echo $(sndioctl -n output.level) '*' 100 | bc))
      7 volume=" $state $volume |"
      8 
      9 online=$(apm -a)
     10 capacity=$(apm -l)
     11 if [ "$online" = "1" ]; then
     12 	bat=" AC $capacity |"
     13 elif [ "$online" = "0" ]; then
     14 	bat=" BAT $capacity |"
     15 else
     16 	bat=""
     17 fi
     18 
     19 cpu=" CPU $(uptime | sed 's/.*load averages: \(.*\)/\1/' | cut -d, -f1) "$(printf "%4s" "$(sysctl -n hw.cpuspeed)")"MHz |"
     20 
     21 tmp=" TMP $(sysctl -n hw.sensors.cpu0.temp0 | cut -d'.' -f1) |"
     22 
     23 if=$(ifconfig | grep '^[^       ]*:' | sed 's/:.*//')
     24 eif="em re"
     25 wif="iwx iwm iwn"
     26 for i in $if
     27 do
     28 	ii=${i%%[0-9]*}
     29 	if echo $eif | grep -q $ii; then
     30 		eth="$i"
     31 	fi
     32 	if echo $wif | grep -q $ii; then
     33 		wifi="$i"
     34 	fi
     35 done
     36 
     37 if [ -n "$eth" ]; then
     38 	eth=$(ifconfig $eth | awk '/active/{printf "ETH "}')
     39 fi
     40 if [ -n "$wifi" ]; then
     41 	wifi=$(ifconfig $wifi | awk '
     42 		/active/{printf "WIFI "}
     43 		/no network/{printf "down:"}
     44 		/ieee80211:/{printf "%s %s\n", $3, $8}')
     45 fi
     46 nw=" $eth$wifi"
     47 
     48 printf "%s%s%s%s%s%s\n" "$date" "$volume" "$bat" "$cpu" "$tmp" "$nw"