Skip to content

Instantly share code, notes, and snippets.

@ruario
Last active October 20, 2023 20:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ruario/43fed207426aa88bcdb68cb2ff07eb50 to your computer and use it in GitHub Desktop.
Save ruario/43fed207426aa88bcdb68cb2ff07eb50 to your computer and use it in GitHub Desktop.
Script to post every time a further 5% (1h12m) of the day is depleted.
#!/bin/sh -eu
# Minutes past the hour that could *potentially* be when a percentage lands, to be used as a
# simple cron tab entry.
#
# 0,12,24,36,48 * * * * [path]/dailycountdown.sh >/dev/null 2>&1
# Define account username
PUBLISHER_USERNAME="dailyprogress@velocipederider.com"
# ℹ️ You need to have already setup auth for this user in toot TUI
# https://github.com/ihabunek/toot
# Check the time to see if it falls on 'round' percentages of the day
case "$(date '+%H%M')" in
"0000") PERCENTAGE_REMAINING="🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 100%" ;;
"0112") PERCENTAGE_REMAINING="🟩🟩🟩🟩🟩🟩🟩🟩🟩🟧 95%" ;;
"0224") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈ 90%" ;;
"0336") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈ 85%" ;;
"0448") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈβ¬›οΈ 80%" ;;
"0600") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈβ¬›οΈ 75%" ;;
"0712") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈβ¬›οΈβ¬›οΈ 70%" ;;
"0824") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈ 65%" ;;
"0936") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 60%" ;;
"1048") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 55%" ;;
"1200") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 50%" ;;
"1312") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 45%" ;;
"1424") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ©β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 40%" ;;
"1536") PERCENTAGE_REMAINING="πŸŸ©πŸŸ©πŸŸ©πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 35%" ;;
"1648") PERCENTAGE_REMAINING="πŸŸ§πŸŸ§πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 30%" ;;
"1800") PERCENTAGE_REMAINING="πŸŸ§πŸŸ§πŸŸ¨β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 25%" ;;
"1912") PERCENTAGE_REMAINING="πŸŸ§πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 20%" ;;
"2024") PERCENTAGE_REMAINING="πŸŸ§πŸŸ¨β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 15%" ;;
"2136") PERCENTAGE_REMAINING="πŸŸ§β¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈβ¬›οΈ 10%" ;;
"2248") PERCENTAGE_REMAINING="πŸŸ₯⬛️⬛️⬛️⬛️⬛️⬛️⬛️⬛️⬛️ 5%" ;;
*) echo "The time does not fall on an interesting division of the day" >&2 ; exit 0 ;;
esac
# Post using toot TUI
echo -e "$(date --date='+1 hours' '+%F')\n${PERCENTAGE_REMAINING}" | toot post -u "$PUBLISHER_USERNAME" -v public
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment