dotfiles/de/home/.config/sway-profiles/global-shortcuts/weather
2024-05-01 20:00:02 -06:00

36 lines
1.6 KiB
Bash
Executable file

#!/bin/bash
jweather=$( curl --silent wttr.in/?format=j1 )
#jweather=$( cat ~/weather.json )
current_f=$( jq -r '.current_condition.[].FeelsLikeF' <<< ${jweather} )
high_f=$( jq -r '.weather.[0].maxtempF' <<< ${jweather} )
low_f=$( jq -r '.weather.[0].mintempF' <<< ${jweather} )
weather_desc=$( jq -r '.current_condition.[].weatherDesc.[].value' <<< ${jweather} )
hourly_forecast=""
daily_forecast=""
current_hour=$( date +'%H' )
echo $current_hour
for h in {0..7};do
check_hour=$( date -d $( jq -r --argjson h ${h} '.weather.[0].hourly.[$h].time' <<< ${jweather} ) +'%H' )
if [[ ${check_hour#0} -ge ${current_hour#0} ]];then
echo "future"
hourly_forecast="${hourly_forecast}\n${check_hour}00: "$( jq -r --argjson h ${h} '.weather.[0].hourly.[$h].weatherDesc.[].value' <<< ${jweather} )", "$( jq -r --argjson h ${h} '.weather.[0].hourly.[$h].FeelsLikeF' <<< ${jweather} )"°F"
fi
done
for d in {1..2};do
echo $d
daily_forecast="${daily_forecast}\n"$( date -d $( jq -r --argjson d ${d} '.weather.[$d].date' <<< ${jweather} ) +'%a' )": "$( jq -r --argjson d ${d} '.weather.[$d].hourly.[4].weatherDesc.[].value' <<< ${jweather} )" ("$( jq -r --argjson d ${d} '.weather.[$d].maxtempF' <<< ${jweather} )"°F/"$( jq -r --argjson d ${d} '.weather.[$d].mintempF' <<< ${jweather} )"°F)"
done
hourly_forecast=$( echo -e $hourly_forecast | sed '/^[[:space:]]*$/d' )
daily_forecast=$( echo -e $daily_forecast ) # | sed '/^[[:space:]]*$/d' )
echo $daily_forecast
notify-send "${weather_desc}, ${current_f}°F (${high_f}°F/${low_f}°F)
${hourly_forecast}
${daily_forecast}"