Added new weather module, fixed archupdates spacing and tweaked bar.sh

This commit is contained in:
Archie Hilton (thytom) 2019-11-06 14:19:23 +00:00
parent 23767a965b
commit 20b9b4855e
3 changed files with 12 additions and 51 deletions

6
bar.sh
View file

@ -45,8 +45,10 @@ run_module()
out="$($MODULES_DIR$1)" out="$($MODULES_DIR$1)"
fi fi
[[ ! "$out" = "" ]] && out="$out$SEPARATOR." if [[ ! "$out" = "" ]]; then
echo "$out" > "$OUTPUT_CACHE$module" out="$out$SEPARATOR."
echo "$out" > "$OUTPUT_CACHE$module"
fi
} }
run() run()

View file

@ -4,9 +4,9 @@
# Requires an internet connection # Requires an internet connection
# Depends on yay and checkupdates (pacman-contrib) # Depends on yay and checkupdates (pacman-contrib)
PREFIX=' Updates: ' PREFIX=' Updates: '
get_updates() get_updates()
{ {
if ! updates_arch=$(checkupdates 2> /dev/null | wc -l ); then if ! updates_arch=$(checkupdates 2> /dev/null | wc -l ); then
updates_arch=0 updates_arch=0

View file

@ -1,56 +1,15 @@
#!/bin/bash #!/bin/bash
# Prints out the weather at your approximate location # Deps:
# Needs an internet connection # curl
# Dependencies: jq
SUN_ICON=''
CLOUD_ICON='摒'
RAIN_ICON='歹'
THUNDER_ICON='朗'
SNOW_ICON='流'
MIST_ICON='敖'
get_weather() get_weather()
{ {
LOCATION=$(curl -s http://ip-api.com/json | \ curl -s v2.wttr.in | grep -e "Weather" | sed 's/C,.*/C/g; s/+//g; s/.*\[0m.//g; s/.//2'
jq '.lat, .lon' | \
while read -r LATITUDE; do
read -r LONGITUDE
echo "${LATITUDE}:${LONGITUDE}" | tr -d '"'
done)
LANG="en"
UNITS="Metric"
API_KEY="756edce7e9d4c385ef9499a53492678c"
LOCATION_FORMATTED_2=$(echo $LOCATION | cut -d ':' -f2)
LOCATION_FORMATTED_1=$(echo $LOCATION | cut -d ':' -f1)
OUTPUT=$(curl -s "http://api.openweathermap.org/data/2.5/weather?lat=$LOCATION_FORMATTED_1&lon=$LOCATION_FORMATTED_2&lang=$LANG&appid=$API_KEY&units=$UNITS")
STATUS=$(echo $OUTPUT | jq '.weather' | tr '[' ' ' | tr ']' ' ' | jq '.main' | sed 's/"//g')
TEMP=$(echo $OUTPUT | jq '.main' | jq '.temp' | xargs printf "%.*f\n" 0)
case $STATUS in
"Clear" )
echo $SUN_ICON;;
"Clouds" )
echo $CLOUD_ICON;;
"Rain" )
echo $RAIN_ICON;;
"Thunderstorm" )
echo $THUNDER_ICON;;
"Snow" )
echo $SNOW_ICON;;
"Mist" )
echo $MIST_ICON;;
* )
echo "?";;
esac
echo "$STATUS, "
echo "$TEMP°C"
} }
get_weather
if [ $(( 10#$(date +'%S') % 30 )) -eq 0 ]; then
get_weather
fi