From ab1a2cdee62e46bbfc647c76b595632ca434fbbc Mon Sep 17 00:00:00 2001 From: Sam James Date: Wed, 19 Aug 2026 20:11:57 +0100 Subject: [PATCH] net-dns/bind: add 9.20.27 Signed-off-by: Sam James --- net-dns/bind/Manifest | 2 + net-dns/bind/bind-9.20.27.ebuild | 288 +++++++++++++++++++++++++++++++ 2 files changed, 290 insertions(+) create mode 100644 net-dns/bind/bind-9.20.27.ebuild diff --git a/net-dns/bind/Manifest b/net-dns/bind/Manifest index b0ef1904ea923..84de24a2637c4 100644 --- a/net-dns/bind/Manifest +++ b/net-dns/bind/Manifest @@ -14,3 +14,5 @@ DIST bind-9.20.24.tar.xz 5854912 BLAKE2B 06fde034ef2d3f4432caf5d9a701f70f32dec94 DIST bind-9.20.24.tar.xz.asc 833 BLAKE2B 8dbbfe712f35929ab3edb2906ce732fe2a2427f64a225df37ea90ec60c7bf23678987c32cb99310c47938b20e561aa8b6205c22c04481a5bb0c6007d65bdcd61 SHA512 3e9bebcc3bf22402e81bb361e955d82973c307b2a3aee25e238e66956fc6e6ffe5fa46d37c2b500ebfadec24e5d6eb3b504d2008741384fddad65442035a8c33 DIST bind-9.20.26.tar.xz 5918032 BLAKE2B 433d5ed7457367ce5b195a7d1a6f3fef21f929b158b14e3c86d8dc2004240119e4ec3b1d3cab1121be66ec77463fcb462e1207ec3339cf46ca4eec05f8c366ef SHA512 6d90452d86bfbd1cd6c1301f8c2d9c2251402c81a03d45ab30217f5db05ab1ca6ca7e01fac3642bcd7e1866bd535763e9a9526886312eb5eaf4e532431a92931 DIST bind-9.20.26.tar.xz.asc 833 BLAKE2B 1d5b52adb8e8458d2b3050fbbee650770ad23b2dfbd5d8ca94fef8dd1d8631a1d97f7cb153e8560628cbb9ad35b87bf1cefdf1e4363a9a0ea2f92290f06d6edf SHA512 cca9944521ce45e456e2e04ad271a9df97e8772cb2f2cb8230b875fc39d893be20e3b957207ad11e211b5426b8ee4313131b073f06af8e0271db457b7caffb84 +DIST bind-9.20.27.tar.xz 5932248 BLAKE2B 7f2f0f030748e722d12800bae567f9cfb1ddeba712a8f3a2a1018572ef9be2a69c072cca2139cb723b928ebe62c502a2715ae0d4afab3d0ba526b0a5eb5e215e SHA512 e8b4c3cdbd7d03eb97303d3fa8496769fd5ec2ca323db621939af8096b06e352d9777e1c77403131c72e633d5008a4be49774581162ef421827df596e243a600 +DIST bind-9.20.27.tar.xz.asc 870 BLAKE2B e24deaa0cbc186b31b86e983e5c9f2c53550d8978d84e291d67027cf558d4b39b2fe6e217e3bc61685645bc249a1576087915980420a3336c67f6992ba05227a SHA512 255a523bb73c94e04c4cfd6b00a60bc57a1351767fef2421258e358ca5c13a359e53d1b6921792447b655aac7911fc22cd2ded8e5b114221c08fa7bc17d3a154 diff --git a/net-dns/bind/bind-9.20.27.ebuild b/net-dns/bind/bind-9.20.27.ebuild new file mode 100644 index 0000000000000..b6ce44a1852c1 --- /dev/null +++ b/net-dns/bind/bind-9.20.27.ebuild @@ -0,0 +1,288 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/isc.asc +inherit eapi9-ver systemd tmpfiles toolchain-funcs verify-sig + +MY_PV="${PV/_p/-P}" +MY_PV="${MY_PV/_rc/rc}" + +DESCRIPTION="Berkeley Internet Name Domain - Name Server" +HOMEPAGE="https://www.isc.org/bind/" +SRC_URI=" + https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz + verify-sig? ( https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz.asc ) +" +S="${WORKDIR}/${PN}-${MY_PV}" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="dnstap doc doh fixed-rrset idn jemalloc geoip gssapi lmdb selinux static-libs systemtap test xml" +RESTRICT="!test? ( test )" + +DEPEND=" + acct-group/named + acct-user/named + dev-libs/json-c:= + dev-libs/userspace-rcu:= + >=dev-libs/libuv-1.37.0:= + virtual/zlib:= + dev-libs/openssl:=[-bindist(-)] + >=sys-libs/libcap-2.1.0 + dnstap? ( + dev-libs/fstrm + dev-libs/protobuf-c + ) + doh? ( net-libs/nghttp2:= ) + geoip? ( dev-libs/libmaxminddb ) + gssapi? ( virtual/krb5 ) + idn? ( net-dns/libidn2 ) + jemalloc? ( dev-libs/jemalloc:= ) + lmdb? ( dev-db/lmdb ) + xml? ( dev-libs/libxml2:= ) +" +RDEPEND=" + ${DEPEND} + selinux? ( sec-policy/selinux-bind ) + sys-process/psmisc + !/dev/null; echo ${CHROOT}) + if [[ -n ${CHROOT} ]]; then + elog "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!" + elog "To enable the old behaviour (without using mount) uncomment the" + elog "CHROOT_NOMOUNT option in your /etc/conf.d/named config." + elog "If you decide to use the new/default method, ensure to make backup" + elog "first and merge your existing configs/zones to /etc/bind and" + elog "/var/bind because bind will now mount the needed directories into" + elog "the chroot dir." + fi + + # show only when upgrading to 9.18 + if ver_replacing -lt 9.18; then + elog "As this is a major bind version upgrade, please read:" + elog " https://kb.isc.org/docs/changes-to-be-aware-of-when-moving-from-bind-916-to-918" + elog "for differences in functionality." + elog "" + ewarn "In particular, please note that bind-9.18 does not need a root hints file anymore" + ewarn "and we only ship with one as a stop-gap. If your current configuration specifies a" + ewarn "root hints file - usually called named.cache - bind will not start as it will not be able" + ewarn "to find the specified file. Best practice is to delete the offending lines that" + ewarn "reference named.cache file from your configuration." + fi +} + +pkg_config() { + CHROOT=$(source "${EROOT}"/etc/conf.d/named; echo ${CHROOT}) + CHROOT_NOMOUNT=$(source "${EROOT}"/etc/conf.d/named; echo ${CHROOT_NOMOUNT}) + CHROOT_GEOIP=$(source "${EROOT}"/etc/conf.d/named; echo ${CHROOT_GEOIP}) + + if [[ -z "${CHROOT}" ]]; then + eerror "This config script is designed to automate setting up" + eerror "a chrooted bind/named. To do so, please first uncomment" + eerror "and set the CHROOT variable in '/etc/conf.d/named'." + die "Unset CHROOT" + fi + + if [[ -d "${CHROOT}" ]]; then + ewarn "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!" + ewarn "To enable the old behaviour (without using mount) uncomment the" + ewarn "CHROOT_NOMOUNT option in your /etc/conf.d/named config." + ewarn + ewarn "${CHROOT} already exists... some things might become overridden" + ewarn "press CTRL+C if you don't want to continue" + sleep 10 + fi + + echo; einfo "Setting up the chroot directory..." + + mkdir -m 0750 -p "${CHROOT}" || die + mkdir -m 0755 -p "${CHROOT}"/{dev,etc,var/log,run} || die + mkdir -m 0750 -p "${CHROOT}"/etc/bind || die + mkdir -m 0770 -p "${CHROOT}"/var/{bind,log/named,run/named} "${CHROOT}"/run/named/ || die + + chown root:named \ + "${CHROOT}" \ + "${CHROOT}"/var/{bind,log/named,run/named} \ + "${CHROOT}"/run/named/ \ + "${CHROOT}"/etc/bind \ + || die + + mknod "${CHROOT}"/dev/null c 1 3 || die + chmod 0666 "${CHROOT}"/dev/null || die + + mknod "${CHROOT}"/dev/zero c 1 5 || die + chmod 0666 "${CHROOT}"/dev/zero || die + + if [[ "${CHROOT_NOMOUNT:-0}" -ne 0 ]]; then + cp -a /etc/bind "${CHROOT}"/etc/ || die + cp -a /var/bind "${CHROOT}"/var/ || die + fi + + if [[ "${CHROOT_GEOIP:-0}" -eq 1 ]]; then + if use geoip; then + mkdir -m 0755 -p "${CHROOT}"/usr/share/GeoIP || die + elif use geoip2; then + mkdir -m 0755 -p "${CHROOT}"/usr/share/GeoIP2 || die + fi + fi + + elog "You may need to add the following line to your syslog-ng.conf:" + elog "source jail { unix-stream(\"${CHROOT}/dev/log\"); };" +}