💾 Archived View for lyk.so › gemlog › 005-tinylog-autosubscription.gmi captured on 2024-05-10 at 10:40:47. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-01-29)
-=-=-=-=-=-=-
Before I get into the meat of this post: in the past I've been pretty hesitant to add entries to my gemlog. Most of what I want to write about seems to be about modifying the systems I use. Rather than write a discrete entry in my gemlog, I've just been quietly updating my "systems" pages. I wanted to make it easy to learn about the latest "refinement" of any particular system, as well as any major versions that came before, by visiting a single page.
Writing something in my gemlog for every tiny change made to those pages seemed redundant, so I haven't been doing this, but I'm going to start trying now. This should make it easier to dig into the evolution of each version of my systems while also aiding discoverability on platforms like Antenna that favor content presented chronologically.
I maintain a tinylog:
I use gtl to subscribe to the tinylogs of others:
https://git.bacardi55.io/bacardi55/gtl
bacardi55 keeps a public record of known tinylogs:
https://codeberg.org/bacardi55/gemini-tinylog-rfc/raw/branch/main/Known-tinylogs.md
I want to automatically subscribe to new tinylogs when they're added to that document. To that end, I wrote the following script which I run periodically:
#!/usr/bin/env sh set -e cd ~/.config/gtl temp="$(mktemp -d)" trap 'rm -fr "$temp"' EXIT INT HUP # Ensure subs file is sorted cat subs | sort > "$temp/sorted" mv "$temp/sorted" subs # Ensure a "blocked" file exists touch blocked curl -s https://codeberg.org/bacardi55/gemini-tinylog-rfc/raw/branch/main/Known-tinylogs.md \ | grep "* gemini://" \ | sed "s/^\* //g" \ | sort \ > "$temp/known" comm -13 blocked "$temp/known" > "$temp/new-subs-file" comm -13 subs "$temp/new-subs-file" > "$temp/new-logs" if [ "$(cat "$temp/new-logs")" != "" ]; then echo "Subscribing to:" cat "$temp/new-logs" else echo "No new tinylogs." fi mv "$temp/new-subs-file" subs
update-tinylog-subscriptions.sh
In short, it adds to your ~/.config/gtl/subs file any new URL and alias pairs in Known-tinylogs.md that don't match any lines in your ~/.config/gtl/blocked file.