From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 9B71B158087 for ; Fri, 28 Jan 2022 15:46:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E97452BC017; Fri, 28 Jan 2022 15:46:48 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 6D9E52BC017 for ; Fri, 28 Jan 2022 15:46:48 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 46291342D01 for ; Fri, 28 Jan 2022 15:46:47 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 83E751EF for ; Fri, 28 Jan 2022 15:46:45 +0000 (UTC) From: "Lars Wendler" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Lars Wendler" Message-ID: <1643384786.9abd5417cc4e665885a352eb1eb15ae0b1652af9.polynomial-c@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-dns/nsd/nsd-9999.ebuild X-VCS-Directories: net-dns/nsd/ X-VCS-Committer: polynomial-c X-VCS-Committer-Name: Lars Wendler X-VCS-Revision: 9abd5417cc4e665885a352eb1eb15ae0b1652af9 X-VCS-Branch: master Date: Fri, 28 Jan 2022 15:46:45 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 5178ac33-c7b1-453d-8be5-67dd8699bfff X-Archives-Hash: ce9f55ae2969eca3d66f6865a4bf47d8 commit: 9abd5417cc4e665885a352eb1eb15ae0b1652af9 Author: Lars Wendler gentoo org> AuthorDate: Fri Jan 28 15:37:35 2022 +0000 Commit: Lars Wendler gentoo org> CommitDate: Fri Jan 28 15:46:26 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9abd5417 net-dns/nsd: Add live ebuild Signed-off-by: Lars Wendler gentoo.org> net-dns/nsd/nsd-9999.ebuild | 119 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild new file mode 100644 index 000000000000..a41057e6300d --- /dev/null +++ b/net-dns/nsd/nsd-9999.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2022 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="http://www.nlnetlabs.nl/projects/nsd" +LICENSE="BSD" +SLOT="0" +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}" + + [[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \ + KEYWORDS="~amd64 ~x86" + SRC_URI="http://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" + S="${WORKDIR}/${MY_P}" +fi +IUSE="bind8-stats dnstap ipv6 libevent minimal-responses mmap munin +nsec3 ratelimit root-server runtime-checks 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=" + sys-devel/flex + virtual/yacc + systemd? ( virtual/pkgconfig ) +" + +PATCHES=( + # Fix the paths in the munin plugin to match our install + "${FILESDIR}"/nsd_munin_.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-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 dnstap) + $(use_enable ipv6) + $(use_enable minimal-responses) + $(use_enable mmap) + $(use_enable nsec3) + $(use_enable ratelimit) + $(use_enable root-server) + $(use_enable runtime-checks checking) + $(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 +}