sysinfo (3415B)
1 #!/bin/sh 2 ## author: pyratebeard <root@pyratebeard.net> 3 ## original author: xero <x@xero.nu> 4 #\\ vars 5 #FULL=▓ 6 #EMPTY=░ 7 #FULL=━ 8 #EMPTY=┄ 9 10 #EMPTY=━ 11 EMPTY=─ 12 FULL=┅ 13 14 name=$USER 15 host=$(hostname -s) 16 uptime=$(uptime -p | cut -b4- | tr -d ',|eeks|ay|our|inute') 17 battery=/sys/class/power_supply/BAT1 18 distro=$(grep -E "^ID=" /etc/os-release | awk -F= '{print $2}') 19 pkgs=$(pacman -Qqs | wc -l) 20 #upgrade=$(sudo pacman -Sy >/dev/null ; pacman -Qu | wc -l) 21 kernel=$(uname -r) 22 shell=$(echo $SHELL | awk -F/ '{print $NF}') 23 #term=$TERM 24 term="urxvt" 25 colors=$(grep urxvt-colors ~/.Xdefaults | awk -F\/ '{print $NF}' | tr -d '"') 26 font=$(grep -Ei "^urxvt\*font" ~/.Xdefaults | awk -F: '{print $3}') 27 font_size=$(grep -Ei "^urxvt\*font" ~/.Xdefaults | grep -Eo '[0-9]{1,2}' | head -n1) 28 #wm=$XDG_SESSION_DESKTOP 29 wm=`xprop -root _NET_WM_NAME|cut -d\" -f2` 30 31 #\\ progress bar 32 draw() 33 { 34 perc=$1 35 size=$2 36 inc=$(( perc * size / 100 )) 37 out= 38 if [ -z $3 ] 39 then 40 color="36" 41 else 42 color="$3" 43 fi 44 for v in `seq 0 $(( size - 1 ))`; do 45 test "$v" -le "$inc" \ 46 && out="${out}\e[0;34m${FULL}" \ 47 || out="${out}\e[38;5;236m${EMPTY}" 48 done 49 printf $out 50 } 51 52 #\\ colors 53 ~/bin/blocks 54 55 56 #\\ greets 57 printf " \e[1;37m user \e[0;33m┄┬┄ \e[1;33m$name\n" 58 printf " \e[1;37m host \e[0;33m┄┼┄ \e[1;34m$host\e[0m\n" 59 printf " \e[1;37m up \e[0;33m┄┴┄ \e[0;37m$uptime\n" 60 printf " \e[0m\n" 61 62 #\\ environment 63 printf " \e[1;37m distro \e[0;33m┄┬┄ \e[0m$distro\n" 64 printf " \e[1;37m kernel \e[0;33m┄┼┄ \e[0m$kernel\n" 65 printf " \e[1;37m wm \e[0;33m┄┼┄ \e[0m$wm\n" 66 printf " \e[1;37m shell \e[0;33m┄┼┄ \e[0m$shell\n" 67 printf " \e[1;37m term \e[0;33m┄┼┄ \e[0m$term\n" 68 printf " \e[1;37m font \e[0;33m┄┼┄ \e[0m$font $font_size\n" 69 printf " \e[1;37m colors \e[0;33m┄┴┄ \e[0m$colors\n" 70 printf " \e[0m\n" 71 #printf " \e[1;35m upgrade \e[38;5;236m▓▒ \e[0m$upgrade\n" 72 73 #\\ cpu 74 cpu=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}') 75 proc=$(grep ^processor /proc/cpuinfo | wc -l) 76 c_lvl=`printf "%.0f" $cpu` 77 printf " \e[1;35m%-4s \e[1;37m%-5s %-25s \n" " cpu" "$c_lvl%" " "`draw $c_lvl 15` 78 79 #\\ ram 80 ram=`free | awk '/Mem:/ {print int($3/$2 * 100.0)}'` 81 mem=$(free -hg --si | grep ^Mem | awk '{print $2}' | tr '[:upper:]' '[:lower:]') 82 printf " \e[1;35m%-4s \e[1;37m%-5s %-25s \n" " ram" "$ram%" " "`draw $ram 15` 83 84 #\\ battery 85 if [ -f $battery/charge_full ] ; then 86 b_full=$battery/charge_full 87 b_now=$battery/charge_now 88 bf=`cat $b_full` 89 bn=`cat $b_now` 90 charge=`printf $(( 100 * $bn / $bf ))` 91 92 case 1 in 93 $(($charge <= 15))) 94 color='31' 95 ;; 96 *) 97 color='34' 98 ;; 99 esac 100 printf " \e[0;${color}m%-4s \e[1;${color}m%-5s %-25s \n" " bat" "$charge%" `draw $charge 15 $color` 101 fi 102 103 #\\ volume 104 vol=`amixer get Master | awk '$0~/%/{print $5}' | head -n1 | tr -d '[]%'` 105 if amixer get Master | grep -q '\[off\]' 106 then 107 color='31' 108 else 109 color='34' 110 fi 111 printf " \e[1;35m%-4s \e[1;37m%-5s %-25s \n" " vol" "$vol%" " "`draw $vol 15 $color` 112 113 #\\ temperature 114 #temp=`sensors | awk '/Core\ 0/ {gsub(/\+/,"",$3); gsub(/\..+/,"",$3) ; print $3}'` 115 #case 1 in 116 # $(($temp <= 50))) 117 # color='34' 118 # ;; 119 # $(($temp >= 75))) 120 # color='31' 121 # ;; 122 # *) 123 # color='36' 124 # ;; 125 #esac 126 #printf " \e[0;${color}m%-4s \e[1;${color}m%-5s %-25s \n\n" "temp" "$temp°c " `draw $temp 15 $color` 127 printf " \e[0m\n"