Ah, the lengths I go to just to be able to read everything (not just email) via Emacs gnus! 🤔

I subscribe to RSS feeds for individual mastodon (and others) users and a variety of hashtags (guess which ones? 😉). I have created a virtual gnus group which brings together articles from all my RSS groups (regex pattern "^nnrss:.*"). Now when I visit that virtual group, I get the benefits of *adaptive scoring* for the accounts and hashtags in the fediverse! Those toots I am most likely to be interested in appear first in the virtual group and those that I am least likely to be interested in reading are at the bottom with some already marked as read due to a low score.

So my **algorithm** for the fediverse is adaptive scoring as provided by gnus. 😀

#gnus #Emacs #fediverse

@ericsfraga I might need to do this..

@ablatedsprocket

If you do want to try something like this, you'll need to hack the gnus RSS code, as I describe in a blog post:

https://www.homepages.ucl.ac.uk/~ucecesf/blog/20250812.html

Happy to help if needed.

Emacs carnival: Elevator pitch (or /How I learned to love RSS for the fediverse/)

@ericsfraga read your article and I now remember why I don't use gnus for RSS. I never got the back end to work. When I try using it, gnus errors saying the function nnrss-request-list isn't defined. Looking through the lisp file, I see it is indeed not in nnrss.el. Wasn't sure where else to go looking for it and gave up.

@ablatedsprocket Strange. If I `C-h f nnrss-request-list RET`, Emacs seems to know about it and tells me that it's a byte code fucntion in nnrss.el. But I also cannot actually see that function in that file. But it does work for me.

Have you tried, for instance, `(require 'nnrss)` before attempting to define an RSS group? Just grasping at straws here.

@ericsfraga I saw the same thing, Apropos and stuff know about it but there's no definition. I assumed a macro generated it or something, but there's no reference to it in nnrss.el anywhere.

I appreciate the suggestion! I did try that, even using a clean Emacs in case my config was the problem. Do you use gnus-group-browse-foreign-server (B by default) to add feeds from the group buffer?

@ericsfraga Cool! I've been working on adaptive scoring for elfeed, so I'm looking at it from a different angle.
@ericsfraga Have you set up replying to things in #gnus?

@ablatedsprocket
No. I wouldn't even know where to start! But it would definitely be useful.

Instead, I simply follow the link to the original toot (last URL in the RSS article) which automatically opens in mastodon.el for me and I can then reply, like, or boost etc.

#gnus #Emacs

@ericsfraga Geez, the gnus manual is GINORMOUS.

@khleedril
🤣

And sometimes quite funny.

@ericsfraga Do you find nnrss: works well for everything? Or do you need to also involve nnatom: for Atom feeds?
@davemq
nnrss works well for actual RSS feeds but some sites are indeed Atom based and nnrss does not work for them. I've yet to try nnatom although it's on my list of things to do... ;-)
@ericsfraga You inspired me to try this out, and I like it! nnatom works okay for me so far.
@ericsfraga I do have problems with web sites hanging occasionally when trying to update. I need to look into any timeout or async options.

@davemq Yes, I used to have this problem with some sites. I no longer do because I've basically removed any groups for sites that caused problems (life's too short 😉). Async retrieval could possibly do the job but I do find gnus to be a little fragile when things happen asynchronously unfortunately.

My solution before was to use levels for groups with most groups at levels 1-4 and my groups from problematic servers at level 5. The default (for me) then was to only retrieve groups with levels 1-4 by setting `gnus-activate-level`. I had to explicitly ask for level 5 groups and did so when I was not bothered about the speed of response.