Official website for Linux User & Developer
FOLLOW US ON:
Jul
26

Create an online RSS reader

by Rob Zwetsloot

Use Tiny Tiny RSS to create a browser-accessible RSS feed reader located entirely on one central server

Since Google Reader was discontinued a few months ago, uers have been looking for a replacement. While some people have turned to commercial services such as Digg Reader and Feedly, the best solution is to create your own, customisable feed reader hosted entirely on your own computer or home server.

To do this, we turn to Tiny Tiny RSS, an application that has existed for a while now but has gained recent fame as a Google Reader replacement. It requires little more than a server with a LAMP stack, or some decent web space on which you have access to the database.

Tiny Tiny RSS has a few features similar to Google Reader – keyboard shortcuts, the ability to share to different social networks, podcast recognition – and it even has an Android app so that your feeds can truly be accessed easily from anywhere with an internet connection. If you still have your old Google Reader feed download, you can also plug that into Tiny Tiny RSS.

Create a Google Reader-like online news reader
Create a Google Reader-like online news reader

Step-by-step

Step 01 Web account

On your web space or server, make sure you have a user account that can access the space or server via SSH, as we’ll be setting up Tiny Tiny RSS over an SSH connection at first. Usually, you’ll be able to then log in at the terminal with:

$ ssh username@webdomain.com

…by entering the relevant password.

Step 02 MySQl database

Some web hosts have their own database creation tools, but if you’re managing it yourself you’ll have to create it in the command line. Create our new database with:

$ mysql -u root -p -h mysqlhost.mydomain.com CREATE DATABASE mydomain_ttrss

…replacing mysqlhost and mydomain with your relevant information.

Step 03 MySQl user

You’ll also need a user connected to the database. Most GUI tools will do this automatically; otherwise set it up with:

$ mysql -u root -p -h mysqlhost.mydomain. com GRANT alter,create,delete,drop,insert,update,select ON mydomain_ttrss.* TO [username] IDENTIFIED BY [password]

Step 04 Get Tiny Tiny RSS

Download the latest tarball of Tiny Tiny RSS from the feed reader’s website, then make sure to extract it. We’ll use specific files from here to finish the database creation, then set up the rest of Tiny Tiny RSS with it.

Step 05 Database setup

Find the MySQL sql file in the scheme folder of files you just extracted. If you have phpMyAdmin or some other graphical MySQL interface, navigate there and import that file to the database we created. Click on Go once you’ve selected the file, and wait.

Step 06 Database ClI

You can alternatively upload the scheme using SSH – cd to the folder, log in via SSH and then use this command:

mysql -u [username] -D mydomain_ttrss -p -h mysqlhost.mydomain.com < schema/ttrss_schema_mysql.sql

You’ll be prompted for the user’s password.

Step 07 Copy configure

We’ll now need to edit the configuration file that Tiny Tiny RSS uses to connect to the database and other services on your website, config.php-dist. Before we start messing around with it, make sure to create a copy so you can restore it and/or start again. You can find it in the top level of the directory we extracted.

Step 08 Configuration

Rename the copied file to be config.php and then open it in a text editor. Edit the following lines with the relevant information:

define(‘DB_TYPE’, “mysql”); define(‘DB_HOST’, “mysqlhost.mydomain. com”);
define(‘DB_USER’, “[username]”); define(‘DB_NAME’, “mydomain_ttrss”); define(‘DB_PASS’, “[password]”); //define(‘DB_PORT’, ‘’);

Step 09 Set URl

Now set an URL that you’ll be installing Tiny Tiny RSS to. Scroll down to and locate:

define(‘SELF_URL_PATH’, ‘http://example. org/tt-rss/’);

Change example.org to your domain name, and you can either keep tt-rss or choose something else – this is where you’re going to be installing Tiny Tiny RSS.

Step 10 Downloading

After you’ve saved the file, go back in the terminal and log into your web space. Create the tt-rss folder with:

$ mkdir tt-rss

Move into the directory, then download the latest version of Tiny Tiny RSS with:

$ wget https://github.com/gothfox/Tiny-Tiny-RSS/archive/1.9.tar.gz

Step 11 Extracting

Extract the files into the directory using the following:

$ tar -zxvf 1.9.tar.gz

Make sure that all the files extracted are moved from the folder created into the tt-rss parent folder, so that when we’re navigating there, it opens the right files.

Step 12 Updating

Move the config file we created to your web space via FTP or a download method, or just edit the config file the same way we did earlier. You can also use a graphical FTP program to move the files to the space without having to do anything in the terminal.

Step 13 Log in

Now we can log in. Go to the URL we specified and you’ll see the login screen – for now, this will be admin and password. Once logged in, go to Actions>Preferences>Personal Data/Authentication and change the password.

Step 14 Import feeds

If you still have the Takeout data from Google Reader, you can now import this into Tiny Tiny RSS. Go back to the Actions menu and click Feeds, then OPML. Click ‘Choose file’, navigate to your subscriptions.xml and then click Import. It will keep your folder structure if you had one.

Step 15 Reading

Be aware that Tiny Tiny RSS won’t work like Google Reader right away, but you can exit the preferences to see how the rough layout is. Don’t be concerned if your feeds don’t show anything in them – we will be fixing that in a bit. For now, if you double-click on the individual feeds in your folders, you can load up some of the latest entries. You can also start editing the way feed items are displayed, with oldest or newest first and whether or not to show read items.

Step 16 Easy updating

There are two ways to get Tiny Tiny RSS to update – the easiest is to go back into the config.php file and locate the ‘SIMPLE_UPDATE_MODE’ line. Change it to true and it will automatically update your feeds while you’re browsing your feed reader

Step 17 Better updating

If you’re running Tiny Tiny RSS on your own server, you can have the update daemons run in the background so that it’s always up to date when you log in. For single processes, access the PHP CLI and use:

php ./update.php daemon

For multi-process use:

php ./update_daemon2.php

Step 18 View

By default, all the articles will be in the expanded view – a nightmare for properly navigating your feeds. To change it so that you can click and navigate between feed items, go to Preferences and uncheck ‘Automatically expand articles in combined mode’.

Step 19 Keyboard shortcuts

The keyboard shortcuts are slightly different in Tiny Tiny RSS. For going between articles, arrow-up and down or N and P are used – J and K are now used to go between feeds. You can view the full list by going to Actions, then ‘Keyboard shortcuts help’.

Step 20 Add feeds

Go to Actions>Subscribe to Feed and paste an URL into the field. You can then assign it to one of your categories/folders, then hit Subscribe. If you want to move it to another category, go to Preferences>Feeds and then right-click on the necessary subscription.

Step 21 Rearrange categories

It may seem from the main interface that you can’t rearrange your folders to an order you prefer. However, go back to Preferences> Feeds and you can drag and drop them to your requirements. You can even move feeds between categories this way.

Step 22 Android

If you used to read your feeds on the go with Google Reader on Android, you’ll be glad to know there’s an Android app for Tiny Tiny RSS. It will cost just over £1 to use it after seven days, but it’s a great way to keep up with your feeds on mobile, and easily logs into your new RSS reader.

Step 23 Updating

Like all good software, Tiny Tiny RSS is undergoing upgrades and updates all the time. You can update the software without reinstalling, though – simply go to Preferences and look for the Update Tiny Tiny RSS tab. It will inform you of any available updates.

Step 24 Keep tweaking

There’s a lot of other little tweaks you can do with Tiny Tiny RSS, such as the update interval, the length of time to store articles, what’s considered a fresh item, etc. Go through the preferences and make Tiny Tiny RSS the best reader for your own needs.

  • Tell a Friend
  • Follow our Twitter to find out about all the latest Linux news, reviews, previews, interviews, features and a whole more.