blob: 7177629f10b26f2fe8799cc1b8333076bd6d5632 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# 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"
RESTRICT="!test? ( test )"
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
}
|