User Tools

Site Tools

tools:rss

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:rss [2025/09/09 19:30] – [RSS 2.0] Humphrey Boa-Garttools:rss [2025/09/30 22:44] (current) – external edit 127.0.0.1
Line 8: Line 8:
 ===== History ===== ===== History =====
  
 +[{{ :tools:rssicon.png?200|The internationally recognized symbol of RSS.}}]
  
 +The first version of RSS was **0.90** and originally called **RDF Site Summary**. Developed by [[history:netscape|Netscape]], it was based off an early working draft of [[wp>Resource Description Framework]], but ultimately took on an incompatible life of its own. 
 +
 +Eventually Netscape abandoned the project after releasing version **0.91**. In this power vacuum, competing developers to released their own successors: One published **RSS 1.0** and the other **RSS 2.0**, with the 2.0 spec being the most widely used today.
 +
 +Another popular XML-based technology - **Atom** - was developed a few years later to address some of the 'bugginess' in RSS, and is similar enough to be placed in the //"RSS family."// Most decent aggregators support both RSS 1+2 & Atom feeds. For more information on the differences between RSS and Atom, read this [[https://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared|detailed comparison]].
 +
 +
 +===== RSS as a Field Utility =====
 +
 +The value of RSS to [[anonymous:anonops|AnonOps]] agents cannot be understated. As many sites have RSS //(or Atom)// feeds, you can centralize the updates of all your favorite sites, authors, streamers, developers, and whatever else, all in one place - saving the need of having to check a bunch of individual websites or even opening your browser.
 +
 +However, RSS has security benefits as well. Because it is simple XML text, that means you don't have to worry about potentially dangerous remote media compromising your machine or tracking your movements //(unless you use a crappy aggregator, which is a whole different story)//. Datacenters, ISP's & web server operators can still see if your IP address checked the feed, but aside from getting your [[diy:user-agent-spoofing|user agent]] it is otherwise much harder to fingerprint you.
 +
 +In fact, those inclined to [[diy:unplug|unplug]] will recognize other benefits of using aggregators as well - especially if beforehand they got their news via social media algorithms & corrupt platforms like Google. With direct subscription to RSS feeds, you will no more have to deal with //"recommended"// news, or [[hazards:ai|AI]] arbitrarily censoring your content intake.
 +
 +Some aggregators (such as [[tools:rss#newsboat|Newsboat]]) allow you to [[tools:bash:shortcuts-piping#metacharacters|pipe]] these updates to other utilities. This lets you do really cool things like:
 +
 +  * Use [[tools:yt-dlp|yt-dlp]] to download Youtube videos right from your news reader and open them in a local media player.
 +  * Scrape docket updates from [[https://www.courtlistener.com/docket/69272622/connor-v-goldsmith/|CourtListener]] and download them as PDF files.
 +  * Track [[https://github.com/humphreyboagart/grackle/commits.atom|GitHub]] project commits and clone them into clean testing environments.
 +
 +With RSS feeds and the right aggregation software, the sky is truly the limit with how to integrate it into your [[:op|operations]].
 +
 +
 +===== Application-Specific Instructions =====
 +
 +To subscribe to AMI's [[https://bestpoint.institute/home?do=recent|Recent Changes]] feed, point your feed reader to:\\
 +[[https://bestpoint.institute/feed.php]]
 +
 +To find a site's RSS or Atom feed, just visit the site. Some browsers may detect it and give you a button to interact with it. Or look for the bright orange icon shown above. That icon will usually be a link that points to the feed. Otherwise, you may have to view the HTML source: Search for the words //RSS// or //Atom// to find its associated ''<link>'' tag in the ''<head>'' block, which is usually where you can surefire find a link to the feed if one exists.
 +==== Browser-Based Applications ====
 +== Multiplatform ==
 +
 +Many websites exist which offer the ability to let users subscribe to RSS/Atom feeds. While this is convenient for sure, it completely defeats the purpose of [[diy:unplug|unplugging]] from the machine. Just install an aggregator, and enjoy the greater convenience of never having to open your web browser.
 +
 +
 +==== Mozilla Thunderbird ====
 +== Multiplatform ==
 +
 +For those just starting out with RSS, the email client **Mozilla Thunderbird** doubles in a pinch as a powerful news reader. It is easy to install and well documented, and the interface is well-suited to displaying structured feeds.
 +
 +For installation instructions, visit [[https://www.thunderbird.net/en-US/thunderbird/all/|Thunderbird.net]].
 +
 +
 +==== Newsboat ====
 +== Linux, MacOS & BSD ==
 +
 +**Newsboat** is a simple & powerful [[tools:bash|terminal]] application for tracking RSS feeds. It's available in many package managers, such as ''apt'', where it can be installed with:
 +
 +  $ sudo apt install newsboat
 +
 +One it is installed, you can open Newsboat with the ''newsboat'' command. [[https://newsboat.org/releases/2.40/docs/newsboat.html#_installation|Alternative instructions]] are available for other platforms. You can even build it from source if you are so inclined!
 +
 +=== Configuration Examples ===
 +
 +Setting up Newsboat consists of editing two files: ''.config/newsboat/config'' //(which is where the application environment is configured)// and ''.config/newsboat/urls'' //(which is where you list all the feeds you want Newsboat to subscribe to)//. That's literally it.
 +
 +== .config/newsboat/config ==
 +
 +This configuration example will get you going really fast. All external links are opened in the terminal browser ''elinks'', and it includes a few macro commands for piping those links to alternative browsers & other media utilities:
 +
 +<file txt config>
 +# config options:
 +browser elinks
 +refresh-on-startup yes
 +reload-threads 94
 +show-read-feeds no
 +show-read-articles no
 +
 +# some stock themes you can load (uncomment only one):
 +#include /usr/share/doc/newsboat/contrib/colorschemes/cyanism
 +#include /usr/share/doc/newsboat/contrib/colorschemes/inkpot
 +include /usr/share/doc/newsboat/contrib/colorschemes/kinda-maia
 +#include /usr/share/doc/newsboat/contrib/colorschemes/nord
 +#include /usr/share/doc/newsboat/contrib/colorschemes/plain
 +#include /usr/share/doc/newsboat/contrib/colorschemes/solarized-dark
 +
 +# index layout ('feedlist'):
 +feedlist-format "%?T?║%8T %8u %t &╠═══════════════════════════════════════════════════════════════%t?"
 +feedlist-title-format "%9N - Your feeds (%u unread, %t total)"
 +highlight feedlist "[║│]" color3 color0
 +highlight feedlist "╠═.*" color3 color0
 +
 +# feed layout ('articlelist'):
 +articlelist-format "%7L %8D - %t "
 +articlelist-title-format "%9N - Latest by %T (%u unread, %t total)"
 +
 +# article layout ('itemview'):
 +itemview-title-format "%9N - %F - %T"
 +
 +# MACROS
 +# note: none of these will work unless you have
 +# the associated programs in your $PATH
 +bind-key SPACE macro-prefix
 +macro b set browser "brave %u >/dev/null 2>&1 &" ; open-in-browser ; set browser elinks
 +macro f set browser "firefox %u >/dev/null 2>&1 &" ; open-in-browser ; set browser elinks
 +macro p set browser "mpv %u >/dev/null 2>&1 &" ; open-in-browser ; set browser elinks
 +macro d set browser "sakura -x 'yt-dlp %u' >/dev/null 2>&1 &"; open-in-browser; set browser elinks
 +</file>
 +
 +== .config/newsboat/urls ==
 +
 +Organize your subscriptions list like this to make it easier to read:
 +
 +<file txt urls>
 +# Example Categorized Newsboat URL List
 +# Modify/Expand as necessary (don't forget tags!!!)
 +# Protip: Use "~example" to retitle unruly feeds.
 +
 +"query:Legal:tags # \"Legal\""
 +https://labs.bestpoint.institute/dockets/atom.php Legal "~AMI Docket Tracker"
 +
 +"query:Radio:tags # \"Radio\""
 +https://www.everythingrf.com/rss-feed Radio
 +https://www.rtl-sdr.com/feed/ Radio
 +
 +"query:Tech:tags # \"Tech\""
 +https://bestpoint.institute/feed.php Tech "~AMI Recent Changes"
 +https://spectrum.ieee.org/customfeeds/feed/all-topics/rss Tech "~IEEE Spectrum (All Topics)"
 +https://spectrum.ieee.org/feeds/topic/computing.rss Tech "~IEEE Spectrum (Computing)"
 +https://spectrum.ieee.org/feeds/topic/telecommunications.rss Tech "~IEEE Spectrum (Telecommunications)"
 +https://rss.slashdot.org/Slashdot/slashdotMain Tech
 +
 +"query:Youtube:tags # \"Youtube\""
 +https://www.youtube.com/feeds/videos.xml?channel_id=UCL4cw2w7kMcTpsqGMtzs02w Youtube music "~Dub Element 🌙"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UCAmEnaaDaIOMFVUBplnNpzg Youtube music "~GODSPEED 音"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UC_waCFCtUJpkkUxftNCbOBA Youtube internet "~l0de Ray Dio 🎙️"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UC5c8xw-NuFFfwjAtGKCjMuQ Youtube music "~Macroblank 💿"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UCJfDnORCik1sVujRUzCXNWw Youtube music "~Statik Selektah's Showoff Radio 📻"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UC4unV5BVmWubfAF0Al_AVdw Youtube geopol "~Syrian Girl 💖"
 +https://www.youtube.com/feeds/videos.xml?channel_id=UCDfoyKdMfe3X4ylfqQM2TZA Youtube internet "~UAE Exotic Falconry & Finance 𓅃"
 +</file>
 +
 +Read the [[https://newsboat.org/releases/2.40/docs/newsboat.html|documentation]] for more information on how to use and configure Newsboat.
 +
 +
 +==== WeeChat ====
 +== Linux, MacOS & BSD ==
 +
 +The [[tools:irc|IRC]] client **WeeChat** has a plugin that allows you to subscribe to RSS feeds. This is super useful if you want to [[diy:identity-management|compartmentalize]] subscriptions related to your IRC friends //(their blogs or Youtube channels, perhaps)// in the same place you chat with them. First, make sure plugin installation is enabled, then install the [[https://weechat.org/scripts/source/rssagg.pl.html|rssagg]] plugin:
 +
 +  /set script.scripts.download_enabled on
 +  /script install rssagg.pl
 +
 +Have WeeChat monitor feeds with:
 +
 +  /rssagg add <feed_name> <feed_URL>
 +
 +Pull up internal documentation:
 +
 +  /help rssagg
 +
 +More WeeChat shortcuts can be found in the [[tools:irc#configuring-weechat|Configuring WeeChat]] guide.
  
-For more information on the differences between RSS and Atom, read this [[https://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared|detailed comparison]]. 
  
 ===== Structure ===== ===== Structure =====
  
-One day, you may have something that you want people to be able to keep up with via feed readers & aggregators. It is really simple to do with both RSS & Atom:+One day, you may have something that you want people to be able to keep up with via feed readers & aggregators. Or you may have some novel use for the technology nobody has thought of yet. Either way, it is really simple to build these types of feeds, and most decent aggregators support both formats. 
  
 ==== RSS 2.0 ==== ==== RSS 2.0 ====
  
-If you're familiar with HTML, RSS looks kinda similar:+If you're familiar with HTML, RSS looks kinda similar. Any feed conforming to this format should be readable by any compliant aggregator:
  
 <file xml rss2example.xml> <file xml rss2example.xml>
Line 51: Line 205:
 </file> </file>
  
-This layout is very simple to understand: Every feed has a '<channel>' with its own metadata tags //(such as '<title>', '<description>', '<link>', etc)//. Entries, or posts, or updates, or whatever you want to call them, are represented by a list of **items**, and each '<item>' has tags for the title, description and link as well.+This layout is very simple to understand: Every feed has a ''<channel>'' with its own metadata tags (such as ''<title>'', ''<description>'', ''<link>'', etc). Entries, or posts, or updates, or whatever you want to call them, are represented by a list of **items**, and each ''<item>'' has tags for the title, description and link as well.
  
-For more information on the available tags you can use, read the [[https://www.rssboard.org/rss-specification|RSS 2.0 specification]]. +If you have a website, some software can automatically detect your RSS feed, if you embed the following tag in the ''<head>'' section of your HTML template:
- +
-If you have a website, some software can automatically detect your RSS feed, if you embed the following tag in the '<head>' section of your HTML template:+
  
   <link rel="alternate" type="application/rss+xml" title="Name of Feed" href="https://domain.com/path/to/feed.xml">   <link rel="alternate" type="application/rss+xml" title="Name of Feed" href="https://domain.com/path/to/feed.xml">
  
-==== Atom ====+However, it is not to be understated that RSS can be used to pipe more things into an aggregator than just updates for web pages. For more information on the available tags you can use, read the [[https://www.rssboard.org/rss-specification|RSS 2.0 specification]] or W3Schools' [[https://www.w3schools.com/xml/xml_rss.asp|RSS Guide]].
  
-{{wst>expand}} 
  
-If you have a website, some software can automatically detect your Atom feed, if you embed the following tag in your '<head>' section:+==== Atom ====
  
-  <link rel="alternate" type="application/atom+xml" title="Name of Feedhref="https://domain.com/path/to/feed.xml"> +**Atom** arose to address some of the perceived shortcomings of RSS, and confusion between the different competing versions of RSS. To some it provides a more "uniformexperience with their newsreadersThere's no right or wrong answer as to which is better, as different developers may find different uses for each.
-===== RSS as a Field Utility =====+
  
-The value of RSS to [[anonymous:anonops|AnonOps]] agents cannot be understated. As many sites have RSS //(or Atom)// feeds, you can centralize the updates of all your favorite sites, authors, streamers, developers, and whatever else, all in one place - saving the need of having to check a bunch of individual websites or even opening your browser.+The basic structure of an Atom feed looks like this, and it loops the same way as an RSS feed:
  
-However, RSS has security benefits as wellBecause it is simple XML text, that means you don't have to worry about potentially dangerous remote media compromising your machine or tracking your movementsDatacenters, ISP's & web server operators can still see your address checked the feed, but it is otherwise much harder to fingerprint you.+<file xml atomexample.xml> 
 +<?xml version="1.0" encoding="utf-8"?> 
 +<feed xmlns="http://www.w3.org/2005/Atom">
  
-In fact, those inclined to [[diy:unplug|unplug]] will recognize other benefits of using aggregators as well especially if beforehand they got their news via social media algorithms & corrupt platforms like Google. With direct subscription to RSS feeds, you will no more have to deal with //"recommended"// news, or [[hazards:ai|AI]] arbitrarily censoring your feed.+  <title>Example Feed</title> 
 +  <updated>2003-12-13T18:30:02Z</updated> 
 +  <author> 
 +    <name>John Doe</name> 
 +  </author> 
 +  <id>http://example.com</id>
  
-Some aggregators (such as [[tools:rss#newsboat-linux-macos-bsd|Newsboat]]) allow you to pipe these updates to other utilities. This lets you do really cool things like use [[tools:yt-dlp|yt-dlp]] to download Youtube videos right from your news reader and open them in a local media player, or track [[https://github.com/humphreyboagart/grackle/commits.atom|GitHub]] project commits and clone them into clean testing environments.+  <entry> 
 +    <title>Atom-Powered Robots Run Amok</title> 
 +    <id>http://example.org/2003/12/13/atom03</id> 
 +    <updated>2003-12-13T18:30:02Z</updated> 
 +    <summary>Some text.</summary> 
 +    <content>The full article text.</content> 
 +  </entry>
  
-With RSS feeds and the right aggregation software, the sky is truly the limit with how to integrate it into your [[:op|operations]].+</feed> 
 +</file>
  
-===== Application-Specific Instructions =====+If you have a website, some software can automatically detect your Atom feed, if you embed the following tag in your ''<head>'' section:
  
-To use any of these applications to subscribe to AMI's [[https://bestpoint.institute/home?do=recent|Recent Changes]] feed, point your feed reader to:\\ +  <link rel="alternate" type="application/atom+xml" title="Name of Feed" href="https://domain.com/path/to/feed.xml">
-[[https://bestpoint.institute/feed.php]] +
- +
- +
-==== Newsboat (Linux, MacOS & BSD) ==== +
- +
-{{wst>expand}} +
- +
- +
-==== WeeChat (Linux, MacOS & BSD) ==== +
- +
-The [[tools:irc|IRC]] client **WeeChat** has a plugin that allows you to subscribe to RSS feeds. Super useful if you want to keep subscriptions related to your IRC friends //(their blogs or Youtube channels, perhaps)// in the same place you chat with them. First, make sure plugin installation is enabled, then install the [[https://weechat.org/scripts/source/rssagg.pl.html|rssagg]] plugin: +
- +
-  /set script.scripts.download_enabled on +
-  /script install rssagg.pl+
  
-Have WeeChat monitor feeds with: +For more information on Atom feeds and the tags you can use, read the [[https://www.ietf.org/rfc/rfc4287.txt|Atom Specification]] or W3C'[[https://validator.w3.org/feed/docs/atom.html|Introduction to Atom]].
- +
-  /rssagg add <feed_name> <feed_URL> +
- +
-Pull up internal documentation: +
- +
-  /help rssagg +
- +
-More WeeChat shortcuts can be found in the [[tools:irc#configuring-weechat|Configuring WeeChat]] guide.+
  
  
 {{tag>Tools}} {{tag>Tools}}
tools/rss.1757446221.txt.gz · Last modified: (external edit)

Find this page online at: https://bestpoint.institute/tools/rss