diff options
Diffstat (limited to 'www-apps/tt-rss/tt-rss-20230901.ebuild')
-rw-r--r-- | www-apps/tt-rss/tt-rss-20230901.ebuild | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/www-apps/tt-rss/tt-rss-20230901.ebuild b/www-apps/tt-rss/tt-rss-20230901.ebuild new file mode 100644 index 000000000000..284e1f60ac70 --- /dev/null +++ b/www-apps/tt-rss/tt-rss-20230901.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit webapp + +DESCRIPTION="Tiny Tiny RSS - A web-based news feed (RSS/Atom) aggregator using AJAX" +HOMEPAGE="https://tt-rss.org/" +SRC_URI="https://dev.gentoo.org/~chewi/distfiles/${P}.tar.xz" +LICENSE="GPL-3" +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" +IUSE="+acl daemon gd +mysqli postgres" +REQUIRED_USE="|| ( mysqli postgres )" + +PHP_SLOTS="8.2" +PHP_USE="gd?,mysqli?,postgres?,curl,fileinfo,intl,json(+),pdo,unicode,xml" + +php_rdepend() { + local slot + echo "|| (" + for slot in ${PHP_SLOTS}; do + echo "( + virtual/httpd-php:${slot} + dev-lang/php:${slot}[$1] + )" + done + echo ")" +} + +DEPEND=" + daemon? ( acl? ( sys-apps/acl ) ) +" + +RDEPEND=" + ${DEPEND} + daemon? ( + acct-user/ttrssd + acct-group/ttrssd + $(php_rdepend "${PHP_USE},cli,pcntl") + ) + !daemon? ( + $(php_rdepend "${PHP_USE}") + ) +" + +DEPEND=" + !vhosts? ( ${DEPEND} ) +" + +need_httpd_cgi # From webapp.eclass + +S="${WORKDIR}/${PN}" + +PATCHES=( + "${FILESDIR}"/${PN}-no-chmod.patch +) + +src_install() { + webapp_src_preinst + + insinto "${MY_HTDOCSDIR}" + doins -r * + + # When updating, grep the code for additional DiskCache::instances as they + # cannot be created later due to permissions. + keepdir "${MY_HTDOCSDIR}"/cache/{feed-icons,starred-images} + + local dir + for dir in "${ED}${MY_HTDOCSDIR}"/{cache/*,lock}/; do + webapp_serverowned "${dir#${ED}}" + done + + if use daemon; then + webapp_hook_script "${FILESDIR}"/permissions-r1 + webapp_postinst_txt en "${FILESDIR}"/postinstall-en-with-daemon-r1.txt + + newinitd "${FILESDIR}"/ttrssd.initd-r4 ttrssd + newconfd "${FILESDIR}"/ttrssd.confd-r2 ttrssd + + insinto /etc/logrotate.d + newins "${FILESDIR}"/ttrssd.logrotated-r1 ttrssd + + elog "After upgrading, please restart ttrssd." + else + webapp_postinst_txt en "${FILESDIR}"/postinstall-en.txt + fi + + webapp_src_install +} |