- Home
- Packages
- Forums
- Wiki
- Bugs
- AUR
- Download

# TT-RSS

From ArchWiki

Tiny Tiny RSS is an open source web-based news feed (RSS/Atom) aggregator, designed to allow you to read news from any location, while feeling as close to a real desktop application as possible.

## Installation

Install tt-rss from the official repositories.

### Set up database

You'll need to set up a database, either MySQL or postgresql. Create a user and database, e.g. with mysql:

    $ mysql -p -u root
    mysql> CREATE USER 'ttrss'@'localhost' IDENTIFIED BY 'somepassword';
    mysql> CREATE DATABASE ttrss;
    mysql> GRANT ALL PRIVILEGES ON ttrss.* TO "ttrss"@"localhost" IDENTIFIED BY 'somepassword';

Then create the initial tables:

    mysql --user=ttrss --host=localhost --password=somepassword ttrss < /usr/share/webapps/tt-rss/schema/ttrss_schema_mysql.sql

### Set up web server and php

tt-rss requires that the value of open_basedir is "none". You can set this /etc/php/php.ini (then `sudo systemctl restart httpd`).

tt-rss is installed into `/usr/share/webapps/tt-rss/`; you'll need to make this directory available from your web server. The simplest way is to do

    # ln -s /usr/share/webapps/tt-rss /srv/http/tt-rss

#### Custom php.ini and Closing basedirs for non-tt-rss webapps

[note: update_daemon2.php has been changed and no longer passes on the php.ini config specified by -c. This will not work until that is fixed.]

If you want the php open_basedir setting to only apply to the tt-rss location, you can create a custom php config file for tt-rss. Copy your `/etc/php/php.ini` file to `/etc/webapps/tt-rss/php.ini` and edit open_basedir and any other options specific to tt-rss. Then add to your apache config:

    <Location /tt-rss/>
          PHPINIDir /etc/webapps/tt-rss
    </Location>

    or your apache vitural host config:

    <VirtualHost *:80>
          ...
          PHPINIDir /etc/webapps/tt-rss
    </VirtualHost>

Note: the `VirtualHost` solution is tested and working, users have reported issues adding `PHPINIDir` to `Location`.

However, this will make the update daemon (see below) fail. You can work around this by passing a custom `php.ini` file to php and using the `update_daemon2.php` updater (update.php starts additional php instances and does not pass on the php config file). The following systemd unit file will accomplish that (replace "mysqld.service" with your appropriate SQL service):

     [Unit]
     Description=Tiny tiny rss feed updater daemon
     After=network.target mysqld.service

     [Service]
     ExecStart=/usr/bin/php -c /etc/webapps/tt-rss/php.ini /usr/share/webapps/tt-rss/update_daemon2.php --quiet
     User=http
     StandardOutput=syslog

     [Install]
     WantedBy=multi-user.target

Finally, in your (custom or system) `php.ini` file you'll need to enable several extensions. Uncomment the following:

     extension=curl.so
     extension=iconv.so
     extension=mysql.so
     extension=posix.so
     extension=soap.so

### Set up config.php

Copy `/etc/webapps/tt-rss/config.php-dist` to `/etc/webapps/tt-rss/config.php`. Fill in your database server info and other necessary parameters. Make sure your web-server is allowed to read `/etc/webapps/tt-rss/config.php` or else you will just see a blank page.

### Set up an update daemon

See http://tt-rss.org/redmine/projects/tt-rss/wiki/UpdatingFeeds – but you should be able to simply

    # systemctl enable tt-rss

Do

    $ systemctl status tt-rss

to check that it's running fine.

Retrieved from "https://wiki.archlinux.org/index.php?title=TT-RSS&oldid=263061"
Category:

- Internet Applications

## Navigation menu