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.
Install from AUR: AUR
Set up database
$ 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>
VirtualHost solution is tested and working, users have reported issues adding
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
/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-updated
$ systemctl status tt-rss-updated
to check that it's running fine.