After upgrading my xUbuntu release from 16.10 to 17.04 my tt-rss kept throwing errors and didn't function properly anymore. I dug around a little in the error logs and found two different errors flooding my logs.

Here I want to describe how I resolved/worked around the errors and got my tt-rss running again. Perhaps other users might encounter these problems, too and find it helpful.

This was a little harder to knack. I ended up replacing the tt-rss-supplied gettext.php with one from https://launchpad.net/php-gettext/trunk/1.0.12 (which seems to be the source for the gettext lib used in tt-rss). The launchpad file only differs in one line (i.e. line 101) to the one supplied by tt-rss ... But this seems to do the trick.

where gettext.php.orig is the tt-rss-supplied file and gettext.php is the file from the launchpad.

I know this is an external library and therefore no support is given for it here. But as my programming skills are very very low I don't exactly know why this works. If anybody can and wants to explain it to me I would be very happy to learn the difference.

the gettext __construct() is a known php change although i thought i replaced all of those.

your first problem and actual tt-rss path makes me think you either have both packaged and git tt-rss installed or using a broken package of some kind (php apc cache of some kind gone crazy? idk really). because regardless of ubuntu or php versions having that constant undeclared on recent git trunk is impossible, it should be at classes/pluginhost.php:54: https://tt-rss.org/gitlab/fox/tt-rss/bl ... st.php#L54

i strongly suggest you kill this abomination and just git clone from scratch at this point, otherwise god only knows what other problems you might run into. keep your config.php and database.

e: given that your problems started after upgrading i hope you didn't just replace package files while keeping it installed, thus causing it to update with your ubuntu version and partially downgrade the files. because holy lol if you did that.

git-cloned to a fresh directory in /var/www/html, rewrote the service and apache config. so far everything seems to be working just fine and I see no new errors in my error.log.

I should've done this back when you switched to rolling release via git. But it seemed so much more comfortable to just replace the files via git and jump onto the rolling release train this way.

BTW: I removed the repository I used to install tt-rss back then the moment I switched to rolling release. So there should've been no interference from system packages anymore. Obviously a clear should have.