Installing an RSS Reader

When it comes to following popular blogs or websites, you often have a number of options for how you can receive updates when they add new articles or content to their sites. You can firstly revisit the site on a regular basis, to see if anything has change. You can subscribe to a newsletter, and have an email come into your already overloaded email inbox. A third option is to subscribe to an RSS feed, in which the articles come to you through an RSS news reader, an excellent alternative to emails.

A number of years ago, Google used to run an excellent and very popular RSS feed reader called Google Reader. In their push to promote and drive people towards Google Plus though, they closed down this service. People scrambled around for an alternative, with Feedly coming out as the big winner from it all. But if one online service can close down, it is just another reminder that your online routine and habits are at the mercy of the service provider and these services can be pulled from you at any time.

A good alternative is to use a self hosted RSS reader, and seeing as we have the server for it, it is another excellent way to make use of it. As ever, there are a number of options out there. There was one program in particular though which I enjoyed above others in terms of its interface design and ease of use, called Fresh RSS, and this is the one we are going to cover here.

Downloading Fresh RSS

The link for the Fresh RSS installer is shown prominently on the homepage (mirror)so go ahead and right click and copy the link address. SSH onto your server and move to your web directory. Use wget to download it and then unzip it.

cd /var/www/html

This will create a directory called FreshRSS-master. I chose to rename this to something a little easier to type into the web browser, like freshrss:

mv FreshRSS-master freshrss

Create a New Database

The first step is to create a new database and database user. Log onto your MySQL database and set this up. Take note of the DB name, username and password for the next steps.


There are four steps to installing this web application. With a web browser, navigate to the IP address of your server and to the freshrss sub-directory, i.e. http:///freshrss. The first step is to choose/confirm the language, in this case I’m going to stick with English.

In the second step, Fresh RSS runs some checks for required packages and of the permissions of the web directory, and reports any errors to you. Always take the time to read the error messages. In the case below, it reported that a needed software library (php-curl) is missing and permissions are not set correctly.

For missing libraries, the solution is simply to install them. Luckily Fresh RSS gave us the name of the package to install (php-curl). If you are ever in doubt as to what package exactly to install, use the ‘sudo apt install’ command with the tab key to see what options are available. If the tab selection gives you too many possibilities, try entering a few more letters of a package name you think might work to see what comes up.

In this case, the package I need is php-curl. Install this and restart the Apache web server for it to take effect:

sudo apt install php-curl
sudo service apache2 restart

For the permissions issue, Fresh RSS is telling you specifically which directories the web server user needs to have write permissions to. If you downloaded and unzipped the installer zip under your own username, this (your username) is the owner of the freshrss directory. You need to reassign ownership of these directories to the webserver user, called www-data.

sudo chown –R www-data /var/www/html/freshrss

Once you have addressed your items, refresh the page and click Go to the Next Step

On the third step, set up your default user. Make up a username and password and enter them. Leave the Authentication Method at Web Form.

For the fourth step in the setup, enter the details of the database, database user and password you set up earlier.

Congratulations, your install should now be complete. You should be brought to a login screen to login in and begin setting up your RSS feeds.

Using FreshRSS

When you log into FreshRSS, the central, main, window shows the content of the news feeds you are subscribed to, with some pre-subscribed feeds. We will be deleting these shortly. Above the feeds are a series of buttons allowing you to change how feeds are displayed.

Over on the left are buttons to manage your subscriptions. If you click the star icon beside any newsfeeds you like in particular, it gets added to your Favourites in the left hand menu.

On the top right corner on the screen is a cog icon which brings you to the Settings menu.

Lets add a new RSS feed.

Removing RSS Feeds

Click the Subscriptions Management button on the left hand side. There are three menus in the next screen: Subscriptions Management, Import/Export, and Subscriptions Tools. Ensure you are in Subscriptions Management.

Here you can see the two default subscriptions which came subscribed when you installed FreshRSS, FreshRSS@Github and Lets delete them.

As you hover your mouse over the two subscriptions, a little cog icon appears beside each one. Click this cog, and click Remove in the menu that pops out.

Adding New RSS Feeds

Check that the website, etc, you want to follow offers RSS feeds. For this example I am going to add a feed from Rapid7, a security company that offers feeds for its blog entries. Find the link for their feed, for our example, and copy it.

Back in FreshRSS, click into Subscriptions Management. There is a text bar for Adding a RSS feed. Paste the link you have copied into it and click the + button. If the link is wrong, nothing will happen. If the link is correct, a menu will pop out allowing you to configure your feed and finally click Submit to add it.

Go back to your home screen (click the FreshRSS logo in the tope left corner) to see the articles appearing in your main screen.

Additional Tricks

By default, you have to log in to FreshRSS in order to read newsfeeds or blog updates you have subscribed to. If you want to be able to do so without logging in, i.e. anonymously, you can configure this in the Authentication page of the Settings menu.

Note, this is allowing anyone who connects to your FreshRSS homepage to read the newsfeeds you have subscribed to. These articles are public information anyway, so what you are allowing here is for anyone to see the combination and selection of newsfeeds you have subscribed to.

Click the cog icon on the top right and scroll down to Authentication. Tick the box that says ‘Allow anonymous reading of the articles of the default user’.

Now when you logout (Settings > Logout) you can still read your articles from your homescreen, and then login to add/remove feeds.