diff options
Diffstat (limited to 'net-nntp/nzbget/nzbget-21.0.ebuild')
-rw-r--r-- | net-nntp/nzbget/nzbget-21.0.ebuild | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/net-nntp/nzbget/nzbget-21.0.ebuild b/net-nntp/nzbget/nzbget-21.0.ebuild new file mode 100644 index 000000000000..86b157a22442 --- /dev/null +++ b/net-nntp/nzbget/nzbget-21.0.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit autotools eutils flag-o-matic user systemd + +MY_PV=${PV/_pre/-r} +MY_P=${PN}-${PV/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrabber supporting .nzb files" +HOMEPAGE="https://nzbget.net/" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${MY_PV}/${MY_P}-src.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~x86" +IUSE="debug gnutls ncurses +parcheck ssl test zlib" + +RDEPEND="dev-libs/libxml2:= + ncurses? ( sys-libs/ncurses:0= ) + ssl? ( + gnutls? ( + net-libs/gnutls:= + dev-libs/nettle:= + ) + !gnutls? ( dev-libs/openssl:0=[-bindist] ) + ) + zlib? ( sys-libs/zlib:= )" +DEPEND="${RDEPEND} + test? ( + || ( + =app-arch/rar-5* + =app-arch/unrar-5* + ) + ) + virtual/pkgconfig" +DOCS=( ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${PN}-${PV/_pre*/-testing} + +check_compiler() { + if [[ ${MERGE_TYPE} != binary ]] && ! test-flag-CXX -std=c++14; then + eerror "${P} requires a C++14-capable compiler. Your current compiler" + eerror "does not seem to support the -std=c++14 option. Please" + eerror "upgrade to gcc-4.9 or an equivalent version supporting C++14." + die "The currently active compiler does not support -std=c++14" + fi +} + +pkg_pretend() { + check_compiler +} + +pkg_setup() { + check_compiler +} + +src_prepare() { + default + eautoreconf + + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + nzbget.conf > nzbgetd.conf || die +} + +src_configure() { + local myconf=( + $(use_enable debug) + $(use_enable ncurses curses) + $(use_enable parcheck) + $(use_enable ssl tls) + $(use_enable zlib gzip) + $(use_enable test tests) + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) + ) + econf "${myconf[@]}" +} + +src_test() { + ./nzbget --tests || die "Tests failed" +} + +src_install() { + default + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd-r1 nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget + systemd_dounit "${FILESDIR}"/nzbget.service +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon, run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} |