From b8c7370a682e4e29cda623222d17a790c01c3642 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 7 Aug 2024 12:37:21 +0100 Subject: gentoo auto-resync : 07:08:2024 - 12:37:20 --- net-dns/nsd/Manifest | 16 +- ...10.1-simdzone-configure_ac-_mm_popcnt_u64.patch | 12 ++ .../nsd/files/nsd-4.8.0-implausible-stats.patch | 22 --- net-dns/nsd/files/nsd.initd-r1 | 59 -------- net-dns/nsd/files/nsd.service | 14 -- net-dns/nsd/metadata.xml | 9 +- net-dns/nsd/nsd-4.10.0.ebuild | 161 --------------------- net-dns/nsd/nsd-4.10.1-r2.ebuild | 160 ++++++++++++++++++++ net-dns/nsd/nsd-4.8.0-r1.ebuild | 128 ---------------- net-dns/nsd/nsd-4.9.1.ebuild | 4 +- net-dns/nsd/nsd-9999.ebuild | 16 +- 11 files changed, 192 insertions(+), 409 deletions(-) create mode 100644 net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch delete mode 100644 net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch delete mode 100644 net-dns/nsd/files/nsd.initd-r1 delete mode 100644 net-dns/nsd/files/nsd.service delete mode 100644 net-dns/nsd/nsd-4.10.0.ebuild create mode 100644 net-dns/nsd/nsd-4.10.1-r2.ebuild delete mode 100644 net-dns/nsd/nsd-4.8.0-r1.ebuild (limited to 'net-dns/nsd') diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest index 68524e1e265a..ba14524d5562 100644 --- a/net-dns/nsd/Manifest +++ b/net-dns/nsd/Manifest @@ -1,17 +1,13 @@ -AUX nsd-4.8.0-implausible-stats.patch 760 BLAKE2B ae6d75c8f2ad17fa5f6c8ba1cbaa6e812a1650c3b913b7e86aa4b479c264c8fae02d5713bb21ee3bace5c832e5b96f762772f70eb8aa24d7ce6c9fd4b04756dc SHA512 2b40047b8277e2fe18afd7aa1aef5b91244478aa38df04e094ded9ae7c1bd49f62ae940831b1c144c7cd9b4f26957c4e726001d3afdd48e51b940bd36c2ee9bf +AUX nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch 415 BLAKE2B 5379fee77e8fdcbe2b2b15fd17d0d690e00009fd76f70465e26a13350b6a4316ae28fdc9bec47124bd1cfd14cc081418b2e6c5c351269d2421560e3d19fd223d SHA512 5d7333164e14ec1254a6d92687850fa3fdc0240d02bde5992a4bddc9a00d3b4be74cee7212f1ca8a70a2a65e93cdaa249c74ebf52e38d47aa1d4787100ef814a AUX nsd-4.9.1-systemd-no-pidfile.patch 484 BLAKE2B 697c6de4e4e69da281316be06d6636fba7ac301987bbb8e1816f4028cab9b76b0faa668d8ede0b85059325792c71d31292eb661734023fe6bcdb9306d4f7b662 SHA512 c0133bad41d405f704ed754bc9ee5d96e878c0a2c5ffd41940823f26a9962e737da3e26c66bfd258b6165b166ec52896bb56de3ad6056d9508123eb59f20b4b8 AUX nsd-munin-gentoo-paths.patch 542 BLAKE2B 13ff49c41683d5bf505e257cd17bf5f3ad06662c00032d79b36be3f96486eb89fdd62a42b5ed4816ad99835366864603568613e27504894340ebb64057e2b2c3 SHA512 6034086d6b6f6980468766c901e92291fea8a32df179561ede2add5918c37bfe3aabf122735d4ae2e28efece394fd3398f9a0cc4d8fdcc1e5da1ca709d2ba6ae AUX nsd.confd-r1 669 BLAKE2B 45ef7846e227566ce2bc2248084598e31a40536f9dbd28ff5964fca34998399253dfd45e1706ddaed566ac4f745264f4f1314ba7394392e637da520ff78470df SHA512 6c9daae27750149e9ee13860b13a9ce7d92159416329098fa60b77982dbe1d0b3ee1c957321b3a459870155d2a4430f1f7796c53b677178f3a6a71a2efc81fdc -AUX nsd.initd-r1 1383 BLAKE2B b90de2ebef09a4f9050f6e95f5faf659c62910462aba1179daccde4e63a3972124247e6e8ce725c4dbd34a7fcd4f14b40899d7b59ba4937bdc59c493f6f7e173 SHA512 f775c78b529c5c7f1130035ea9c6cf1c1e9c1790c5df84fafd86a41294748a46c82b66c58df8385f8f4bbca8113427c665051aeec5720073bd9823607c9f8ce1 AUX nsd.initd-r2 1312 BLAKE2B 798c8df841f3bf22edb0891f1e350a8636db94e9049ba202b988210ff69ba185b3e0a6ed11347752a452d49560930b5f5fd34d5857b150ffbc1c9691e1202feb SHA512 35320b938a29d34cda2919dfcfc975858d2211bbe8a92af270c2e0806d05a12e893bb13944b75bae27b3db4ab8a74e2408b4d70898f715f785ec00f36a629ea2 AUX nsd.munin-conf 23 BLAKE2B 0b08804b2218d77ea925d4c9e26e73649b453b923d6d7b1e1df39ceb58b92a44c48cb21583a480e622f72d07650f410f2e0703f1d16af08152aed16982ab8da2 SHA512 c06d0b035387e7be79cfa8fedf8afb3900772146c6d4090ac39ea2ef165772d875b222ef467bd73422078ef57818bcc931ca67fa290bd99a7a9456efa5448853 -AUX nsd.service 272 BLAKE2B 66a7d4132246589f71341afd98361f6b02082be3d4e230c86ae690876a797ea0a4580b29892d91feba2785ea933a053f862e0d00f2c8a8c09ab907386c39a03c SHA512 fbca86887bfc36d61af06992cc98b3f3cb33c39274fbdc1e53d489bdcc767993911fab27a20244c3878b36bacbd1644a552364b2f7bf4d48e6eb247d0eecdf0f AUX nsd.tmpfilesd-r1 24 BLAKE2B ae4078bff0e71d9b47d02855f7e7ab2389cc83b40af657221ffec07e52d52c666073d32182dc726dcc3df85a17f7a983a546d6cda98554ebcf7df14a64036eb8 SHA512 bfc1b81f8553f499f8048a26870b0964625cad4c73b84b70afc8c00644b95661e86ad540fd66f88ef072166ff22eef4f18974ba3364d1bd33e1ca7ee348f9188 -DIST nsd-4.10.0.tar.gz 1388963 BLAKE2B 1ae50e2c2756fbbbabe87ecf88e74c2f9e5bf21dfe8f34a279894499ba5434a9249e5424f511ed0b67d21b3b1c98b7a03e38cd20fd6dd0cd2a6ad4b397d352df SHA512 ebf65d9a3d56ba560b587dc3cf91b0b086c9267c67f4c6a6c415cc062a08a9d0deb50cc44189b741d5b7634fe07038f6a234999f5a0ee7df6609fc026127fb09 -DIST nsd-4.8.0.tar.gz 1273228 BLAKE2B d1e6a5e8fb158bb32081bc7674d957e3f5a596ed10ee89dd6a5f6af9a79a8c130f2de7070345bee69cb7798e9f373d856a9336a9e9f65f733ff45e15e94833ff SHA512 13c9cffffe6adfcbabf744ee2effebe6ae265d83476345a1edb60dc9c6d7f838a5e239e9b18e667924e5e76b74b2caac63818fcaecf7f0fa651ff21736174a46 +DIST nsd-4.10.1.tar.gz 1404799 BLAKE2B 7b286ac681c1bb8201654cd2e5fac8a98256f6a595dfbb39bcfed92de63b3337e05d219bc766bab01e4aaf3fb1de3c128d7157caeee3a7f21e4132db9ea72cba SHA512 b0f4bdca8a1c6fbbe99096abc8c5f8b34ef2e66dc0da44da253ab164b35ad0aaef5d05eb682b88cc68d8b1671f7b80abafee242a784ed6deb785adee7f6a53a9 DIST nsd-4.9.1.tar.gz 1309953 BLAKE2B 4a43db480be7196c0a177cc6ee2b9cd6eaaaa9af4d0c3dc7b8f07a5b9e24fd4eac816a29f83de870efe012f2f3bbcbb9bdbda903d05bf9d96574bddc97f68547 SHA512 65cd38aa8a41aee57a6950747de448bc4007a2d2c095152f1d22006f85faa7f0732ec4aa0aeae9f46bc69bff17164d8fe384bbc3441d0484364c4af938b511c1 -EBUILD nsd-4.10.0.ebuild 4526 BLAKE2B f935b1b2ad157a2af9ce3a4f3d5560f8a6c6056c7641573f31a38f4f928a0bbc90c628b8253a0c76f485a300e511aae4b58916e74b07102a8821861c504557ea SHA512 78e684b042dcd4816b77fb86a3339e71fbc1ffb3ae32e85f4af2a7ae9ba27d8d87912d1ed2e4524941e7a286db6a1142af08e817191a1908d4e8c648c80559c0 -EBUILD nsd-4.8.0-r1.ebuild 3218 BLAKE2B e591458f0b53f6f0e0bbef131414779e2c7c151bd2de1747660b468b88e5882efdc807991809061fbeaf4348d3a23b16abb95616f25564c002de8bbdd97d9861 SHA512 3fd01e8bc80fd69dc42b1046522d3680bf6a1700df1b986a934baebdb018ab30de3b6cebb4e3f073b927182bd5058271a6197895a5bba0e71526b0000910ab4b -EBUILD nsd-4.9.1.ebuild 4131 BLAKE2B 011248925c106bfc977f7f5293ea6e7a53b59668f8895110a086407c71de243ecd0abfe5f0fbfae0f7f54fea1837882f052acfef49ce3802f6ca4ba2d798fabf SHA512 58f0041f0793eb1940e7421052534ed5622e950203350e220c759a887812115c12a1bad20f0b71b5b2509c15af3a56332c504fa0af3d77361574e17e8fbffc26 -EBUILD nsd-9999.ebuild 4526 BLAKE2B f935b1b2ad157a2af9ce3a4f3d5560f8a6c6056c7641573f31a38f4f928a0bbc90c628b8253a0c76f485a300e511aae4b58916e74b07102a8821861c504557ea SHA512 78e684b042dcd4816b77fb86a3339e71fbc1ffb3ae32e85f4af2a7ae9ba27d8d87912d1ed2e4524941e7a286db6a1142af08e817191a1908d4e8c648c80559c0 -MISC metadata.xml 2054 BLAKE2B cb2f3d4a5425521a7780f1fb247a55b2ab718e26d23894474dafbd82ad1bc0acee4e097684cf634d354870c0ac270897c571238ef8cf95b82bcd7dcf4971ca89 SHA512 2425ab4ca52a28afa3311b9dcd722e24ea490e32f859f5ea72f6c50b62b7dc677fd2217837526a05d36e069bd48324f51caa385656ebd58cee4e4d61fa19947a +EBUILD nsd-4.10.1-r2.ebuild 4442 BLAKE2B bccfba5b68e16b0052022c3f305590e987b45bff72785bb6c301617d866436612523c7ed04eb7ff45953c6aad3ea5c4cbbd7a45c91e9572ab05f3525e7cab80e SHA512 8583a4bebcbd20ec63d663c2c68fbb3724034d24f32cffe423c566f4cccc0bcd350b35223355664e45e753e9d26343dd6553a2af6b342d3e6ca03d24657ea44e +EBUILD nsd-4.9.1.ebuild 4225 BLAKE2B 4cd80b4819e79dc416c39820f068cf24c5d585a6bd9032901607ca667437172b81928cb01d3cb378c76ac6ff635a340ef5c96207276bf3186b5ad71c4d8d250d SHA512 41b979d7aea4557d9d3985e71113f4f3e4c25178c8b30e9291b3c9ae2034b41812d30f066b0b1d7fd27433c6fccb892ed323a87f1fa6fa41091f03482c363d2a +EBUILD nsd-9999.ebuild 4371 BLAKE2B f9824aa8fb6738371773cc09749ea1e25c0d53d8f3120b5f2d7cdd59a6f7fc6ae244d4302861505d4dd56c87c0585bf6e6fee0928ec7d6457e4075293de36024 SHA512 5dcfb4226afdd58fec3b0450c18155247235b854265421caba587d8b797000bd38bab4ed39b937f9d636a69aba1973488fba50d75e95524e2aa51b0f4de4b81b +MISC metadata.xml 1984 BLAKE2B e3c44203228f5a114b15966f6d6b06930cecbd2ad10a08ca3166a708f5811117faadd8fae26c98b008dd5080be850db15f93f8ed6477b936206babe880174677 SHA512 9fa4885721b96772df96d25b50005aa0e5028dfe69eff22d32143641d1d4cddabf47ab706eb1c69f8a7d43ac9c09a9c7225de170ee7a537d6b72b4368a5228be diff --git a/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch b/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch new file mode 100644 index 000000000000..5d6a38c64a0d --- /dev/null +++ b/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch @@ -0,0 +1,12 @@ +diff -Naurp a/simdzone/configure.ac b/simdzone/configure.ac +--- a/simdzone/configure.ac 2024-08-02 08:05:01.000000000 -0400 ++++ b/simdzone/configure.ac 2024-08-04 17:56:15.810347292 -0400 +@@ -76,7 +76,7 @@ AC_INCLUDES_DEFAULT + int main(int argc, char *argv[]) + { + (void)argv; +- uint64_t popcnt = _mm_popcnt_64((uint64_t)argc); ++ uint64_t popcnt = _mm_popcnt_u64((uint64_t)argc); + return popcnt == 11; + } + ]]) diff --git a/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch b/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch deleted file mode 100644 index 318f2a5e2f55..000000000000 --- a/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch +++ /dev/null @@ -1,22 +0,0 @@ -https://github.com/NLnetLabs/nsd/issues/313 -https://github.com/NLnetLabs/nsd/commit/ccc1bbc28abd3a723c25cb8dcc735731926979d0 - -From ccc1bbc28abd3a723c25cb8dcc735731926979d0 Mon Sep 17 00:00:00 2001 -From: "W.C.A. Wijngaards" -Date: Tue, 6 Feb 2024 11:44:24 +0100 -Subject: [PATCH] - Fix #313: nsd 4.8 stats with implausible spikes. - ---- a/remote.c -+++ b/remote.c -@@ -2932,7 +2932,9 @@ process_stats(RES* ssl, xfrd_state_type* xfrd, int peek) - process_stats_manage_clear(xfrd, stats, peek); - process_stats_add_total(xfrd, &total, stats); - print_stats(ssl, xfrd, &stattime, !peek, &total, zonestats); -- xfrd->nsd->rc->stats_time = stattime; -+ if(!peek) { -+ xfrd->nsd->rc->stats_time = stattime; -+ } - - free(stats); - #ifdef USE_ZONE_STATS - diff --git a/net-dns/nsd/files/nsd.initd-r1 b/net-dns/nsd/files/nsd.initd-r1 deleted file mode 100644 index 2a97c6dea708..000000000000 --- a/net-dns/nsd/files/nsd.initd-r1 +++ /dev/null @@ -1,59 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -description="NSD is an authoritative-only, high performance, open source name server" -extra_commands="configtest" -extra_started_commands="reload" - -# these can be overridden in /etc/conf.d/nsd if necessary -NSD_CONFIG="${NSD_CONFIG:-/etc/nsd/nsd.conf}" -NSD_CHECKCONF="${NSD_CHECKCONF:-/usr/sbin/nsd-checkconf}" -command="${NSD_BINARY:-/usr/sbin/nsd}" -command_args="-c ${NSD_CONFIG}" - -depend() { - need net - use logger -} - -get_pidfile() { - printf '%s' "$("${NSD_CHECKCONF}" -o pidfile "${NSD_CONFIG}")" -} - -checkconfig() { - if ! test -e "${NSD_CONFIG}"; then - eerror "You need to create an appropriate config file." - eerror "An example can be found in /etc/nsd/nsd.conf.sample" - return 1 - elif ! "${NSD_CHECKCONF}" "${NSD_CONFIG}"; then - eerror "You have errors in your configfile (${NSD_CONFIG})" - return $? - fi - return 0 -} - -configtest() { - ebegin "Checking ${SVCNAME} configuration" - checkconfig - eend $? -} - -start_pre() { - checkconfig || return $? - pidfile="$(get_pidfile)" - checkpath --directory --owner nsd:nsd "${pidfile%/*}" || return 1 -} - -stop_pre() { - checkconfig || return $? - pidfile="$(get_pidfile)" -} - -reload() { - checkconfig || return $? - pidfile="$(get_pidfile)" - ebegin "Reloading config and zone files" - kill -s HUP $(cat ${pidfile}) - eend $? -} diff --git a/net-dns/nsd/files/nsd.service b/net-dns/nsd/files/nsd.service deleted file mode 100644 index 8337557faeef..000000000000 --- a/net-dns/nsd/files/nsd.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=NSD authoritative DNS server -Wants=network.target -After=network.target - -[Service] -Type=forking -ExecStartPre=/usr/bin/install -d -o nsd -g nsd /run/nsd -ExecStart=/usr/sbin/nsd -KillMode=mixed -PIDFile=/run/nsd/nsd.pid - -[Install] -WantedBy=multi-user.target diff --git a/net-dns/nsd/metadata.xml b/net-dns/nsd/metadata.xml index 0cdd2376e40c..65dad76e8f3c 100644 --- a/net-dns/nsd/metadata.xml +++ b/net-dns/nsd/metadata.xml @@ -5,6 +5,9 @@ kumba@gentoo.org Joshua Kinard + + NLnetLabs/nsd + Enables BIND8 like NSTATS and XSTATS and statistics in nsd-control Enable full relocation binding at load-time (RELRO NOW, to protect GOT and .dtor areas) @@ -21,12 +24,8 @@ Use a radix tree for main lookups instead of a red-black tree Enables ratelimiting, based on query name, type and source Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6 - Configure NSD as a root server (OBSOLETE: removed in >=4.9.x) Leverage SIMD instructions in modern CPUs to improve throughput Enable TCP Fast Open - Support timestamps after 2038 (glibc only!) + Enables support for 64-bit 'time_t' (sets D_TIME_BITS=64; glibc only) - - NLnetLabs/nsd - diff --git a/net-dns/nsd/nsd-4.10.0.ebuild b/net-dns/nsd/nsd-4.10.0.ebuild deleted file mode 100644 index da8e10d8e3ac..000000000000 --- a/net-dns/nsd/nsd-4.10.0.ebuild +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -inherit autotools systemd tmpfiles - -DESCRIPTION="An authoritative only, high performance, open source name server" -HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd" - -if [[ ${PV} == *9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git" -else - # version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1 - MY_PV="${PV/_beta/b}" - MY_PV="${MY_PV/_rc/rc}" - MY_P="${PN}-${MY_PV}" - - if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then - SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" - S="${WORKDIR}"/${MY_P} - - KEYWORDS="~amd64 ~x86" - fi -fi - -LICENSE="BSD" -SLOT="0" -IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg +simdzone ssl systemd +tfo year2038" - -RDEPEND=" - acct-group/nsd - acct-user/nsd - dnstap? ( - dev-libs/fstrm - dev-libs/protobuf-c - ) - libevent? ( dev-libs/libevent ) - munin? ( net-analyzer/munin ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-alternatives/lex - app-alternatives/yacc - systemd? ( virtual/pkgconfig ) -" - -PATCHES=( - "${FILESDIR}/${PN}-munin-gentoo-paths.patch" -) - -NSD_CONFD_VER="1" # Cur version of NSD's OpenRC conf.d file. -NSD_INITD_VER="2" # Cur version of NSD's OpenRC init.d script. -NSD_TMPFILESD_VER="1" # Cur version of NSD's tmpfiles.d config. - -NSD_DBDIR="/var/db/nsd" # Default dir for NSD's databases. -NSD_ZNDIR="/var/lib/nsd" # Default dir for NSD's zone files. - -src_prepare() { - default - - # Required to get correct pkg-config macros with USE="systemd". - # See bugs #663618 & #758050. - eautoreconf -} - -src_configure() { - local myconf=( - $(use_enable bind8-stats) - $(use_enable bind8-stats zone-stats) - $(use_enable debug checking) - $(use_enable default-znow relro-now) - $(use_enable dnstap) - $(use_enable ipv6) - $(use_enable largefile) - $(use_enable lto flto) - $(use_enable memclean) - $(use_enable minimal-responses) - $(use_enable mmap) - $(use_enable nsec3) - $(use_enable packed) - $(use_enable pie) - $(use_enable radix-tree) - $(use_enable ratelimit) - $(use_enable recvmmsg) - $(use_enable systemd) - $(use_enable tfo tcp-fastopen) - $(use_with libevent) - $(use_with ssl) - - --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db" - --with-logfile="${EPREFIX}/var/log/nsd.log" - --with-pidfile="${EPREFIX}/run/nsd.pid" - --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state" - --with-xfrdir="${EPREFIX}${NSD_DBDIR}" - --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list" - --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" - ) - - # NSD 4.10.x introduced a new zone parser, "simdzone", which - # replaces the older parser that used flex & bison: - # https://github.com/NLnetLabs/simdzone - # It leverages SSE4.2 and/or AVX2 instruction sets for faster - # zone parsing on x86_64 architectures. Other CPU archs will - # use a fallback implementation. - if use amd64; then - myconf+=( - $(use_enable simdzone haswell) - $(use_enable simdzone westmere) - ) - fi - - # This configure switch is only available on a glibc-based system. - if use elibc_glibc; then - myconf+=( $(use_enable year2038) ) - fi - - econf "${myconf[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - - dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} - newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd - newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd - newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf - - # Install munin plugin and config, if requested. - if use munin ; then - exeinto "/usr/libexec/munin/plugins" - doexe contrib/nsd_munin_ - insinto "/etc/munin/plugin-conf.d" - newins "${FILESDIR}/nsd.munin-conf" nsd_munin - fi - - # Use the upstream-provided systemd service file. - systemd_dounit "contrib/nsd.service" - - # Remove the /run directory that usually resides on tmpfs and is - # being taken care of by the nsd init script anyway (checkpath). - rm -r "${ED}/run" || die "Failed to remove /run" - - keepdir "${NSD_DBDIR}" -} - -pkg_postinst() { - # See eclass/tmpfiles.eclass for info. - tmpfiles_process nsd.conf - - # Database directory - # Writable by nsd:nsd for database updates and zone transfers. - install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}" - - # Zones directory - # Writable by nsd:nsd for zone file updates (via 'nsd-control write'). - install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}" -} diff --git a/net-dns/nsd/nsd-4.10.1-r2.ebuild b/net-dns/nsd/nsd-4.10.1-r2.ebuild new file mode 100644 index 000000000000..06ee9f176c22 --- /dev/null +++ b/net-dns/nsd/nsd-4.10.1-r2.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit autotools systemd tmpfiles + +DESCRIPTION="An authoritative only, high performance, open source name server" +HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd" + +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git" +else + # version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1 + MY_PV="${PV/_beta/b}" + MY_PV="${MY_PV/_rc/rc}" + MY_P="${PN}-${MY_PV}" + + if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then + SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" + S="${WORKDIR}"/${MY_P} + + KEYWORDS="~amd64 ~x86" + fi +fi + +LICENSE="BSD" +SLOT="0" +IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg +simdzone ssl systemd +tfo year2038" + +RDEPEND=" + acct-group/nsd + acct-user/nsd + dnstap? ( + dev-libs/fstrm + dev-libs/protobuf-c + ) + libevent? ( dev-libs/libevent ) + munin? ( net-analyzer/munin ) + ssl? ( dev-libs/openssl:0= ) + systemd? ( sys-apps/systemd ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/lex + app-alternatives/yacc + systemd? ( virtual/pkgconfig ) +" + +PATCHES=( + "${FILESDIR}/${PN}-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch" + "${FILESDIR}/${PN}-munin-gentoo-paths.patch" +) + +NSD_DBDIR="/var/db/nsd" # Default dir for NSD's databases. +NSD_ZNDIR="/var/lib/nsd" # Default dir for NSD's zone files. + +src_prepare() { + default + + # Required to get correct pkg-config macros with USE="systemd". + # See bugs #663618 & #758050. + eautoreconf +} + +src_configure() { + local myconf=( + $(use_enable bind8-stats) + $(use_enable bind8-stats zone-stats) + $(use_enable debug checking) + $(use_enable default-znow relro-now) + $(use_enable dnstap) + $(use_enable ipv6) + $(use_enable largefile) + $(use_enable lto flto) + $(use_enable memclean) + $(use_enable minimal-responses) + $(use_enable mmap) + $(use_enable nsec3) + $(use_enable packed) + $(use_enable pie) + $(use_enable radix-tree) + $(use_enable ratelimit) + $(use_enable recvmmsg) + $(use_enable systemd) + $(use_enable tfo tcp-fastopen) + $(use_with libevent) + $(use_with ssl) + + --with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db" + --with-logfile="${EPREFIX}/var/log/nsd.log" + --with-pidfile="${EPREFIX}/run/nsd.pid" + --with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state" + --with-xfrdir="${EPREFIX}${NSD_DBDIR}" + --with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list" + --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" + ) + + # NSD 4.10.x introduced a new zone parser, "simdzone", which + # replaces the older parser that used flex & bison: + # https://github.com/NLnetLabs/simdzone + # It leverages SSE4.2 and/or AVX2 instruction sets for faster + # zone parsing on x86_64 architectures. Other CPU archs will + # use a fallback implementation. + if use amd64; then + myconf+=( + $(use_enable simdzone haswell) + $(use_enable simdzone westmere) + ) + fi + + # This configure switch only appears on glibc-based userlands. + # It enables 64-bit time_t to support timestamps greater than + # the year 2038 (D_TIME_BITS=64). + if use elibc_glibc; then + myconf+=( $(use_enable year2038) ) + fi + + econf "${myconf[@]}" +} + +src_install() { + emake DESTDIR="${D}" install + + dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} + newinitd "contrib/nsd.openrc" nsd + newconfd "contrib/nsd.openrc.conf" nsd + newtmpfiles "contrib/nsd-tmpfiles.conf" nsd.conf + + # Install munin plugin and config, if requested. + if use munin ; then + exeinto "/usr/libexec/munin/plugins" + doexe "contrib/nsd_munin_" + insinto "/etc/munin/plugin-conf.d" + newins "${FILESDIR}/nsd.munin-conf" nsd_munin + fi + + # Use the upstream-provided systemd service file. + systemd_dounit "contrib/nsd.service" + + # Remove the /run directory that usually resides on tmpfs and is + # being taken care of by the nsd init script anyway (checkpath). + rm -r "${ED}/run" || die "Failed to remove /run" + + keepdir "${NSD_DBDIR}" +} + +pkg_postinst() { + # See eclass/tmpfiles.eclass for info. + tmpfiles_process nsd.conf + + # Database directory + # Writable by nsd:nsd for database updates and zone transfers. + install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}" + + # Zones directory + # Writable by nsd:nsd for zone file updates (via 'nsd-control write'). + install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}" +} diff --git a/net-dns/nsd/nsd-4.8.0-r1.ebuild b/net-dns/nsd/nsd-4.8.0-r1.ebuild deleted file mode 100644 index 654f972468e3..000000000000 --- a/net-dns/nsd/nsd-4.8.0-r1.ebuild +++ /dev/null @@ -1,128 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools systemd - -DESCRIPTION="An authoritative only, high performance, open source name server" -HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd" - -if [[ ${PV} == *9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git" -else - # version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1 - MY_PV="${PV/_beta/b}" - MY_PV="${MY_PV/_rc/rc}" - MY_P="${PN}-${MY_PV}" - - if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then - SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" - S="${WORKDIR}"/${MY_P} - - KEYWORDS="amd64 x86" - fi -fi - -LICENSE="BSD" -SLOT="0" -IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd" - -RDEPEND=" - acct-group/nsd - acct-user/nsd - dnstap? ( - dev-libs/fstrm - dev-libs/protobuf-c - ) - libevent? ( dev-libs/libevent ) - munin? ( net-analyzer/munin ) - ssl? ( dev-libs/openssl:0= ) - systemd? ( sys-apps/systemd ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-alternatives/lex - app-alternatives/yacc - systemd? ( virtual/pkgconfig ) -" - -PATCHES=( - # Fix the paths in the munin plugin to match our install - "${FILESDIR}/${PN}-munin-gentoo-paths.patch" - "${FILESDIR}/${P}-implausible-stats.patch" -) - -src_prepare() { - default - - # Required to get correct pkg-config macros with USE="systemd" - # See bugs #663618 and #758050 - eautoreconf -} - -src_configure() { - local myeconfargs=( - --enable-ipv6 - --enable-largefile - --enable-pie - --enable-relro-now - --enable-tcp-fastopen - - --with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db - --with-logfile="${EPREFIX}"/var/log/nsd.log - --with-pidfile="${EPREFIX}"/run/nsd/nsd.pid - --with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state - --with-xfrdir="${EPREFIX}"/var/db/nsd - --with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list - --with-zonesdir="${EPREFIX}"/var/lib/nsd - - $(use_enable bind8-stats) - $(use_enable bind8-stats zone-stats) - $(use_enable debug checking) - $(use_enable dnstap) - $(use_enable minimal-responses) - $(use_enable mmap) - $(use_enable nsec3) - $(use_enable ratelimit) - $(use_enable root-server) - $(use_enable systemd) - $(use_with libevent) - $(use_with ssl) - ) - - econf "${myeconfargs[@]}" -} - -src_install() { - emake DESTDIR="${D}" install - - dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} - - newinitd "${FILESDIR}"/nsd.initd-r1 nsd - - # Install munin plugin and config - if use munin ; then - exeinto /usr/libexec/munin/plugins - doexe contrib/nsd_munin_ - insinto /etc/munin/plugin-conf.d - newins "${FILESDIR}"/nsd.munin-conf nsd_munin - fi - - systemd_dounit "${FILESDIR}"/nsd.service - - # Remove the /run directory that usually resides on tmpfs and is - # being taken care of by the nsd init script anyway (checkpath) - rm -r "${ED}"/run || die "Failed to remove /run" - - keepdir /var/db/${PN} -} - -pkg_postinst() { - # database directory, writable by nsd for database updates and zone transfers - install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd - - # zones directory, writable by nsd for zone file updates (nsd-control write) - install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd -} diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.9.1.ebuild index 3df2b6926da3..f18bd817fb51 100644 --- a/net-dns/nsd/nsd-4.9.1.ebuild +++ b/net-dns/nsd/nsd-4.9.1.ebuild @@ -101,7 +101,9 @@ src_configure() { --with-zonesdir="${EPREFIX}${NSD_ZNDIR}" ) - # This configure switch is only available on a glibc-based system. + # This configure switch only appears on glibc-based userlands. + # It enables 64-bit time_t to support timestamps greater than + # the year 2038 (D_TIME_BITS=64). if use elibc_glibc; then myconf+=( $(use_enable year2038) ) fi diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild index da8e10d8e3ac..099b81460652 100644 --- a/net-dns/nsd/nsd-9999.ebuild +++ b/net-dns/nsd/nsd-9999.ebuild @@ -52,10 +52,6 @@ PATCHES=( "${FILESDIR}/${PN}-munin-gentoo-paths.patch" ) -NSD_CONFD_VER="1" # Cur version of NSD's OpenRC conf.d file. -NSD_INITD_VER="2" # Cur version of NSD's OpenRC init.d script. -NSD_TMPFILESD_VER="1" # Cur version of NSD's tmpfiles.d config. - NSD_DBDIR="/var/db/nsd" # Default dir for NSD's databases. NSD_ZNDIR="/var/lib/nsd" # Default dir for NSD's zone files. @@ -113,7 +109,9 @@ src_configure() { ) fi - # This configure switch is only available on a glibc-based system. + # This configure switch only appears on glibc-based userlands. + # It enables 64-bit time_t to support timestamps greater than + # the year 2038 (D_TIME_BITS=64). if use elibc_glibc; then myconf+=( $(use_enable year2038) ) fi @@ -125,14 +123,14 @@ src_install() { emake DESTDIR="${D}" install dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} - newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd - newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd - newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf + newinitd "contrib/nsd.openrc" nsd + newconfd "contrib/nsd.openrc.conf" nsd + newtmpfiles "contrib/nsd-tmpfiles.conf" nsd.conf # Install munin plugin and config, if requested. if use munin ; then exeinto "/usr/libexec/munin/plugins" - doexe contrib/nsd_munin_ + doexe "contrib/nsd_munin_" insinto "/etc/munin/plugin-conf.d" newins "${FILESDIR}/nsd.munin-conf" nsd_munin fi -- cgit v1.2.3