From 847ef9bac3ddb3c3fbca73d80733b41f2ed20eb4 Mon Sep 17 00:00:00 2001 From: Nicolas PARLANT Date: Thu, 6 Aug 2026 11:44:24 +0200 Subject: [PATCH] net-dns/knot-resolver: add 5.7.8 This release contains a workaround for a LuaJIT crash bug. sync content with 6.4.2 : disable jemalloc modify comments add missing build-deps for dnstap backport patch for LuaJIT includedir Signed-off-by: Nicolas PARLANT Part-of: https://codeberg.org/gentoo/gentoo/pulls/1625 Merges: https://codeberg.org/gentoo/gentoo/pulls/1625 Signed-off-by: Sam James --- net-dns/knot-resolver/Manifest | 2 + ...ot-resolver-5.7.8-fix_luajit_include.patch | 17 +++ .../knot-resolver/knot-resolver-5.7.8.ebuild | 109 ++++++++++++++++++ 3 files changed, 128 insertions(+) create mode 100644 net-dns/knot-resolver/files/knot-resolver-5.7.8-fix_luajit_include.patch create mode 100644 net-dns/knot-resolver/knot-resolver-5.7.8.ebuild diff --git a/net-dns/knot-resolver/Manifest b/net-dns/knot-resolver/Manifest index 7799eb1eb00ce..f98d639d8d849 100644 --- a/net-dns/knot-resolver/Manifest +++ b/net-dns/knot-resolver/Manifest @@ -2,6 +2,8 @@ DIST knot-resolver-5.7.6.tar.xz 1924840 BLAKE2B aca1a3f70921c63005b23f3a9ebb6b60 DIST knot-resolver-5.7.6.tar.xz.asc 833 BLAKE2B 93579242e6deee33477610c91d72c1152bdbd05355a57893a9519955ce022034315669a91c311081a6e2b4683bf641305fe79ae360b2b61e51a02e0b5c4d8361 SHA512 478449d96dddaff9aff134a2a3bc991d8e50423f38a00e7256b54be9ab89d85d66eaa8e83815f4b31700b16fd94f8017493db6347e57d0583feec38bb35655f6 DIST knot-resolver-5.7.7.tar.xz 1927424 BLAKE2B 6661c88128c2146d0d6cce510db5b262de35a84e0fc75b8bb63d4a7be85c9b8883a497adce1d67f19ec74f0a0d26deb5b49f1ca9eb964140577f2f82f16ad479 SHA512 757b5cb52871a062e25130cbe07e93635005d46f046eae4b72391ab6d58358244c77edc0aded9c3ea4c86fbf6e9809210157207d277e8a4228df680787621500 DIST knot-resolver-5.7.7.tar.xz.asc 833 BLAKE2B a3af2a2ce3bdfc54b3eda16944b1a6a18a9eca90021c66da930546bd6fcc9809b58abc511b8110e17e7d6cca90d15c3d9f23743a6c1eacdb9c96537e732bee95 SHA512 d0900982931c8024d2a8cbca0855882a31bab672bccb4ed15b93240bb9f7fe84c66384dcfcb95d18eb91accc17cd17131e784db04ab399078a6f22cd67b9c24b +DIST knot-resolver-5.7.8.tar.xz 1927504 BLAKE2B 439fa3460dc8e15d9b8084b1b18e3d9cb169527a88ebbc95ae82b997e594b796793ed8df39d7d3844bd3865dc09e73a9693df6524927d850bd0286df3cabdd95 SHA512 e5a9a8379da2343cb9e19db9be87f462baf36115cf38ce57fa2a5a0b0a923c4babc6514cda196f204623b3024d4dd5343c408a5c423a4549ddbb7b8bec2cb3ef +DIST knot-resolver-5.7.8.tar.xz.asc 833 BLAKE2B 9ad3a84111af800e5c1cab6e888a0d3eae4e414c0e185ba1f1e8eece3a2129d7c6fadcfd514928417c8fe35909e7cf644162f02ca8d2b2bc0c610cd9ca04872e SHA512 db65c2de19952255c511c9cc70a3a437a671b0f70a3ff61d18fd3f8cb927cce9816ea807119bb35fc2fd2f5e6efe48d8c9f913da209f4e86a3fa03f3a136f9ba DIST knot-resolver-6.3.0.tar.xz 2366488 BLAKE2B 5745be9d031d58e7a9175d29307fb7453b76a6ef65a3b9970b9e5c256a38b2f13e5f4eb5bd126c44e4263b5dbebef2f5addf9c495c80e4a8d4ebe5c2169c0a9c SHA512 eafc8f1875561346cf06b13717a96041e5e6d63e02dea85525ff7afa6e7271a8e37048f9596f17d826cc37e157dff666ee8b55eb2c18bae069ca19d3377dceeb DIST knot-resolver-6.3.0.tar.xz.asc 833 BLAKE2B 89fcb4b7e83da324c2ab795eaf3f2774d32fda37a702e661d204de5f9e51fbdffdc22c4080e04e07d48574ea8308ea82967ef7ead88d1a8eaaea6b8609215399 SHA512 bb18bd82a348cafeafbfcc3ddad699e804242eadb2b29f29121be7adffd3078af86bf9ce1d86704e8084aa424b94990bc12c1c209b81d72ed785b95854cfc3d5 DIST knot-resolver-6.4.0.tar.xz 2367316 BLAKE2B dbe67ea0ad3484aba912406f960568c2c92630910863eaf33aeba9b15dce0279810a7df8844aa7d5617f1055de957445042a80c7479972f185bbfff457e96e1d SHA512 3992a014e64899c1867773714d5505b44f714bab511af2b7657456c79706b75eae0ba1f9f93017dd5648793fbbf32baf48208a5789422d2e42a1a361b0d91311 diff --git a/net-dns/knot-resolver/files/knot-resolver-5.7.8-fix_luajit_include.patch b/net-dns/knot-resolver/files/knot-resolver-5.7.8-fix_luajit_include.patch new file mode 100644 index 0000000000000..345c0965d2a2e --- /dev/null +++ b/net-dns/knot-resolver/files/knot-resolver-5.7.8-fix_luajit_include.patch @@ -0,0 +1,17 @@ +Backport from 6.X +https://gitlab.nic.cz/knot/knot-resolver/-/merge_requests/1816.patch +Subject: [PATCH] Fix luajit includedir when cross-compiling +The use of --variable=includedir for luajit doesn't include the +root-directory when cross-compiling. +--- a/modules/meson.build ++++ b/modules/meson.build +@@ -32,8 +32,7 @@ integr_tests += [ + ['serve_stale', meson.current_source_dir() / 'serve_stale' / 'test.integr'], + ] + +-mod_inc_dir = include_directories('..', '../contrib', +- luajit.get_pkgconfig_variable('includedir')) ++mod_inc_dir = include_directories('..', '../contrib') + + mod_deps = [ + contrib_dep, diff --git a/net-dns/knot-resolver/knot-resolver-5.7.8.ebuild b/net-dns/knot-resolver/knot-resolver-5.7.8.ebuild new file mode 100644 index 0000000000000..7c8293eb002f8 --- /dev/null +++ b/net-dns/knot-resolver/knot-resolver-5.7.8.ebuild @@ -0,0 +1,109 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( luajit ) + +inherit lua-single meson optfeature tmpfiles verify-sig + +DESCRIPTION="Scaleable caching DNS resolver" +HOMEPAGE="https://www.knot-resolver.cz https://gitlab.nic.cz/knot/knot-resolver" +SRC_URI=" + https://knot-resolver.nic.cz/release/${P}.tar.xz + verify-sig? ( https://knot-resolver.nic.cz/release/${P}.tar.xz.asc ) +" + +LICENSE="Apache-2.0 BSD CC0-1.0 GPL-3+ LGPL-2.1+ MIT" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="caps dnstap kresc nghttp2 selinux systemd test xdp" +RESTRICT="!test? ( test )" +REQUIRED_USE="${LUA_REQUIRED_USE}" + +RDEPEND=" + ${LUA_DEPS} + acct-group/knot-resolver + acct-user/knot-resolver + dev-db/lmdb:= + dev-libs/libuv:= + net-dns/knot:=[xdp?] + net-libs/gnutls:= + caps? ( sys-libs/libcap-ng ) + dnstap? ( + dev-libs/fstrm + dev-libs/protobuf-c:= + ) + kresc? ( dev-libs/libedit ) + nghttp2? ( net-libs/nghttp2:= ) + selinux? ( sec-policy/selinux-knot ) + systemd? ( sys-apps/systemd:= ) +" +DEPEND=" + ${RDEPEND} + test? ( dev-util/cmocka ) +" +BDEPEND=" + virtual/pkgconfig + dnstap? ( + dev-libs/protobuf[protoc(+)] + dev-libs/protobuf-c + ) + verify-sig? ( >=sec-keys/openpgp-keys-knot-resolver-20260304 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/${PN}.asc + +PATCHES=( + "${FILESDIR}"/${PN}-5.5.3-docdir.patch + "${FILESDIR}"/${PN}-5.5.3-nghttp-openssl.patch + "${FILESDIR}"/${PN}-5.7.4-libsystemd.patch + + # backport from 6.X + "${FILESDIR}"/${PN}-5.7.8-fix_luajit_include.patch +) + +src_configure() { + local emesonargs=( + --localstatedir="${EPREFIX}"/var # double lib + # avoid automagic, see #870019 + -Dauto_features=disabled + # post-install tests + -Dconfig_tests=disabled + # DISTUTILS_SINGLE_IMPL can't use python_gen_any_dep + # disable doc (html) to avoid relying on sphinx for PYTHON_COMPAT + -Ddoc=disabled + -Ddocdir="${EPREFIX}"/usr/share/doc/${PF} + # disable jemalloc, see #969223 + -Dmalloc=disabled + # disable debug for the deprecated module 'http' + -Dopenssl=disabled + # always install tmpfiles + -Dsystemd_files=enabled + $(meson_feature caps capng) + $(meson_feature dnstap) + $(meson_feature kresc client) + $(meson_feature nghttp2) + $(meson_feature systemd) + $(meson_feature test unit_tests) + ) + meson_src_configure +} + +src_install() { + meson_src_install + fowners -R ${PN}: /etc/${PN} + newinitd "${FILESDIR}"/kresd.initd-r2 kresd + newconfd "${FILESDIR}"/kresd.confd-r1 kresd + newinitd "${FILESDIR}"/kres-cache-gc.initd kres-cache-gc +} + +pkg_postinst() { + tmpfiles_process knot-resolver.conf + optfeature_header "This package is recommended with Knot Resolver:" + optfeature "asynchronous execution, especially with policy module" dev-lua/cqueues + optfeature_header "Other packages may also be useful:" + optfeature "legacy doh and webmgmt (metrics, tracking)" dev-lua/lua-http + optfeature "server map with geoIP database (webmgmt)" dev-lua/lua-mmdb +}