Get Your Own Self hosted RSS Reader With Tiny Tiny RSS

Why Self-Host an RSS Reader?

In an era dominated by algorithm-driven social media, having a self-hosted RSS reader offers a refreshing way to curate and consume content without the noise. Tiny Tiny RSS (tt-rss) is a powerful, free, and open-source solution that allows you to take full control of your news feeds and protect your privacy.

Features of Tiny Tiny RSS

Tiny Tiny RSS is packed with features that make it an ideal choice for those looking to self-host their RSS feeds:

  • Feed Aggregation and Syndication: tt-rss supports both RSS and Atom feeds, allowing you to aggregate content from various sources into one interface.
  • Keyboard Shortcuts: Enhance your reading experience with customizable keyboard shortcuts.
  • OPML Import/Export: Easily import and export your feed lists using OPML, making it simple to switch between different RSS readers.
  • Sharing and Plugins: Share content via various social sites, export RSS feeds, and use plugins to embed full article content.
  • Deduplication and Filtering: Use perceptual hashing for images and flexible article filtering to keep your feeds organized.
  • Podcasts and JSON API: Support for podcasts and a JSON API for further customization.
  • Android Client: Access your feeds on the go with the tt-rss Android client.

Setting Up Tiny Tiny RSS

Prerequisites

To set up tt-rss, you will need:

  • A Server: You can use a Virtual Private Server (VPS) or a physical server. For ease of setup, using Docker is highly recommended.
  • Docker Installation: Ensure Docker and Docker Compose are installed on your server. Here’s a step-by-step guide for Ubuntu:
    1. Fetch the Docker Package Signing Key:
      sudo install -m 0755 -d /etc/apt/keyrings
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      sudo chmod a+r /etc/apt/keyrings/docker.gpg
      
    2. Create a New Package Repository File:
      sudo nano /etc/apt/sources.list.d/docker.list
      

      Paste the following inside:

      deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu stable
      
    3. Install Docker:
      sudo apt update
      sudo apt install git docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin
      

Obtaining and Setting Up Tiny Tiny RSS

  1. Clone the Git Repository:
    git clone https://git.tt-rss.org/fox/tt-rss.git
    cd tt-rss
    
  2. Set Up the Database: You can use MariaDB or any other SQL database. Here’s an example for MariaDB:
    mysql -u root -p
    create database ttrss;
    grant all on ttrss.* to 'ttrss' identified by 'MyPassword';
    exit
    
  3. Configure tt-rss: Edit the config.php file to include your database credentials and other settings.

Running tt-rss with Docker

If you prefer using Docker, you can create a Docker Compose file to simplify the setup:

version: '3'
services:
  tt-rss:
    image: tt-rss/tt-rss
    restart: always
    ports:
      - "8080:80"
    environment:
      - DB_TYPE=mysql
      - DB_HOST=your-mysql-host
      - DB_USER=ttrss
      - DB_NAME=ttrss
      - DB_PASS=MyPassword
    volumes:
      - ./config.php:/var/www/config.php

Start the service with:

docker-compose up -d

Using Your Tiny Tiny RSS Instance

  1. Access the Web Interface: Navigate to your server's URL (e.g., http://your-server-ip:8080) and log in with the default credentials (admin and password). Change the password immediately for security.
  2. Subscribe to Feeds: Click the “Actions” button, then select “Subscribe to feed…” and paste the RSS link you want to subscribe to.
  3. Organize Feeds: Create categories to organize your feeds. Go to “Preferences,” then “Feeds,” and click “Categories” to add a new category.
  4. Customize Your View: Adjust the view pane layout and article organization to suit your preferences.

Automating Feed Updates

To ensure your feeds are updated regularly, you can set up a systemd service to run the update daemon:

sudo nano /etc/systemd/system/ttrss-updater.service

Paste the following:

[Unit]
Description=ttrss_backend
After=network.target mysql.service

[Service]
User=apache
ExecStart=/var/www/html/update_daemon2.php

[Install]
WantedBy=multi-user.target

Enable and start the service:

sudo systemctl enable --now ttrss-updater

Additional Tips and Customizations

  • Plugins and Themes: Enhance your tt-rss experience with various plugins and themes available. For example, you can use plugins to inline full article content or integrate with other services.
  • Mobile Access: Use mobile apps like Fiery Feeds on iOS or the tt-rss Android client to access your feeds on the go.
  • Security: Ensure you use strong passwords and consider setting up SSL certificates to secure your tt-rss instance.

By following these steps, you can set up a robust and customizable RSS reader that meets your specific needs, giving you full control over your news feeds and protecting your privacy.

Leave a Reply

Your email address will not be published. Required fields are marked *