Gentoo Archives: gentoo-commits

From: Sven Wegener <swegener@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/pdns/
Date: Thu, 08 Aug 2019 14:26:42
Message-Id: 1565274391.92ec1adb73fb53a6ca10a35e586267995e2018f2.swegener@gentoo
1 commit: 92ec1adb73fb53a6ca10a35e586267995e2018f2
2 Author: Sven Wegener <swegener <AT> gentoo <DOT> org>
3 AuthorDate: Thu Aug 8 14:25:44 2019 +0000
4 Commit: Sven Wegener <swegener <AT> gentoo <DOT> org>
5 CommitDate: Thu Aug 8 14:26:31 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92ec1adb
7
8 net-dns/pdns: Version bump to 4.1.13
9
10 Package-Manager: Portage-2.3.69, Repoman-2.3.16
11 Signed-off-by: Sven Wegener <swegener <AT> gentoo.org>
12
13 net-dns/pdns/Manifest | 1 +
14 net-dns/pdns/pdns-4.1.13.ebuild | 174 ++++++++++++++++++++++++++++++++++++++++
15 2 files changed, 175 insertions(+)
16
17 diff --git a/net-dns/pdns/Manifest b/net-dns/pdns/Manifest
18 index 83921db6ace..286e512a227 100644
19 --- a/net-dns/pdns/Manifest
20 +++ b/net-dns/pdns/Manifest
21 @@ -1,2 +1,3 @@
22 DIST pdns-4.1.11.tar.bz2 1118103 BLAKE2B f4ba0c463c7ff5f2185b33956ef7749b5ca6496ce850a189ec5a537d174e1391784f2c0c2af3bc7b68d2f1e01ec57c8731dc07a7690905ab7a6e386a1a8f3e4d SHA512 18215f523a39d48c8756bc13ecae1bd78967c2d66619d93ddaafb13062690002a9bdfe1d337796820706692c449286c7b9e9b8d45933684d32acbc20e490c0c4
23 +DIST pdns-4.1.13.tar.bz2 1117990 BLAKE2B 95fa26d872fe138d1cde7e586881010dd27211c4186d0a99693d2fd90bdc3fd939da09805898d469daec6fe8c3493166346cf18b528760f3b25274fe10f45ad2 SHA512 94d80b1c6b78e93dd856631d391225c521485c3fb6b4123b28f9f58e178a7f6eb03f24189eaa261873e7e29962761b513c1fcf092101d68ad81dac73249a54d4
24 DIST pdns-4.2.0-rc2.tar.bz2 1245187 BLAKE2B 30ee03752dafa02f5618ba26def1cb8d49b0f7f004b54fcb8d7640b0d60897ac9a9b13e918ab3aaee1d679af772aacd0591e9c9cd3bf6b1af79305e06cac1cdb SHA512 695589980fc35e73fc0e72f57034e2cfefd7b046100dc6f8740ac94dd50ee068453c72aa2ee5626e6cccfca1eeb5e3f036b844039db52d5c45f070d291002122
25
26 diff --git a/net-dns/pdns/pdns-4.1.13.ebuild b/net-dns/pdns/pdns-4.1.13.ebuild
27 new file mode 100644
28 index 00000000000..0078fa5323c
29 --- /dev/null
30 +++ b/net-dns/pdns/pdns-4.1.13.ebuild
31 @@ -0,0 +1,174 @@
32 +# Copyright 1999-2019 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI="7"
36 +
37 +inherit multilib user
38 +
39 +DESCRIPTION="The PowerDNS Daemon"
40 +HOMEPAGE="https://www.powerdns.com/"
41 +SRC_URI="https://downloads.powerdns.com/releases/${P/_/-}.tar.bz2"
42 +
43 +LICENSE="GPL-2"
44 +SLOT="0"
45 +KEYWORDS="~amd64 ~x86"
46 +
47 +# other possible flags:
48 +# db2: we lack the dep
49 +# oracle: dito (need Oracle Client Libraries)
50 +# xdb: (almost) dead, surely not supported
51 +
52 +IUSE="botan debug doc geoip ldap libressl lua luajit mydns mysql opendbx postgres protobuf remote sodium sqlite systemd tools tinydns test"
53 +
54 +REQUIRED_USE="mydns? ( mysql )"
55 +
56 +RDEPEND="
57 + libressl? ( dev-libs/libressl:= )
58 + !libressl? ( dev-libs/openssl:= )
59 + >=dev-libs/boost-1.35:=
60 + botan? ( dev-libs/botan:2= )
61 + lua? (
62 + !luajit? ( dev-lang/lua:= )
63 + luajit? ( dev-lang/luajit:= )
64 + )
65 + mysql? ( dev-db/mysql-connector-c )
66 + postgres? ( dev-db/postgresql:= )
67 + ldap? ( >=net-nds/openldap-2.0.27-r4 app-crypt/mit-krb5 )
68 + sqlite? ( dev-db/sqlite:3 )
69 + opendbx? ( dev-db/opendbx )
70 + geoip? ( >=dev-cpp/yaml-cpp-0.5.1:= dev-libs/geoip )
71 + sodium? ( dev-libs/libsodium:= )
72 + tinydns? ( >=dev-db/tinycdb-0.77 )
73 + protobuf? ( dev-libs/protobuf )"
74 +DEPEND="${RDEPEND}"
75 +BDEPEND="virtual/pkgconfig
76 + doc? ( app-doc/doxygen )"
77 +
78 +S="${WORKDIR}"/${P/_/-}
79 +
80 +src_configure() {
81 + local dynmodules="pipe bind" # the default backends, always enabled
82 +
83 + #use db2 && dynmodules+=" db2"
84 + use ldap && dynmodules+=" ldap"
85 + use lua && dynmodules+=" lua"
86 + use mydns && dynmodules+=" mydns"
87 + use mysql && dynmodules+=" gmysql"
88 + use opendbx && dynmodules+=" opendbx"
89 + #use oracle && dynmodules+=" goracle oracle"
90 + use postgres && dynmodules+=" gpgsql"
91 + use remote && dynmodules+=" remote"
92 + use sqlite && dynmodules+=" gsqlite3"
93 + use tinydns && dynmodules+=" tinydns"
94 + use geoip && dynmodules+=" geoip"
95 + #use xdb && dynmodules+=" xdb"
96 +
97 + econf \
98 + --disable-static \
99 + --sysconfdir=/etc/powerdns \
100 + --libdir=/usr/$(get_libdir)/powerdns \
101 + --with-modules= \
102 + --with-dynmodules="${dynmodules}" \
103 + --with-mysql-lib=/usr/$(get_libdir) \
104 + $(use_enable botan) \
105 + $(use_enable debug verbose-logging) \
106 + $(use_enable test unit-tests) \
107 + $(use_enable tools) \
108 + $(use_enable systemd) \
109 + $(use_enable sodium libsodium) \
110 + $(usex lua "$(use_with !luajit lua) $(use_with luajit)" \
111 + '--without-lua --without-luajit') \
112 + $(use_with protobuf) \
113 + ${myconf}
114 +}
115 +
116 +src_compile() {
117 + default
118 + use doc && emake -C codedocs codedocs
119 +}
120 +
121 +src_install() {
122 + default
123 +
124 + mv "${D}"/etc/powerdns/pdns.conf{-dist,}
125 +
126 + fperms 0700 /etc/powerdns
127 + fperms 0600 /etc/powerdns/pdns.conf
128 +
129 + # set defaults: setuid=pdns, setgid=pdns
130 + sed -i \
131 + -e 's/^# set\([ug]\)id=$/set\1id=pdns/g' \
132 + "${D}"/etc/powerdns/pdns.conf
133 +
134 + newinitd "${FILESDIR}"/pdns-r1 pdns
135 +
136 + keepdir /var/empty
137 +
138 + if use doc; then
139 + docinto html
140 + dodoc -r codedocs/html/.
141 + fi
142 +
143 + # Install development headers
144 + insinto /usr/include/pdns
145 + doins pdns/*.hh
146 + insinto /usr/include/pdns/backends/gsql
147 + doins pdns/backends/gsql/*.hh
148 +
149 + if use ldap ; then
150 + insinto /etc/openldap/schema
151 + doins "${FILESDIR}"/dnsdomain2.schema
152 + fi
153 +
154 + find "${D}" -name '*.la' -delete || die
155 +}
156 +
157 +pkg_preinst() {
158 + enewgroup pdns
159 + enewuser pdns -1 -1 /var/empty pdns
160 +}
161 +
162 +pkg_postinst() {
163 + elog "PowerDNS provides multiple instances support. You can create more instances"
164 + elog "by symlinking the pdns init script to another name."
165 + elog
166 + elog "The name must be in the format pdns.<suffix> and PowerDNS will use the"
167 + elog "/etc/powerdns/pdns-<suffix>.conf configuration file instead of the default."
168 +
169 + if use ldap ; then
170 + echo
171 + ewarn "The official LDAP backend module is only compile-tested by upstream."
172 + ewarn "Try net-dns/pdns-ldap-backend if you have problems with it."
173 + fi
174 +
175 + local old
176 + for old in ${REPLACING_VERSIONS}; do
177 + ver_test ${old} -lt 3.2 || continue
178 +
179 + echo
180 + ewarn "To fix a security bug (bug #458018) had the following"
181 + ewarn "files/directories the world-readable bit removed (if set):"
182 + ewarn " ${EPREFIX}/etc/powerdns"
183 + ewarn " ${EPREFIX}/etc/powerdns/pdns.conf"
184 + ewarn "Check if this is correct for your setup"
185 + ewarn "This is a one-time change and will not happen on subsequent updates."
186 + chmod o-rwx "${EPREFIX}"/etc/powerdns/{,pdns.conf}
187 +
188 + break
189 + done
190 +
191 + if use postgres; then
192 + for old in ${REPLACING_VERSIONS}; do
193 + ver_test ${old} -lt 4.1.11-r1 || continue
194 +
195 + echo
196 + ewarn "PowerDNS 4.1.11 contains a security fix for the PostgreSQL backend."
197 + ewarn "This security fix needs to be applied manually to the database schema."
198 + ewarn "Please refer to the official security advisory for more information:"
199 + ewarn
200 + ewarn " https://doc.powerdns.com/authoritative/security-advisories/powerdns-advisory-2019-06.html"
201 +
202 + break
203 + done
204 + fi
205 +}