#!/bin/sh #█▓▒░ vars #FULL=▓ #EMPTY=░ FULL=━ #EMPTY=━ #EMPTY=─ #FULL=┅ EMPTY=┄ name=$USER host=$(hostname) battery=/sys/class/power_supply/BAT1 distro="arch linux" kernel=$(uname -r) pkgs=$(pacman -Qqs | wc -l) colors='boneyard' font='tamzen 9' wm='awesome' upgrade=$(sudo pacman -Sy >/dev/null ; pacman -Qu | wc -l) #█▓▒░ progress bar draw() { perc=$1 size=$2 inc=$(( perc * size / 100 )) out= if [ -z $3 ] then color="36" else color="$3" fi for v in `seq 0 $(( size - 1 ))`; do test "$v" -le "$inc" \ && out="${out}\e[1;${color}m${FULL}" \ || out="${out}\e[0;${color}m${EMPTY}" done printf $out } #█▓▒░ colors printf "\n" i=0 while [ $i -le 6 ] do printf "\e[$((i+41))m\e[$((i+30))m█▓▒░" i=$(($i+1)) done printf "\e[37m█\e[0m▒░\n\n" #█▓▒░ greets printf " \e[0m hello \e[36m$name\033[0m, i'm \e[34m$host\n" printf " \e[0m\n" #█▓▒░ environment printf " \e[1;33m distro \e[0m$distro\n" printf " \e[1;33m kernel \e[0m$kernel\n" printf " \e[1;33m packages \e[0m$pkgs\n" printf " \e[1;33m upgrade \e[0m$upgrade\n" printf " \e[1;33m wm \e[0m$wm\n" printf " \e[1;33m font \e[0m$font\n" printf " \e[1;33m colors \e[0m$colors\n" printf " \e[0m\n" #█▓▒░ cpu cpu=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}') c_lvl=`printf "%.0f" $cpu` printf " \e[0;36m%-4s \e[1;36m%-5s %-25s \n" " cpu" "$c_lvl%" `draw $c_lvl 15` #█▓▒░ ram ram=`free | awk '/Mem:/ {print int($3/$2 * 100.0)}'` printf " \e[0;36m%-4s \e[1;36m%-5s %-25s \n" " ram" "$ram%" `draw $ram 15` #█▓▒░ battery if [ -f $battery/charge_full ] ; then b_full=$battery/charge_full b_now=$battery/charge_now bf=`cat $b_full` bn=`cat $b_now` charge=`printf $(( 100 * $bn / $bf ))` case 1 in $(($charge <= 15))) color='31' ;; *) color='36' ;; esac printf " \e[0;${color}m%-4s \e[1;${color}m%-5s %-25s \n" " bat" "$charge%" `draw $charge 15 $color` fi #█▓▒░ volume vol=`amixer get Master | awk '$0~/%/{print $4}' | head -n1 | tr -d '[]%'` if amixer get Master | grep -q '\[off\]' then color='31' else color='36' fi printf " \e[0;${color}m%-4s \e[1;${color}m%-5s %-25s \n" " vol" "$vol%" `draw $vol 15 $color` #█▓▒░ temperature #temp=`sensors | awk '/Core\ 0/ {gsub(/\+/,"",$3); gsub(/\..+/,"",$3) ; print $3}'` #case 1 in # $(($temp <= 50))) # color='34' # ;; # $(($temp >= 75))) # color='31' # ;; # *) # color='36' # ;; #esac #printf " \e[0;${color}m%-4s \e[1;${color}m%-5s %-25s \n\n" "temp" "$temp°c " `draw $temp 15 $color` printf " \e[0m\n"