Since I am using
openring, I will detail how I automatically update the posts in the webring for this blog with the feeds from the blogs I follow.
My RSS feed /
Finding the stored feed data
I’m using the RSS reader
So the first order of business was finding out where where and how my feed was stored.
news-flash is FOSS, a quick into the sourcecode revealed the following.
glib is refering to the GTK+ library for rust.
Gnome uses the XDG Base Directory Specification, which tells us how data and config directories are to be defined.
With this knowledge equipped, I found the folder, and in it resides a SQLite database file.
It actually was a little more complicated than that. I am using Pop!OS (currently contemplating a migration to nixOS) which does not set
XDG_DATA_HOME, but I found it in my home folder’s
Identifying the data location
Next up was finding out what to take out of the database. For openring to work, links to the RSS feeds of the respective sites are needed. Let’s take a look inside the database.
So to find our feeds, the logical conclusion would be to look sinde the
Next, I want to only export feeds from blogs that I directly want to link upon, since it’s a quasi endorsement and also webrings are about distribution and decentralisation, so no need to link to hackernews.
For that I created a category called
categories table looks as follows.
Lastly, how do we connect a category to a feed?
My first bet was the
feed_mapping table, and I was right.
With all pieces together, let’s construct a query which extracts all rss feed URLs from our
I poured all this knowledge into a python script which basically runs this query and then starts the
openring program, using the feeds as arguments.
I added it to my deployment script, which I run to update my blog, and the result you can see below. 🤓