summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuke Smith <luke@lukesmith.xyz>2018-12-21 12:35:24 -0500
committerLuke Smith <luke@lukesmith.xyz>2018-12-21 12:35:24 -0500
commit0a2e30e54f9ca7331df3a59d8b7a0bf0d277022e (patch)
tree63470bf799237d5881c35b881fa135ba492d2606
parentdf08e2a47b5b880bb2ac53eb5e42c4934df55027 (diff)
downloadeibhear-0a2e30e54f9ca7331df3a59d8b7a0bf0d277022e.tar.gz
eibhear-0a2e30e54f9ca7331df3a59d8b7a0bf0d277022e.tar.zst
eibhear-0a2e30e54f9ca7331df3a59d8b7a0bf0d277022e.zip
separate "cron" script for weather
-rwxr-xr-x.scripts/cron/getforecast6
-rwxr-xr-x.scripts/statusbar/weather9
2 files changed, 7 insertions, 8 deletions
diff --git a/.scripts/cron/getforecast b/.scripts/cron/getforecast
new file mode 100755
index 0000000..2760c89
--- /dev/null
+++ b/.scripts/cron/getforecast
@@ -0,0 +1,6 @@
+#!/bin/sh
+# Updates weather forecast
+ping -q -w 1 -c 1 "$(ip r | grep default | tail -1 | cut -d ' ' -f 3)" >/dev/null || exit
+location="$1"; [ -z "$location" ] || location="$location+"
+curl -s "wttr.in/$location" > ~/.weatherreport
+pkill -RTMIN+5 i3blocks && notify-send "🌞 Weather forecast updated."
diff --git a/.scripts/statusbar/weather b/.scripts/statusbar/weather
index a6c8d75..d87bb3f 100755
--- a/.scripts/statusbar/weather
+++ b/.scripts/statusbar/weather
@@ -1,6 +1,5 @@
#!/bin/sh
-### This is only if your location isn't automatically detected, otherwise you can leave it blank.
-location=""
+[ "$(stat -c %y .weatherreport | awk '{print $1}')" != "$(date '+%Y-%m-%d')" ] && getforecast
case $BLOCK_BUTTON in
1) $TERMINAL -e less -S ~/.weatherreport ;;
@@ -11,12 +10,6 @@ case $BLOCK_BUTTON in
🌞: Daily high" ;;
esac
-[ "$location" != "" ] && location="$location+"
-
-ping -q -w 1 -c 1 "$(ip r | grep default | tail -1 | cut -d ' ' -f 3)" >/dev/null || exit
-
-curl -s wttr.in/$location > ~/.weatherreport
-
printf "%s" "$(sed '16q;d' ~/.weatherreport | grep -wo "[0-9]*%" | sort -n | sed -e '$!d' | sed -e "s/^/☔ /g" | tr -d '\n')"
sed '13q;d' ~/.weatherreport | grep -o "m\\(-\\)*[0-9]\\+" | sort -n -t 'm' -k 2n | sed -e 1b -e '$!d' | tr '\n|m' ' ' | awk '{print " ❄️",$1 "°","🌞",$2 "°"}'