diff options
Diffstat (limited to '.local/bin')
-rwxr-xr-x | .local/bin/qotd | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/.local/bin/qotd b/.local/bin/qotd index 3648072..ec1eb20 100755 --- a/.local/bin/qotd +++ b/.local/bin/qotd @@ -2,23 +2,31 @@ set -e +older_than_today() +{ + if [ ! -f "$1" ] + then + mod=0000-00-00 + else + mod=`stat -c %y "$1" | xargs -I{} -- date -d{} +%F` + fi + + [ $mod != `date +%F` ] + return $? +} + readonly QUOTES="${XDG_DATA_HOME:-$HOME/.local/share}/romir/quotes.yml" readonly QOTD="${XDG_CACHE_HOME:-$HOME/.cache}/qotd" -if [ ! -f "$QUOTES" ] +if older_than_today "$QUOTES" then dirname "$QUOTES" | xargs mkdir -p chronic wget 'https://romir.eu/mangoes.yaml' -O "$QUOTES" fi -if [ ! -f "$QOTD" ] -then - mod=0000-00-00 -else - mod=`stat -c %y "$QOTD" | xargs -I{} -- date -d{} +%F` -fi - -[ $mod != `date +%F` ] \ +older_than_today "$QOTD" \ && yq -0 '.mangoes.[].quote.content' <"$QUOTES" \ | shuf -zn1 \ | tr '\0' '\n' >"$QOTD" + +exit 0 |