An RSS feed reader is an indispensable tool for most of us. It combines feeds from various websites so you can easily keep track of their latest updates.
Depending on how you like these updates, you can choose either GUI or CLI feed reader. While the former offers convenience and many features, the latter provides speed and convenience for those who work from the terminal.
Newsboat is one such command line based feed aggregator for Linux. Let's start studying it in more detail.
What is Newsboat?
Newsboat is a CLI-based RSS/Atom feed reader for Linux. It is essentially a fork of Newbeuter, which was once one of the most popular Linux news aggregators but is no longer supported.
Based on the CLI, the Newsboat reader is accessible from the terminal and includes a built-in HTML renderer that allows you to view text content right in the terminal, eliminating the need to use a web browser.
What features does Newsboat offer?
Newsboat offers the following options for Linux:
- Built-in HTML renderer
- Ability to send links and articles to third-party services using bookmark scripts
- Ability to filter feed entries by title, author, etc.
- Filtering options like tile, author, etc.
- Ability to import and export feed in OPML
- Custom keyboard shortcuts
- Configurability
How to Install Newsboat on Linux
Newsboat is available on several Linux distributions. Depending on which distribution you are running on your computer, follow the instructions below to install Newsboat on your system:
On Ubuntu and its derivatives, open a terminal and run the following command to install Newsboat:
sudo apt install newsboat
If you are using Fedora, run:
sudo dnf install newsboat
On Arch Linux, install Newsboat with:
sudo pacman -S newsboat
For any other Linux distribution, you can install Newsboat using a distribution-independent method such as Snap. To do this, check if your computer supports Snap by running this command in the terminal:
If you get a version number, that means Snap is present and you can proceed with installing Newsboat. Otherwise, follow our Snap guide to install Snap on your system first.
After that, run the command below to install Newsboat:
sudo snap install newsboat
How to use Newsboat on Linux
After installing Newsboat, check if it is installed correctly. Since Newsboat is a command line based program, all your interactions with it will take place through the terminal.
Open a terminal and run this command:
It will return an error message: "URLs not configured". This error is showing because we haven't configured the resources in Newsboat yet, so this is what we need to do first.
1. Add Feeds or URLs to the News Feed
Newsboat allows you to create your own feed in two ways: you can either create a brand new feed from scratch by adding the URLs of your favorite websites, or you can import an existing feed from your previous reader.
To create a new feed from scratch, you need to populate the URL file with all of your favorite RSS websites. First, copy the RSS feed address of the website you want to add to your Newsboat feed.
Then run the following command in a terminal to open the URL file:
sudo nano ~/.newsboat/urls
If the file doesn't already exist, create it in the Newsboat directory and run:
sudo nano urls
Once the URL file is open, paste the feed URL you copied earlier into this file. If you want to add more channels, please copy their URLs and paste them here. Press Ctrl + O to write changes to the file and save. Press Ctrl + X to exit.
2. Import existing feeds with Newsboat
If you already have a feed with another RSS feed reader, you can import it into Newsboat to save the effort of manually curating the feed. To do this, log in to your feed reader account and export your feed in OPML format. Then copy this file and move it to your home directory.
Finally, run the following command to import it:
3. News ticker
Once you've set up sources in Newsboat, open a terminal and run this command to launch Newsboat:
Newsboat will give you a list of all your configured sources. However, these sources are not updated right now. To do this, press R and all sources will be reloaded. If you want to reload a specific feed, select it using the arrow keys and press r.
Wait for the feed to update.
After that, select the feed you want to open and press Enter to open it. Here you will see all the latest stories from this feed. To open and read it, select it and press Enter.
If you want to view the article in a browser, press o, or to save it, press s, select a save location, and press Enter. When you are reading an article and want to view the next one, use the n key.
Similarly, if there are multiple links in a post, they will be listed under the article with numbers to the left of them. Enter the number next to the link you want to open and it will open in your default browser.
Finally, to return to the preview screen, press q. This will also close the news feed when you click it on the main page of the news feed. But if you want to exit the program from anywhere, press Q instead.
Configuring a Linux News Service
In the default state, Newsboat works fine. However, it does offer certain modifications that you can use to enhance your experience.
You must store all Newsboat configurations in a configuration file inside the Newsboat directory structure.
If the file does not exist, you must create it. After that, depending on what you want to achieve, modify this file accordingly.
Here are a few configuration changes you might be interested in:
1. Change your default browser
While you can read most of the content of an article in the terminal, there are times when you'll want to open an article in a web browser. For this reason, setting your preferred default browser is an important step.
To do this, add the following line to the configuration file:
2. Automatically update channels on startup
Newsboat is not configured to automatically update feeds on startup. As a result, you need to manually update the feed yourself. If you want to avoid this, add this line to your config file to enable automatic updates:
refresh-on-startup yes
Similarly, you can also refresh the feed periodically after a while. To do this, add this line:
reload-time desired_time_in_minutes
3. Delete Read Articles
Most RSS readers remove read articles from your feed to reduce clutter. But since Newsboat doesn't do this automatically, you'll need to explicitly tell it not to display open channels anymore. To do this, add the following line to the configuration file:
Of course, these are just a few useful configurations, and you can check out the Newsboat documentation to customize its behavior to suit your preferences.
Stay up to date with your favorite blogs
If you mainly 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 in the terminal without having to open another application.
Newsboat is arguably the best tape reader in this regard. It's fast, easy to use, highly customizable, and neatly selects feeds from your favorite websites for a seamless experience.
Similar to Newsboat, another interesting approach to RSS is the TICKR feed reader, which puts your feeds in a tiny scrollable bar to make it easier to consume content on the go.