The Best Terminal-Based RSS Feed Reader for Linux

An RSS feed reader is an indispensable tool for most of us. It aggregates feeds from various websites to make it easy for you to keep track of their latest updates.

Depending on how you like these updates served, you may choose a graphical or CLI-based feed reader. While the former offers convenience and a ton of features, the latter brings speed and provides a seamless experience to those who work from the terminal.

Newsboat is one such CLI-based feed aggregator for Linux. Let’s jump in to explore it in more detail.

What Is Newsboat?

Newsboat is a CLI-based RSS / Atom feed reader for Linux. It’s essentially a fork of Newbeuterwhich was once one of the top-rated news aggregators for Linux but isn’t maintained anymore.

Being based on the CLIthe Newsboat reader is accessible from the terminal, and it brings with it a built-in HTML renderer that lets you view text-based content right inside the terminal, eliminating the need to use a web browser.


What Features Does Newsboat Offer?

Newsboat offers the following features on Linux:

  • Built-in HTML renderer
  • Ability to send links and articles to third-party services using bookmarking scripts
  • Option to filter out feed entries based on title, author, etc.
  • Filtering options like tile, author, etc.
  • Ability to import and export feed in OPML
  • Customizable keyboard shortcuts
  • Configurability

How to Install Newsboat on Linux

Newsboat is available on several Linux distros. Depending on the distro you’re running on your machine, follow the instructions below to get Newsboat on your system:

On Ubuntu and its derivatives, open the terminal and run the following command to install Newsboat:

sudo apt install newsboat

If you’re using Fedora, run:

sudo dnf install newsboat

On Arch Linux, install Newsboat with:

sudo pacman -S newsboat

In the case of any other Linux distro, you can install Newsboat using a distro-independent method, like Snap. For this, verify if your computer supports Snap by running this command in a terminal:

snap 

If you get a version number, it indicates that Snap is present and you can proceed with Newsboat installation. Else, follow our Snap guide to install Snap on your system first.

Once done, run the command below to install Newsboat:

sudo snap install newsboat

How to Use Newsboat on Linux

After you’ve installed Newsboat, verify if it’s installed properly. As mentioned already, since Newsboat is a CLI-based program, all your interactions with it will take place over the terminal.

Open the terminal and run this command:

newsboat

It will return an error stating: “no URLs configured“. This error is displayed because we haven’t configured resources in Newsboat yet, so that’s what we need to do first.


1. Adding Feeds or URLs to Newsboat

Newsboat lets you create your own feed in two ways: you can either create a completely new feed from scratch by adding URLs of your favorite websites or import an existing feed from your previous reader.

To create a new feed from scratch, you need to populate the urls file with all your favorite website RSS. First, copy the RSS feed address of the website you want to add to your Newsboat feed.

Next, run the following command in a terminal to open the urls file:

sudo nano ~/.newsboat/urls

If the file isn’t present already, create one inside the Newsboat directory and run:

sudo nano urls

When the urls file is open, paste the URL of the feed you copied earlier to this file. If you want to add more feeds, copy their URLs and paste them here. Hit Ctrl + O to write the changes to the file and save. Press Ctrl + X to exit.

2. Importing Existing Feeds With Newsboat

If you already have a feed with another RSS feed reader, you can import it to Newsboat to save the effort of curating the feed manually. For this, access your account on the feed reader and export your feed in the OPML format. After this, copy this file and move it to the home directory.

Finally, run the following command to import it:

newsboat -i feed.opml

3. Running Newsboat

Once you’ve configured sources in Newsboat, open the terminal and run this command to launch Newsboat:

newsboat

Newsboat will give you a list of all your configured sources. However, these sources aren’t updated right now. To do so, press R., and it will reload all sources. If you want to reload a particular feed, select it using arrow keys, and press r.

Wait for the feed to update.

Once done, select the feed to open and press Enter to open it. Here, you’ll see all the latest stories from that feed. To open and read one, select it and press Enter.

If you wish to view an article in a browser, press orand to save it, hit sselect the location to save and press Enter. When you’re reading an article and wish to view the next story, use the n key.

Similarly, if a post has multiple links, these will be listed below the article with numbers to their left. Type the number next to the link you want to open, and it will open in your default browser.

Lastly, to go back to the preview screen, press q. This also quits Newsboat when you press it on the main Newsboat page. But if you wish to quit the program from anywhere, press Q instead.

Configuring Newsboat on Linux

In its default state, Newsboat works just fine. However, there are certain modifications it offers, which you can use to improve your experience.

You must save all Newsboat configurations to the config file inside Newsboat’s directory structure.

If the file is missing, you need to create it. After this, depending on what you want to accomplish, modify this file accordingly.

Here are a few configuration changes that may interest you:

1. Change the Default Browser

While you can read most of an article’s content in the terminal, there will be times when you’d want to open an article in a web browser. For this reason, configuring your preferred default browser is an essential step.

To do this, add the following line to the config file:

browser "path/to/browser %u"

2. Auto-Refresh Feeds at Launch

Newsboat isn’t configured to auto-refresh the feeds when you launch it. As a result, you need to manually refresh the feed yourself. If you wish to avoid it, add this line to the config file to turn on auto-refresh:

refresh-on-startup yes

Similarly, you may also want to update the feed periodically after some time. For this, add this line:

reload-time desired_time_in_minutes

3. Remove Read Articles

Most RSS readers remove read articles from your feed to reduce clutter. But since Newsboat doesn’t do this automatically, you need to explicitly tell it to no longer display opened feeds. Add the following line to the config file to do this:

show-read-feeds no

Of course, these are just a few useful configurations, and you can check out the Newsboat documentation to configure its behavior as per your preference.

Keep Up With Your Favorite Blogs Without Missing the “Boat”

If you primarily work from the terminal, you need a CLI-based feed aggregator on your PC. A good terminal-based feed reader can help you access updates from all your favorite blogs right inside the terminal, eliminating the need to open another app.

Newsboat is perhaps the best feed reader in this regard. It’s quick, easy to use, configurable, and neatly curates feeds from your favorite websites for easy consumption.

Similar to Newsboat, another interesting take on RSS is the TICKR feed reader, which puts your feeds in a tiny scrollable bar to facilitate content consumption on the go.