175 lines
3.4 KiB
Bash
Executable File
175 lines
3.4 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# █▓▒░ tmux status
|
|
# by xero <http://xero.nu>
|
|
# http://git.io/.files
|
|
|
|
FULL=▓
|
|
EMPTY=░
|
|
EOL=▒
|
|
SIZE=7
|
|
C0="#000000"
|
|
C1="#222222"
|
|
C2="#1C596E"
|
|
C3="#B3291C"
|
|
C4="#3A3A3A"
|
|
C5="#efefef"
|
|
C6="#878787"
|
|
C7="#CBB3A0"
|
|
|
|
draw()
|
|
{
|
|
perc=$1
|
|
SIZE=$2
|
|
inc=$(( perc * SIZE / 100 ))
|
|
out=
|
|
thiscolor=
|
|
for v in `seq 0 $(( SIZE - 1 ))`; do
|
|
test "$v" -le "$inc" \
|
|
&& out="${out}#[fg=$C1]${FULL}" \
|
|
|| out="${out}#[fg=$C1]${EMPTY}"
|
|
done
|
|
echo $out
|
|
}
|
|
mail()
|
|
{
|
|
gmaildir=/home/hate/.Mail/Gmail/INBOX/new
|
|
prog=/usr/bin/offlineimap
|
|
count=0
|
|
log=/tmp/mails.log
|
|
|
|
if [ -x $prog ] ; then
|
|
|
|
$prog 2>/dev/null &
|
|
wait
|
|
|
|
if [ $? = 0 ] ; then
|
|
echo "$(date) - $prog success" >> $log
|
|
elif [ $? = 1 ] ; then
|
|
echo "$(date) - $prog has fail" >> $log
|
|
else
|
|
echo "$(date) - unknown prob" >> $log
|
|
fi
|
|
fi
|
|
|
|
if [[ ! -d ${gmaildir} ]] ; then
|
|
echo "$(date) - $gmaildir does not exist" >> $log
|
|
elif [[ ! -n $(ls "${gmaildir}") ]] ; then
|
|
echo "$(date) - $gmaildir no new mail found" >> $log
|
|
else
|
|
count=$(ls -1 "${gmaildir}" | wc -l)
|
|
fi
|
|
|
|
echo "▓ ✉ ${count} ▓"
|
|
}
|
|
weather()
|
|
{
|
|
|
|
APIKEY="99e2d54517287c6de1e9db99db2fdc84"
|
|
CITY_ID="659181" # customise this for your city
|
|
URL="http://api.openweathermap.org/data/2.5/weather?id=${CITY_ID}&units=metric&APPID=${APIKEY}"
|
|
|
|
WEATHER_RESPONSE=$(wget -qO- "${URL}")
|
|
|
|
WEATHER_CONDITION=$(echo $WEATHER_RESPONSE | jq '.weather[0].main' | sed 's/"//g')
|
|
WEATHER_TEMP=$(echo $WEATHER_RESPONSE | jq '.main.temp')
|
|
WIND_DIR=$( echo "$WEATHER_RESPONSE" | jq '.wind.deg')
|
|
WIND_SPEED=$( echo "$WEATHER_RESPONSE" | jq '.wind.speed')
|
|
|
|
#WIND_SPEED=$(awk "BEGIN {print 60*60*$WIND_SPEED/1000}")
|
|
WIND_SPEED=$(awk "BEGIN {print $WIND_SPEED}")
|
|
WIND_DIR=$(awk "BEGIN {print int(($WIND_DIR % 360)/22.5)}")
|
|
DIR_ARRAY=( N NNE NE ENE E ESE SE SSE S SSW SW WSW W WNW NW NNW N )
|
|
WIND_DIR=${DIR_ARRAY[WIND_DIR]}
|
|
|
|
case $WEATHER_CONDITION in
|
|
'Clouds')
|
|
WEATHER_ICON="☁"
|
|
;;
|
|
'Rain')
|
|
WEATHER_ICON="☔"
|
|
;;
|
|
'Snow')
|
|
WEATHER_ICON="☃"
|
|
;;
|
|
*)
|
|
WEATHER_ICON="☀"
|
|
;;
|
|
esac
|
|
|
|
echo "${WEATHER_ICON} ${WEATHER_TEMP}°C "
|
|
}
|
|
pkg()
|
|
{
|
|
#!/bin/bash
|
|
pac=$(checkupdates | wc -l)
|
|
aur=$(cower -u | wc -l)
|
|
|
|
check=$((pac + aur))
|
|
if [[ "$check" != "0" ]]
|
|
then
|
|
echo "▓ Upg:$pac/$aur"
|
|
fi
|
|
}
|
|
temp()
|
|
{
|
|
t=$(sensors | awk '/Core\ 0/ {gsub(/\+/,"",$3); gsub(/\..+/,"",$3) ; print $3}')
|
|
tc=$C0
|
|
case 1 in
|
|
$((t <= 50)))
|
|
tc=$C2
|
|
;;
|
|
$((t >= 75)))
|
|
tc=$C3
|
|
;;
|
|
esac
|
|
echo "#[fg=$tc]$t°c"
|
|
}
|
|
bat()
|
|
{
|
|
BATPATH=/sys/class/power_supply/CMB1
|
|
STATUS=$BATPATH/status
|
|
BAT_FULL=$BATPATH/charge_full
|
|
BAT_NOW=$BATPATH/charge_now
|
|
bf=$(cat $BAT_FULL)
|
|
bn=$(cat $BAT_NOW)
|
|
stat=$(cat $STATUS)
|
|
case $stat in
|
|
Full)
|
|
st="="
|
|
;;
|
|
Discharging)
|
|
st="-"
|
|
;;
|
|
Charging)
|
|
st="+"
|
|
;;
|
|
esac
|
|
echo "Bat: $st$(( 100 * $bn / $bf ))"%""
|
|
}
|
|
cpu()
|
|
{
|
|
CPU_USE=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage}')
|
|
printf "%.0f" $CPU_USE
|
|
}
|
|
ram()
|
|
{
|
|
free | awk '/Mem:/ {print int($3/$2 * 100.0)}'
|
|
}
|
|
clock()
|
|
{
|
|
mtime=$(date +'%H:%M')
|
|
myear=$(date +'%m-%Y')
|
|
mday=$(date +'%d-')
|
|
echo "#[fg=$C5]#[bg=$C4] $mtime #[fg=$C5]$mday#[fg=$C6]$myear #[fg=$C6]$EOL"
|
|
}
|
|
front()
|
|
{
|
|
echo "▓░"
|
|
#echo "#[bg=$C7]#[fg=$C1]▓░"
|
|
}
|
|
CPU_INFO=`cpu`
|
|
RAM_INFO=`ram`
|
|
echo `front` `weather` `pkg` `mail` `bat` `draw $RAM_INFO 4` `temp` `draw $CPU_INFO 7` `clock`
|
|
#echo `front` `weather` `pkg` `mail` `temp` `clock`
|