diff options
author | Sam James <sam@gentoo.org> | 2022-06-29 17:39:24 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2022-06-29 17:49:21 +0000 |
commit | 93228c2489743e2c043c4243967b4732a82c4de7 (patch) | |
tree | 90c7196c25a418dc47d9cbeb1a2068ef22b2d19a /net-dns | |
parent | net-dns/nsd: drop 4.3.9, 4.4.0 (diff) | |
download | gentoo-93228c2489743e2c043c4243967b4732a82c4de7.tar.gz gentoo-93228c2489743e2c043c4243967b4732a82c4de7.tar.bz2 gentoo-93228c2489743e2c043c4243967b4732a82c4de7.zip |
net-dns/nsd: modernise
- Use more skel.ebuild-like structure
- Use HTTPS
- Drop USE=ipv6 (introduces no deps)
- Rename USE=runtime-checks -> USE=debug (it's for controlling assertions)
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-dns')
-rw-r--r-- | net-dns/nsd/nsd-4.5.0-r1.ebuild | 127 | ||||
-rw-r--r-- | net-dns/nsd/nsd-9999.ebuild | 36 |
2 files changed, 149 insertions, 14 deletions
diff --git a/net-dns/nsd/nsd-4.5.0-r1.ebuild b/net-dns/nsd/nsd-4.5.0-r1.ebuild new file mode 100644 index 000000000000..d3d5d3b51e9d --- /dev/null +++ b/net-dns/nsd/nsd-4.5.0-r1.ebuild @@ -0,0 +1,127 @@ +# 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="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=" + 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-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-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild index a41057e6300d..d3d5d3b51e9d 100644 --- a/net-dns/nsd/nsd-9999.ebuild +++ b/net-dns/nsd/nsd-9999.ebuild @@ -6,10 +6,9 @@ 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 +HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd" + +if [[ ${PV} == *9999 ]] ; then inherit git-r3 EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git" else @@ -18,12 +17,17 @@ else 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}" + 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 -IUSE="bind8-stats dnstap ipv6 libevent minimal-responses mmap munin +nsec3 ratelimit root-server runtime-checks ssl systemd" + +LICENSE="BSD" +SLOT="0" +IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd" RDEPEND=" acct-group/nsd @@ -51,17 +55,20 @@ PATCHES=( src_prepare() { default + # Required to get correct pkg-config macros with USE="systemd" - # see bugs #663618 and #758050 + # 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 @@ -69,20 +76,21 @@ src_configure() { --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 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[@]}" } @@ -93,7 +101,7 @@ src_install() { newinitd "${FILESDIR}"/nsd.initd-r1 nsd - # install munin plugin and config + # Install munin plugin and config if use munin ; then exeinto /usr/libexec/munin/plugins doexe contrib/nsd_munin_ @@ -103,7 +111,7 @@ src_install() { systemd_dounit "${FILESDIR}"/nsd.service - # remove the /run directory that usually resides on tmpfs and is + # 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" |