diff options
Diffstat (limited to 'weather-forecast')
-rwxr-xr-x | weather-forecast | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/weather-forecast b/weather-forecast new file mode 100755 index 0000000..269f740 --- /dev/null +++ b/weather-forecast @@ -0,0 +1,36 @@ +#!/bin/bash +# +# Simple wrapper around wttr.in +# + +# Parameters +BASENAME="`basename $0`" +PROGRAM="$1" +CACHE="$HOME/.local/share/weather" + +# Load config +source $HOME/.custom/wttr.in.conf || exit 1 + +# weather-forecast service query +function weather_forecast_query { + # Make sure everything we need exists + mkdir -p $CACHE + touch $CACHE/weather-forecast.cur $CACHE/weather-forecast.prev + + # Save the previous forecast + cp $CACHE/weather-forecast.cur $CACHE/weather-forecast.prev + curl wttr.in/$LOCATION > $CACHE/weather-forecast.cur 2> /dev/null + + # Test if current forecast is empty, meaning + # that we're probably ofline. In that case + # we provide the previous output. + if [ ! -s "$CACHE/weather-forecast.cur" ]; then + cp $CACHE/weather-forecast.prev $CACHE/weather-forecast.cur + fi + + # Display output + cat $CACHE/weather-forecast.cur +} + +# Main +weather_forecast_query |