summaryrefslogtreecommitdiff
path: root/ar/.local/bin/statusbar/sb-forecast
diff options
context:
space:
mode:
Diffstat (limited to 'ar/.local/bin/statusbar/sb-forecast')
-rwxr-xr-xar/.local/bin/statusbar/sb-forecast8
1 files changed, 7 insertions, 1 deletions
diff --git a/ar/.local/bin/statusbar/sb-forecast b/ar/.local/bin/statusbar/sb-forecast
index 65bcd1a..af3c7fd 100755
--- a/ar/.local/bin/statusbar/sb-forecast
+++ b/ar/.local/bin/statusbar/sb-forecast
@@ -3,7 +3,13 @@
# Displays today's snow chance (🏂), precipication chance (☔), humidity (💧), wind speed (🎐), and current (feel like) temperature (🌞).
# Usually intended for the statusbar.
-location=$(curl -s http://ip-api.com/json | jq -r '[.regionName, .countryCode] | join(",")')
+# Cache location for 24 hours
+locationfile="${XDG_CACHE_HOME:-${HOME}/.cache}/statusbar/location"
+if [ ! -s "$locationfile" ] || [ $(($(date +%s) - $(stat -c %Y "$locationfile" 2>/dev/null || echo 0))) -gt 86400 ]; then
+ mkdir -p "${XDG_CACHE_HOME:-${HOME}/.cache}/statusbar"
+ curl -s http://ip-api.com/json 2>/dev/null | jq -r '[.regionName, .countryCode] | join(",")' > "$locationfile" 2>/dev/null || true
+fi
+location=$(cat "$locationfile" 2>/dev/null || echo "")
url="${WTTRURL:-wttr.in}"
weatherreport="${XDG_CACHE_HOME:-${HOME}/.cache}/weatherreport"