Tiny Tiny RSS v22.05 git upgrade + Debian PHP8.0 upgrade

Tiny Tiny RSS je přibližne od cca roku 2005 jedna z nejpopulárnějších geek čteček kanálů pomocí RSS protokolu. Jedná se o webovou aplikaci, která musí být nainstalována na obvykle Linux webovém serveru. Od roku 2020 je k dispozi i jako Docker image, to znamená lze ji instalovat všude kde běží Docker server to znamená bezrpoblémovou dostupnost i pro operační systémy Windows, MacOS.

Po oznámení společnosti Google, že ukončí provoz čtečky Google Reader, byla čtečka Tiny Tiny RSS široce hodnocena jako její možná náhrada ve významných technologických blozích a online časopisech. Recenzenti chválili jeho všestrannost, ale kritizovali jeho výkon a proces instalace.

Debian 10 / 11 upgrade na PHP 8.x

apt install -y lsb-release ca-certificates apt-transport-https software-properties-common
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/sury-php.list
wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add -
apt update
apt install php8.0

Balíčky PHP8 pro Tiny Tiny RSS

php -m
php -v
apt install php8.0 php8.0-cli php8.0-curl php8.0-mbstring php8.0-json php8.0-intl php8.0-gd php8.0-pgsql php8.0-xml php8.0-opcache php-apcu

Záloha stávající složky, instalace aktuální verze Tiny Tiny RSS, obnova šablon vzhledu a konfigurace ze zálohy

mv /var/www/tiny.folder /var/backup/tiny.folder
git clone https://git.tt-rss.org/fox/tt-rss.git tt-rss
mv tt-rss tiny.new
cp /var/www/html/tiny.backup/classes/config.php /var/www/tiny.local/classes/
cp -a /var/www/html/tiny.backup/themes.local/. /var/www/tiny.local/themes.local/
rm -r /var/www/html/tiny.backup/
chown -R www-data:www-data /var/www/tiny.local/

Konfigurace Tiny Tiny RSS

nano /var/www/tiny.local/classes/config.php

Používáte i /html/ složku? Pak je samozřejmě konfigurační soubor v cestě

nano /var/www/html/tiny.local/classes/config.php
        private const _DEFAULTS = [
                Config::DB_TYPE => [ "pgsql",                                                   Config::T_STRING ],
                Config::DB_HOST => [ "localhost",                                          Config::T_STRING ],
                Config::DB_USER => [ "user",                                                    Config::T_STRING ],
                Config::DB_NAME => [ "databaze",                                          Config::T_STRING ],
                Config::DB_PASS => [ "heslo",                                                   Config::T_STRING ],
                Config::DB_PORT => [ "5432",                                                   Config::T_STRING ],
                Config::MYSQL_CHARSET => [ "UTF8",                                    Config::T_STRING ],
                Config::SELF_URL_PATH => [ "http://tiny.new",                Config::T_STRING ],

Úprava nginx konfigurace pro použití aktualizované PHP verze 8.0

nano /etc/nginx/sites-available/tiny.local.conf
    location ~ \.php$ {
        try_files $uri = 404; #Prevents autofixing of path which could be used for exploit
        include /etc/nginx/fastcgi_params;
        fastcgi_buffering off;
        fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
    }

}

Databáze pgSQL

Základní příkazy pro práci s pgSQL..

Přihlášení do databáze

psql -d databáze -U uživatel -W

S pgSQL lze pracovat i přepnutím na uživatele postgres

sudo -u postgres -i
psql
\l

Výpis tabulek databáze

postgres=# \l

Seznam databází
       Jméno    | Vlastník | Kódování |  Collation  |    CType    |   Přístupová práva
-----------+----------+----------+-------------+-------------+-----------------------
 postgres      | postgres | UTF8    | cs_CZ.UTF-8 | cs_CZ.UTF-8 |
 template0  | postgres  | UTF8    | cs_CZ.UTF-8 | cs_CZ.UTF-8 | =c/postgres          +
           |            |          |             |           | postgres=CTc/postgres
 template1  | postgres | UTF8     | cs_CZ.UTF-8 | cs_CZ.UTF-8 | =c/postgres          +
           |            |          |             |             | postgres=CTc/postgres
 ttrss              | www-data  | UTF8 | cs_CZ.UTF-8 | cs_CZ.UTF-8 |
(4 řádky)

Velikost tabulky

postgres=# SELECT pg_size_pretty( pg_database_size('ttrss') );

Vytvořit uživatele a databázi

CREATE USER "uživatel" WITH PASSWORD 'heslo';
CREATE DATABASE ttrss WITH OWNER "uživatel";

Odstranit databázi

DROP DATABASE ttrss;

Vyprázdnit databázi

TRUNCATE TABLE ttrss;

Tiny Tiny RSS PHP8.1

Nefunguje. Není podporována ORM třída PHP

Užitečné odkazy

Domovská stránka TT RSS.
Home Assistant s Tiny Tiny RSS fídem.

ICTIS.CZ