From 2b41864cd150b5dd1c5c45478c287ec87676f6e3 Mon Sep 17 00:00:00 2001 From: Louis Sautier Date: Wed, 4 Oct 2017 12:11:42 +0200 Subject: net-nntp/nzbget: improve init script to use a pid file, add depend It seems that the older behaviour did not work with recent openrc versions. The process could not be found when running the stop command. We don't need to override LockFile in the configuration file any more since we set it when we start the daemon. Package-Manager: Portage-2.3.8, Repoman-2.3.3 [swegener: separate init script revision] --- net-nntp/nzbget/files/nzbget.initd-r1 | 28 ++++++ net-nntp/nzbget/nzbget-20.0_pre2108-r1.ebuild | 120 +++++++++++++++++++++++++ net-nntp/nzbget/nzbget-20.0_pre2108.ebuild | 121 -------------------------- 3 files changed, 148 insertions(+), 121 deletions(-) create mode 100644 net-nntp/nzbget/files/nzbget.initd-r1 create mode 100644 net-nntp/nzbget/nzbget-20.0_pre2108-r1.ebuild delete mode 100644 net-nntp/nzbget/nzbget-20.0_pre2108.ebuild (limited to 'net-nntp') diff --git a/net-nntp/nzbget/files/nzbget.initd-r1 b/net-nntp/nzbget/files/nzbget.initd-r1 new file mode 100644 index 000000000000..2a9fae6c32b4 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget.initd-r1 @@ -0,0 +1,28 @@ +#!/sbin/openrc-run +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +extra_started_commands="reload" + +description="A command-line based binary newsgrabber supporting .nzb files" +pidfile=/run/nzbget/nzbget.pid +command=/usr/bin/nzbget +command_args="--configfile \"${NZBGET_CONFIGFILE}\" \ + --daemon --option LockFile=${pidfile} \ + ${NZBGET_OPTS}" +start_stop_daemon_args="--user \"${NZBGET_USER}\" \ + --group \"${NZBGET_GROUP}\"" + +depend() { + need localmount net +} + +start_pre() { + checkpath -d -m 0755 -o "${NZBGET_USER}":"${NZBGET_GROUP}" /run/nzbget +} + +reload() { + ebegin "Reloading ${RC_SVCNAME}" + ${command} --configfile "${NZBGET_CONFIGFILE}" --reload >/dev/null + eend $? +} diff --git a/net-nntp/nzbget/nzbget-20.0_pre2108-r1.ebuild b/net-nntp/nzbget/nzbget-20.0_pre2108-r1.ebuild new file mode 100644 index 000000000000..3e119a13d9e8 --- /dev/null +++ b/net-nntp/nzbget/nzbget-20.0_pre2108-r1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools eutils flag-o-matic user + +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= ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + 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() { + econf \ + $(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) +} + +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 +} + +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 +} diff --git a/net-nntp/nzbget/nzbget-20.0_pre2108.ebuild b/net-nntp/nzbget/nzbget-20.0_pre2108.ebuild deleted file mode 100644 index c6d86f04383d..000000000000 --- a/net-nntp/nzbget/nzbget-20.0_pre2108.ebuild +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit autotools eutils flag-o-matic user - -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= ) - ) - zlib? ( sys-libs/zlib )" -DEPEND="${RDEPEND} - 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:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ - -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() { - econf \ - $(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) -} - -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 nzbget - newconfd "${FILESDIR}"/nzbget.confd nzbget -} - -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 -} -- cgit v1.2.3-65-gdbad