summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfram Schlich <wschlich@gentoo.org>2013-01-30 10:43:02 +0000
committerWolfram Schlich <wschlich@gentoo.org>2013-01-30 10:43:02 +0000
commit1cdfaecd7e49a74af7d7a5f440f12f5e2fda26a6 (patch)
tree143197e3679b3ad804bd064ab7f474b925350261 /net-dns/nsd
parentUse (-) USE-defaults to reduce issues from removing flags. (diff)
downloadgentoo-2-1cdfaecd7e49a74af7d7a5f440f12f5e2fda26a6.tar.gz
gentoo-2-1cdfaecd7e49a74af7d7a5f440f12f5e2fda26a6.tar.bz2
gentoo-2-1cdfaecd7e49a74af7d7a5f440f12f5e2fda26a6.zip
initial import, ebuild by Tom Hendrikx <tom@whyscream.net> (see bug #128246)
(Portage version: 2.2.0_alpha151/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'net-dns/nsd')
-rw-r--r--net-dns/nsd/ChangeLog9
-rw-r--r--net-dns/nsd/files/nsd.initd57
-rw-r--r--net-dns/nsd/metadata.xml28
-rw-r--r--net-dns/nsd/nsd-4.0.0_beta3.ebuild74
4 files changed, 168 insertions, 0 deletions
diff --git a/net-dns/nsd/ChangeLog b/net-dns/nsd/ChangeLog
new file mode 100644
index 000000000000..5f97f5db6cb0
--- /dev/null
+++ b/net-dns/nsd/ChangeLog
@@ -0,0 +1,9 @@
+# ChangeLog for net-dns/nsd
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-dns/nsd/ChangeLog,v 1.1 2013/01/30 10:43:01 wschlich Exp $
+
+*nsd-4.0.0_beta3 (30 Jan 2013)
+
+ 30 Jan 2013; Wolfram Schlich <wschlich@gentoo.org> +files/nsd.initd,
+ +metadata.xml, +nsd-4.0.0_beta3.ebuild:
+ initial import, ebuild by Tom Hendrikx <tom@whyscream.net> (see bug #128246)
diff --git a/net-dns/nsd/files/nsd.initd b/net-dns/nsd/files/nsd.initd
new file mode 100644
index 000000000000..ffc283c2d64a
--- /dev/null
+++ b/net-dns/nsd/files/nsd.initd
@@ -0,0 +1,57 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dns/nsd/files/nsd.initd,v 1.1 2013/01/30 10:43:02 wschlich Exp $
+
+description="NSD is an authoritative-only, high performance, open source name server"
+extra_commands="configtest"
+
+# these can be overridden in /etc/conf.d/nsd if necessary
+NSD_CONFIG="${NSD_CONFIG:-/etc/nsd/nsd.conf}"
+NSD_BINARY="${NSD_BINARY:-/usr/sbin/nsd}"
+NSD_CHECKCONF="${NSD_CHECKCONF:-/usr/sbin/nsd-checkconf}"
+
+depend() {
+ need net
+ use logger
+}
+
+configtest() {
+ ebegin "Checking ${SVCNAME} configuration"
+ checkconfig
+ eend $?
+}
+
+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 (${config_file})"
+ return $?
+ fi
+ return 0
+}
+
+start() {
+ ebegin "Starting NSD"
+
+ checkconfig || return $?
+ local pidfile=$("${NSD_CHECKCONF}" -o pidfile "${NSD_CONFIG}")
+ checkpath --directory --owner nsd:nsd $(dirname "${pidfile}")
+
+ start-stop-daemon --start --pidfile "${pidfile}" \
+ --exec "${NSD_BINARY}" -- -c "${NSD_CONFIG}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping NSD"
+
+ checkconfig || return $?
+ local pidfile=$("${NSD_CHECKCONF}" -o pidfile "${NSD_CONFIG}")
+
+ start-stop-daemon --stop --pidfile "${pidfile}"
+ eend $?
+}
diff --git a/net-dns/nsd/metadata.xml b/net-dns/nsd/metadata.xml
new file mode 100644
index 000000000000..e16ce939dce9
--- /dev/null
+++ b/net-dns/nsd/metadata.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>tom@whyscream.net</email>
+ <name>Tom Hendrikx</name>
+ <description>Please assign bugs</description>
+ </maintainer>
+ <maintainer>
+ <email>wschlich@gentoo.org</email>
+ <name>Wolfram Schlich</name>
+ <description>proxy-maintainer, please CC on bugs</description>
+ </maintainer>
+ <use>
+ <flag name='bind8-stats'>Enables BIND8 like NSTATS and XSTATS</flag>
+ <flag name='libevent'>Use libevent or libev, useful when zone
+ count is high</flag>
+ <flag name='minimal-responses'>If minimal responses are disabled,
+ responses are more likely to get truncated, resulting in TCP
+ fallback</flag>
+ <flag name='nsec3'>Enable NSEC3 support</flag>
+ <flag name='ratelimit'>Enables ratelimiting, based on query name,
+ type and source</flag>
+ <flag name='root-server'>Configure NSD as a root server</flag>
+ <flag name='runtime-checks'>Enable runtime checks, this could lead
+ to a reduced service level</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-dns/nsd/nsd-4.0.0_beta3.ebuild b/net-dns/nsd/nsd-4.0.0_beta3.ebuild
new file mode 100644
index 000000000000..627bf052adbd
--- /dev/null
+++ b/net-dns/nsd/nsd-4.0.0_beta3.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dns/nsd/nsd-4.0.0_beta3.ebuild,v 1.1 2013/01/30 10:43:01 wschlich Exp $
+
+EAPI=4
+
+inherit user
+
+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=${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 +nsec3 ratelimit root-server runtime-checks ssl"
+
+RDEPEND="
+ dev-libs/openssl
+ virtual/yacc
+ libevent? ( dev-libs/libevent )
+ ssl? ( dev-libs/openssl )
+"
+DEPEND="
+ ${RDEPEND}
+ sys-devel/flex
+"
+
+pkg_setup() {
+ enewgroup nsd
+ enewuser nsd -1 -1 -1 nsd
+}
+
+src_configure() {
+ econf \
+ --enable-largefile \
+ --with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db \
+ --with-logfile="${EPREFIX}"/var/log/nsd.log \
+ --with-pidfile="${EPREFIX}"/run/nsd/nsd.pid \
+ --with-xfrdir="${EPREFIX}"/var/db/nsd \
+ --with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.db \
+ $(use_enable bind8-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
+
+ # database directory, writable by nsd for zone updates and transfers
+ dodir /var/db/nsd
+ fowners nsd:nsd /var/db/nsd
+ fperms 750 /var/db/nsd
+
+ # remove the /run directory that usually resides on tmpfs and is
+ # being taken care of by the nsd init script anyway (checkpath)
+ rm -rf "${D}"/run || die "Failed to remove /run"
+}