check dates on gemini pages: a simpler replacement for spacewalk
zachwalk: remove dateutil dependency
date: Check all link lines
date parsing: Better accept standard subscribable pages spec


browse  log 



You can also use your local clone with git send-email.

#ZachWalk: a gemini feed checker

#A replacement for spacewalk

This is just like spacewalk, except without

  • custom config file format
  • hashing page content to check for updates
  • multiple CLI commands
  • built in sorting
  • hundreds of lines of code

ZachWalk operates on a gemtext file, like a pipe. It will load each gemini link, updating the date in the description.

Instead of page hashing, we just parse the page for links with dates in the text. Python does all the heavy lifting for parsing these. If the page can't be updated, the existing date will be kept.

# you can use its own output as a template file.
cat spacewalk.gmi | ./zachwalk.py > radar.gmi
# output entries from your bookmarks which look like gemini feeds
grep '^=>' bookmarks.gmi | ./zachwalk.py | grep -v 1970-01-01 > radar.gmi
# sort your feeds by date
echo "Most recently modified on top." | cat /dev/stdin gemlogs.gmi | ./zachwalk.py | sort -k 3 -r > gemlogs-sorted.gmi

=> LICENSE.gmi Licensed under AGPLv3

=> zachwalk.py View source code

=> https://sr.ht/~earboxer/zachwalk View project on sourcehut.