diff options
Diffstat (limited to 'net-dns/nsd/nsd-4.1.11.ebuild')
-rw-r--r-- | net-dns/nsd/nsd-4.1.11.ebuild | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/net-dns/nsd/nsd-4.1.11.ebuild b/net-dns/nsd/nsd-4.1.11.ebuild new file mode 100644 index 000000000000..59948d2380f5 --- /dev/null +++ b/net-dns/nsd/nsd-4.1.11.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit user systemd + +DESCRIPTION="An authoritative only, high performance, open source name server" +HOMEPAGE="http://www.nlnetlabs.nl/projects/nsd" +# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1 +MY_PV=${PV/_rc/rc} +MY_PV=${MY_PV/_beta/b} +MY_P=${PN}-${MY_PV} +S="${WORKDIR}/${MY_P}" +SRC_URI="http://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="bind8-stats ipv6 libevent minimal-responses mmap munin +nsec3 ratelimit root-server runtime-checks ssl libressl" + +RDEPEND=" + virtual/yacc + libevent? ( dev-libs/libevent ) + ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) ) + munin? ( net-analyzer/munin ) +" +DEPEND=" + ${RDEPEND} + sys-devel/flex +" + +src_prepare() { + # Fix the paths in the munin plugin to match our install + eapply "${FILESDIR}"/nsd_munin_.patch + eapply_user +} + +src_configure() { + econf \ + --enable-pie \ + --enable-relro-now \ + --enable-largefile \ + --with-logfile="${EPREFIX}"/var/log/nsd.log \ + --with-pidfile="${EPREFIX}"/run/nsd/nsd.pid \ + --with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db \ + --with-xfrdir="${EPREFIX}"/var/db/nsd \ + --with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state \ + --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 ipv6) \ + $(use_enable minimal-responses) \ + $(use_enable mmap) \ + $(use_enable nsec3) \ + $(use_enable ratelimit) \ + $(use_enable root-server) \ + $(use_enable runtime-checks checking) \ + $(use_with libevent) \ + $(use_with ssl) +} + +src_install() { + emake DESTDIR="${D}" install + + dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS} + + newinitd "${FILESDIR}"/nsd.initd 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" +} + +pkg_postinst() { + # Do this in postinst to ensure the uid/gid is consistent for binpkgs + enewgroup nsd + enewuser nsd -1 -1 -1 nsd + + # 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 +} |