diff options
-rw-r--r-- | net-nntp/nzbget/Manifest | 1 | ||||
-rw-r--r-- | net-nntp/nzbget/files/nzbget.service | 18 | ||||
-rw-r--r-- | net-nntp/nzbget/nzbget-21.0_pre2220.ebuild | 129 |
3 files changed, 148 insertions, 0 deletions
diff --git a/net-nntp/nzbget/Manifest b/net-nntp/nzbget/Manifest index 28f8b04a14d2..e8c20f8b3ee4 100644 --- a/net-nntp/nzbget/Manifest +++ b/net-nntp/nzbget/Manifest @@ -2,3 +2,4 @@ DIST nzbget-14.1.tar.gz 1332334 BLAKE2B cbb633993ffd4c7a9cf6556ef833838296bb4d64 DIST nzbget-19.1.tar.gz 1809849 BLAKE2B 30740c22e06f9b794485bb5c0c28cd95f9953863203a9055bf453a9adfe1e58adcf69dcddc3640c13aefb90bb26cd444070af2d9f0f6fadee676af453cdb23c2 SHA512 3ba7cd7f7fec28e29129be0a1ca5879a0593bc54be49e3776e84eeb7804377eec47106aa2371b31dec7d9152301d68b199ce9e66db714195defc8e15ef636532 DIST nzbget-20.0.tar.gz 1925665 BLAKE2B 4c4e93bb0fa170b4b6433cbb7d27f3fa67ed033c462711b19e179f42c18dfed044c937e6a7ce4b08a620f4d7af7d3ec9245de16f15d4db8005d3d8dc4f8f46d4 SHA512 8b0fe8ea41b64be9a2f624ef0fa2a8b8987bee412db68a0e8f1b607ce6be7bfd03f60ecc5e49807f4c726e136bc5a355c44559b215fea2bd290c2eb62a0b5927 DIST nzbget-20.0_pre2176.tar.gz 1923841 BLAKE2B ba6ba301013b160f4dcaf21257dc2c1ceac3c64c645bde556ed45e8dca5011b8d9b9ce76fbaf42b78f6400b530c4c0baa94ad34fe09daa86619506dd76333ca2 SHA512 7be68999cc284a53100c0892f7558e3e1d2ac7d83019c933ae0596de56a8c9bec78571aaf34983103a30563dcdd6387987f7a13404e0ffac48007e0d44efa525 +DIST nzbget-21.0_pre2220.tar.gz 1985190 BLAKE2B e19e1c997615f61895a26ca24ff1eb66e6caf99cecf3f3b0eccc2c0f67ebc61c20cdd24d869d8c2a1d2f0d5c53f5222cc3b151720e3a6d1398507fd252586cf5 SHA512 73cd24628ab224d62b4619ca6b9014edb08ac14f02850def3123db640c785fd8836ba4ee4be40a0cf918ba6c25bf19683e67d05aaa0f96c71ad23b6a30284fa0 diff --git a/net-nntp/nzbget/files/nzbget.service b/net-nntp/nzbget/files/nzbget.service new file mode 100644 index 000000000000..031307e3efa4 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget.service @@ -0,0 +1,18 @@ +[Unit] +Description=NZBGet binary newsgrabber +Documentation=https://nzbget.net/Documentation +After=network.target + +[Service] +User=nzbget +Group=nzbget +Type=forking +PIDFile=/run/nzbget/nzbget.pid +RuntimeDirectory=nzbget +RuntimeDirectoryMode=0755 +ExecStart=/usr/bin/nzbget -c /etc/nzbgetd.conf -o LockFile=/run/nzbget/nzbget.pid -D +ExecStop=/usr/bin/nzbget -c /etc/nzbgetd.conf -Q +ExecReload=/usr/bin/nzbget -c /etc/nzbgetd.conf -O + +[Install] +WantedBy=multi-user.target diff --git a/net-nntp/nzbget/nzbget-21.0_pre2220.ebuild b/net-nntp/nzbget/nzbget-21.0_pre2220.ebuild new file mode 100644 index 000000000000..59e359e545b3 --- /dev/null +++ b/net-nntp/nzbget/nzbget-21.0_pre2220.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2018 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 +} |