diff options
Diffstat (limited to 'net-dns')
-rw-r--r-- | net-dns/knot/Manifest | 1 | ||||
-rw-r--r-- | net-dns/knot/knot-3.2.2.ebuild | 121 | ||||
-rw-r--r-- | net-dns/knot/metadata.xml | 3 |
3 files changed, 125 insertions, 0 deletions
diff --git a/net-dns/knot/Manifest b/net-dns/knot/Manifest index 2208988e0d1b..89fe24b1b728 100644 --- a/net-dns/knot/Manifest +++ b/net-dns/knot/Manifest @@ -4,3 +4,4 @@ DIST knot-3.1.8.tar.xz 1439912 BLAKE2B bcc089d547a7cad8150e93d70da036273a60b0e74 DIST knot-3.1.9.tar.xz 1441408 BLAKE2B 383829107bef6b35cbef3c531bc91050e7742ca930bf6645c25cab04203ee360837808c3b5342089ce9ba9ee704290ab95b2f76172577d251c6a9c18796245a0 SHA512 e4ba1c006edcde2dc820e74c39df7a8b8983dfb2d8b8845ac759c6c67dfaabc5aae38282995ed92879a683665c0c179502858631c89ad53c2738f79df951eef7 DIST knot-3.2.0.tar.xz 1665720 BLAKE2B 851f8278e2936459ca8bf4f06332d6a49e89152e634aaa94235d180c91a073c648797f8e42e371f563bbeb708289fdf3839f66508fbd41b7e045efbbe5d72374 SHA512 e007d633f1debb559d47a7646b055dc970502be11a1849063da3e3d28355f77e6cba41e34f06726bc5945e4e2ba3ecb84a4b39813a8079514d3bf584d7d565a2 DIST knot-3.2.1.tar.xz 1626796 BLAKE2B f530438bc0e970abe5a6ed148dfb88e1a384ff54c91694af98d261aa3efc73201e60dc9e5f29c1a96b6d406a34fb4ea6cbde0c28dfdc772aa53836fb47e3f2f7 SHA512 2f12750dc0db06fd915c1b322626780c1d66e10c0b8170dea57559e514f66ee105ed8dbbc0a5f8084fcf772e82c242a8b09ae449631960abf4d60af4a13a1ea0 +DIST knot-3.2.2.tar.xz 1632748 BLAKE2B 185567dc883f946570fe60cd7d01d96162c5f13ac84330e5551c293b5011c162401fd25ddbdb43bf9242e13c3cdc8225be107dc579619fe54c05335601cd27ae SHA512 29fadb96c1ea525c6183f9e7552f4ad370579b67d74aec1910a92d561cc2c5656fd7876015f29161d279a07c23643f6584308bf9fa0e74d351b17af54e5e9a7f diff --git a/net-dns/knot/knot-3.2.2.ebuild b/net-dns/knot/knot-3.2.2.ebuild new file mode 100644 index 000000000000..29120ab563c0 --- /dev/null +++ b/net-dns/knot/knot-3.2.2.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic systemd + +# subslot: libknot major.libdnssec major.libzscanner major +KNOT_SUBSLOT="13.9.4" + +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/${KNOT_SUBSLOT}" +KEYWORDS="~amd64" + +KNOT_MODULES=( + "+cookies" + "+dnsproxy" + "dnstap" + "geoip" + "+noudp" + "+onlinesign" + "+queryacl" + "+rrl" + "+stats" + "+synthrecord" + "+whoami" +) +IUSE="doc caps doh +fastparser idn +libidn2 quic systemd +utils xdp ${KNOT_MODULES[@]}" + +RDEPEND=" + acct-group/knot + acct-user/knot + 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:= + ) + doh? ( net-libs/nghttp2:= ) + geoip? ( dev-libs/libmaxminddb:= ) + idn? ( + !libidn2? ( net-dns/libidn:0= !net-dns/libidn2 ) + libidn2? ( net-dns/libidn2:= ) + ) + quic? ( net-libs/ngtcp2:=[gnutls] ) + systemd? ( sys-apps/systemd:= ) + xdp? ( + dev-libs/libbpf:= + net-libs/libmnl:= + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + 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 caps cap_ng) + $(use_enable fastparser) + $(use_enable dnstap) + $(use_enable doc documentation) + $(use_enable quic) + $(use_enable utils utilities) + $(use_enable xdp) + --enable-systemd=$(usex systemd) + $(use_with idn libidn) + $(use_with doh libnghttp2) + ) + + for u in "${KNOT_MODULES[@]#+}"; do + my_conf+=("$(use_with ${u} module-${u})") + done + + if use riscv; then + append-libs -latomic + fi + + econf "${my_conf[@]}" +} + +src_compile() { + default + + use doc && emake -C doc html +} + +src_test() { + emake check +} + +src_install() { + use doc && local HTML_DOCS=( doc/_build/html/{*.html,*.js,_sources,_static} ) + + default + + rmdir "${D}/var/run/${PN}" "${D}/var/run/" || die + + newinitd "${FILESDIR}/knot.init" knot + if use systemd; then + systemd_newunit "${FILESDIR}/knot-1.service" knot.service + fi + + find "${D}" -name '*.la' -delete || die + + keepdir /var/lib/knot +} diff --git a/net-dns/knot/metadata.xml b/net-dns/knot/metadata.xml index 56b218b58761..6fc839da3260 100644 --- a/net-dns/knot/metadata.xml +++ b/net-dns/knot/metadata.xml @@ -45,6 +45,9 @@ <flag name="queryacl"> Enable the module for query access control </flag> + <flag name="quic"> + Enable the DNS over QUIC (DoQ) module using libngtcp2 + </flag> <flag name="rrl"> Enable the response rate limiting module </flag> |