Expanding the Computational Grass / 2026 Jul 17 ----------------------------------------------- This morning I finally got around to trying out elfeed, the featureful RSS feed reader for Emacs. I exported my NetNewsWire RSS subs to an OPML file and imported that into elfeed. After about thirty minutes of poking around I was sold. Not only does elfeed offer all the basic features I expect from a reader, it has a very intuitive flexible filtering system that can handle hundreds of feeds and thousands of articles. Still, why give up on NetNewsWire, an admittedly very well-made RSS feed reader that I've used for well over 20 years? Well that gets to the heart of the matter. There isn't really anything wrong with NetNewsWire. It's a perfectly good app that does one thing and does that one thing very well. But that is exactly the issue. The relationship /between/ UI applications (regardless of operating system choices) has hardly advanced since Apple introduced the Macintosh. Copy/pasting media and reliable drag/drop between applications, sure, but there has to be more interesting forms of synergy. Probably the single greatest idea to gain popularity due to graphical user interfaces is the hyperlink. Yet to this day, desktop applications remain largely unaddressable. And the web largely being overrun by capitalist interests, chatbots, and ne'er-do-wells is unlikely to ever really fulfill the hypermedia promise. Compare this to one of my very favorite features about Emacs org-capture. org-capture lets you quickly make a note of something while you're in the middle of something else. The important thing is that you can configure the capture template so that your note has a link. Configuring the capture template is succint: (setq org-capture-templates '(("n" "Note" entry (file+olp+datetree "/path/to/notes.org") "* %?\nEntered on %U\n %i\n %a"))) %? is new org-mode aheading, %U is a timestamp, %i will be the selected text and %a will be the automatically inserted link. If I'm in an email in Gnus and jot down a note, I get a link to the email I was reading. Of course it works if I'm browsing the web with EWW, but also if I'm browsing a Gopher hole or a Gemini capsule in Elpher. It works if my cursor is on a file in Dired. It works if I'm looking at a TODO item in Org. It works if I'm in a buffer in Magit. It works from a Libera.Chat channel in ERC. And now with elfeed, it works while I'm reading BoomKat record reviews. If I don't get a sensible link from wherever I am making a quick note, that's surprising! The point is that a text editor kept moving forward in time while the rest of world froze in place some four decades ago. Anyways, one obvious thing missing from elfeed was keeping my feed state shared between machines. I started wondering if SDF offered any solutions. I gave a quick search on the wiki and discovered SDF runs a Tiny Tiny RSS instance and MetaArray users can request a login. So I did. After getting a password and logging into my account, configuring Tiny Tiny RSS was very easy. Figuring out how to connect elfeed with elfeed-protocol so that I could use ttrss was a bit more work. (use-package elfeed :defer t :ensure t :config (require 'elfeed-protocol) (setq elfeed-use-curl t elfeed-feeds '(("ttrss+https://swannod@rss.sdf.org" :password (my/authinfo-pass "rss.sdf.org" "swannod")))) (elfeed-protocol-enable) (advice-add 'elfeed-feed-autotags :around #'my/feed-autotags)) my/authinfo-pass is just a trivial wrapper around auth-source-search which will find a particular entry in .authinfo for you. The only thing that's weird here is that I had to hack around the fact that I want to use the elfeed-tree view and that doesn't quite work out of the box with elfeed-protocol. Now I have a RSS reader that works the same on NetBSD and MacOS and I don't need iCloud to do it. Thanks SDF!