summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-dns/knot/Manifest1
-rw-r--r--net-dns/knot/knot-2.7.3.ebuild106
-rw-r--r--net-dns/knot/metadata.xml3
3 files changed, 110 insertions, 0 deletions
diff --git a/net-dns/knot/Manifest b/net-dns/knot/Manifest
index 13cc7888076b..592298193124 100644
--- a/net-dns/knot/Manifest
+++ b/net-dns/knot/Manifest
@@ -1,2 +1,3 @@
DIST knot-2.6.9.tar.xz 1126872 BLAKE2B c15b7e61ccad5417ce53f3d3895014931a2825835958735bdd9459634d9d9f39d6bb3681036772e6a510570a7f6a8afc8b0de5e77e67778831dc6415378889fe SHA512 80fcbef17c3e6685c09eb57e59001a5f298a083c18ce077dc2f2d1fadbe7c36e543c205c0820bc7971a8ed7547897aec408f51e1a9555a50dae82d047fac471b
DIST knot-2.7.2.tar.xz 1148880 BLAKE2B bf3042d762d2b66f47dbd27a1c9ecd03d111259c7db82254c1175e660497fd8343c3f1cf1cc14e6068cb3d3618931b659888a7b97d7d6e4ba9d0e74c00540e31 SHA512 e09f8a38e975ff4f90db59db9ae8a6baaca9b0cbc9c2ecd37225febfe718b7c2038ae45481ed830dc66f2b70d8312266e2dc7cb54a0aa0fdc02c87ca42bac96d
+DIST knot-2.7.3.tar.xz 1146456 BLAKE2B d584db01b2354c259cf5e5cdfeb2dff677b04e76b68156a2c672fffe95ee8c6516f82b8e199d8ec8cacfcd93f15b370a25172826460b82c5964f38207c9818f2 SHA512 ba735eb06d99f8cb41619f44413f6450178ab249ef9ff282bae36e8e965cb421f082852bbf0ae5814e3e3148f27431fc1f2b4ed30e21bfd0cbea1be189bdadfd
diff --git a/net-dns/knot/knot-2.7.3.ebuild b/net-dns/knot/knot-2.7.3.ebuild
new file mode 100644
index 000000000000..28488683ca8f
--- /dev/null
+++ b/net-dns/knot/knot-2.7.3.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit systemd user
+
+DESCRIPTION="High-performance authoritative-only DNS server"
+HOMEPAGE="https://www.knot-dns.cz/"
+SRC_URI="https://secure.nic.cz/files/knot-dns/${P/_/-}.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+KNOT_MODULES=(
+ "+cookies"
+ "+dnsproxy"
+ "dnstap"
+ "geoip"
+ "+noudp"
+ "+onlinesign"
+ "+queryacl"
+ "+rrl"
+ "+stats"
+ "+synthrecord"
+ "+whoami"
+)
+IUSE="doc caps +fastparser idn libidn2 systemd +utils ${KNOT_MODULES[@]}"
+
+RDEPEND="
+ dev-db/lmdb
+ dev-libs/libedit
+ dev-libs/userspace-rcu
+ dev-python/lmdb
+ net-libs/gnutls
+ caps? ( sys-libs/libcap-ng )
+ dnstap? (
+ dev-libs/fstrm
+ dev-libs/protobuf-c
+ )
+ geoip? ( dev-libs/libmaxminddb )
+ idn? (
+ !libidn2? ( net-dns/libidn:* )
+ libidn2? ( net-dns/libidn2 )
+ )
+ systemd? ( sys-apps/systemd )
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( dev-python/sphinx )
+"
+
+S="${WORKDIR}/${P/_/-}"
+
+src_configure() {
+ local u
+ local my_conf=(
+ --with-storage="${EPREFIX}/var/lib/${PN}"
+ --with-rundir="${EPREFIX}/var/run/${PN}"
+ $(use_enable fastparser)
+ $(use_enable dnstap)
+ $(use_enable doc documentation)
+ $(use_enable utils utilities)
+ --enable-systemd=$(usex systemd)
+ $(use_with idn libidn)
+ )
+
+ for u in "${KNOT_MODULES[@]#+}"; do
+ my_conf+=("$(use_with ${u} module-${u})")
+ done
+
+ econf "${my_conf[@]}"
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ emake -C doc html
+ HTML_DOCS=( doc/_build/html/{*.html,*.js,_sources,_static} )
+ fi
+}
+
+src_test() {
+ emake check
+}
+
+src_install() {
+ default
+
+ rmdir "${D}var/run/${PN}" "${D}var/run/" || die
+ keepdir /var/lib/${PN}
+
+ newinitd "${FILESDIR}/knot.init" knot
+ if use systemd; then
+ systemd_newunit "${FILESDIR}/knot-1.service" knot.service
+ fi
+
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ enewgroup knot 53
+ enewuser knot 53 -1 /var/lib/knot knot
+}
diff --git a/net-dns/knot/metadata.xml b/net-dns/knot/metadata.xml
index b4c4ececc733..d03b90100dde 100644
--- a/net-dns/knot/metadata.xml
+++ b/net-dns/knot/metadata.xml
@@ -39,6 +39,9 @@
Enable the module that sign zones on the fly instead of
pre-signing zone
</flag>
+ <flag name="queryacl">
+ Enable the module for query access control
+ </flag>
<flag name="rosedb">
Enable the module that staticaly override certain
responses