public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Schuerch" <nativemad@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-dns/dnsdist/
Date: Mon, 19 Feb 2024 18:52:58 +0000 (UTC)	[thread overview]
Message-ID: <1708368637.cd27b48e1fbc51a086a41f1325b2fedb5b0e12f3.nativemad@gentoo> (raw)

commit:     cd27b48e1fbc51a086a41f1325b2fedb5b0e12f3
Author:     Andreas Schuerch <nativemad <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 19 18:47:12 2024 +0000
Commit:     Andreas Schuerch <nativemad <AT> gentoo <DOT> org>
CommitDate: Mon Feb 19 18:50:37 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd27b48e

net-dns/dnsdist: 1.9.0-r1 update EAPI 7 -> 8, new useflags and several fixes all over.
Thanks Holger Hoffstätte and Joonas Niilola for all the inputs!

Closes: https://github.com/gentoo/gentoo/pull/35413

Signed-off-by: Andreas Schuerch <nativemad <AT> gentoo.org>

 net-dns/dnsdist/dnsdist-1.9.0-r1.ebuild | 111 ++++++++++++++++++++++++++++++++
 net-dns/dnsdist/metadata.xml            |  21 ++++--
 2 files changed, 127 insertions(+), 5 deletions(-)

diff --git a/net-dns/dnsdist/dnsdist-1.9.0-r1.ebuild b/net-dns/dnsdist/dnsdist-1.9.0-r1.ebuild
new file mode 100644
index 000000000000..473717e4807a
--- /dev/null
+++ b/net-dns/dnsdist/dnsdist-1.9.0-r1.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit flag-o-matic lua-single
+
+DESCRIPTION="A highly DNS-, DoS- and abuse-aware loadbalancer"
+HOMEPAGE="https://dnsdist.org"
+
+SRC_URI="https://downloads.powerdns.com/releases/${P}.tar.bz2"
+KEYWORDS="~amd64 ~x86"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="bpf cdb dnscrypt dnstap doh doh3 ipcipher lmdb quic regex snmp +ssl systemd test web xdp"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${LUA_REQUIRED_USE}
+		dnscrypt? ( ssl )
+		doh? ( ssl )
+		doh3? ( ssl quic )
+		ipcipher? ( ssl )
+		quic? ( ssl )"
+
+RDEPEND="acct-group/dnsdist
+	acct-user/dnsdist
+	bpf? ( dev-libs/libbpf:= )
+	cdb? ( dev-db/tinycdb:= )
+	dev-libs/boost:=
+	sys-libs/libcap
+	dev-libs/libedit
+	dev-libs/libsodium:=
+	dnstap? ( dev-libs/fstrm )
+	doh? ( net-libs/nghttp2:= )
+	doh3? ( net-libs/quiche:= )
+	lmdb? ( dev-db/lmdb:= )
+	quic? ( net-libs/quiche )
+	regex? ( dev-libs/re2:= )
+	snmp? ( net-analyzer/net-snmp:= )
+	ssl? ( dev-libs/openssl:= )
+	systemd? ( sys-apps/systemd:0= )
+	xdp? ( net-libs/xdp-tools )
+	${LUA_DEPS}
+"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+	default
+
+	# clean up duplicate file
+	rm -f README.md
+}
+
+src_configure() {
+	# bug #822855
+	append-lfs-flags
+
+	# some things can only be enabled/disabled by defines
+	! use dnstap && append-cppflags -DDISABLE_PROTOBUF
+	! use web && append-cppflags -DDISABLE_BUILTIN_HTML
+
+	sed 's/hardcode_libdir_flag_spec_CXX='\''$wl-rpath $wl$libdir'\''/hardcode_libdir_flag_spec_CXX='\''$wl-rpath $wl\/$libdir'\''/g' \
+		-i "${S}/configure"
+
+	local myeconfargs=(
+		--sysconfdir=/etc/dnsdist
+		--with-lua="${ELUA}"
+		--without-h2o
+		--enable-tls-providers
+		--without-gnutls
+		$(use_with bpf ebpf)
+		$(use_with cdb cdb)
+		$(use_enable doh dns-over-https)
+		$(use_enable doh3 dns-over-http3)
+		$(use_enable dnscrypt)
+		$(use_enable dnstap)
+		$(use_enable ipcipher)
+		$(use_with lmdb )
+		$(use_enable quic dns-over-quic)
+		$(use_with regex re2)
+		$(use_with snmp net-snmp)
+		$(use_enable ssl dns-over-tls)
+		$(use_enable systemd) \
+		$(use_enable test unit-tests)
+		$(use_with xdp xsk)
+	)
+
+	econf "${myeconfargs[@]}"
+}
+
+src_install() {
+	default
+
+	insinto /etc/dnsdist
+	doins "${FILESDIR}"/dnsdist.conf.example
+
+	newconfd "${FILESDIR}"/dnsdist.confd ${PN}
+	newinitd "${FILESDIR}"/dnsdist.initd ${PN}
+}
+
+pkg_postinst() {
+	elog "dnsdist provides multiple instances support. You can create more instances"
+	elog "by symlinking the dnsdist init script to another name."
+	elog
+	elog "The name must be in the format dnsdist.<suffix> and dnsdist will use the"
+	elog "/etc/dnsdist/dnsdist-<suffix>.conf configuration file instead of the default."
+}

diff --git a/net-dns/dnsdist/metadata.xml b/net-dns/dnsdist/metadata.xml
index 3b1c4911d481..c0cba7b1344e 100644
--- a/net-dns/dnsdist/metadata.xml
+++ b/net-dns/dnsdist/metadata.xml
@@ -5,20 +5,31 @@
 		<email>nativemad@gentoo.org</email>
 		<name>Andreas Schuerch</name>
 	</maintainer>
+	<maintainer type="person" proxied="yes">
+		<email>holger@applied-asynchrony.com</email>
+		<name>Holger Hoffstätte</name>
+	</maintainer>
+	<maintainer type="project" proxied="proxy">
+		<email>proxy-maint@gentoo.org</email>
+		<name>Proxy Maintainers</name>
+	</maintainer>
 	<longdescription lang="en">
 		dnsdist is a highly DNS-, DoS- and abuse-aware loadbalancer. Its goal in life is to route traffic to the best server, delivering top performance to legitimate users while shunting or blocking abusive traffic.
 	</longdescription>
 	<use>
+		<flag name="bpf">Enable support for eBPF socket filtering</flag>
 		<flag name="dnscrypt">Enable the ability to act as a DNSCrypt server</flag>
-		<flag name="regex">Enable support for regular expression matching via <pkg>dev-libs/re2</pkg></flag>
-		<flag name="remote-logging">Enable support for remote logging via <pkg>dev-libs/protobuf</pkg></flag>
-		<flag name="ssl">Enable support for and encrypted client-server communication via <pkg>dev-libs/libsodium</pkg></flag>
+		<flag name="dnstap">Enable support for dnstap</flag>
 		<flag name="doh">Enable support for dns over http via <pkg>net-libs/nghttp2</pkg></flag>
 		<flag name="doh3">Enable support for dns over http3 via <pkg>net-libs/quiche</pkg></flag>
-		<flag name="dnstap">Enable support for dnstap</flag>
+		<flag name="ipcipher">Enable support for ipcipher via <pkg>dev-libs/openssl</pkg></flag>
 		<flag name="lmdb">Enable support for lmdb</flag>
 		<flag name="quic">Enable support for dns over quic via <pkg>net-libs/quiche</pkg></flag>
-		<flag name="ipcipher">Enable support for ipcipher via <pkg>dev-libs/openssl</pkg></flag>
+		<flag name="regex">Enable support for regular expression matching via <pkg>dev-libs/re2</pkg></flag>
+		<flag name="remote-logging">Enable support for remote logging via <pkg>dev-libs/protobuf</pkg></flag>
+		<flag name="ssl">Enable support for and encrypted client-server communication via <pkg>dev-libs/libsodium</pkg></flag>
+		<flag name="web">Enable support for the web UI</flag>
+		<flag name="xdp">Enable support for AF_XDP high performance packet processing</flag>
 	</use>	
 	<upstream>
 		<remote-id type="github">PowerDNS/pdns</remote-id>


             reply	other threads:[~2024-02-19 18:53 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-19 18:52 Andreas Schuerch [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-12-27 12:25 [gentoo-commits] repo/gentoo:master commit in: net-dns/dnsdist/ Andreas Schuerch
2024-10-06  7:57 Andreas Schuerch
2024-09-08  8:53 Sam James
2024-08-04 15:50 Andreas Schuerch
2024-07-03 15:39 Andreas Schuerch
2024-05-14 12:14 Andreas Schuerch
2024-05-14 12:12 Andreas Schuerch
2024-04-09 10:34 Andreas Schuerch
2024-04-09 10:32 Andreas Schuerch
2024-02-18 11:17 Andreas Schuerch
2023-09-11 13:21 Andreas Schuerch
2023-09-11 13:20 Andreas Schuerch
2023-04-18  6:00 Sam James
2023-04-02 19:44 Andreas Schuerch
2023-01-27  8:35 Joonas Niilola
2023-01-27  8:35 Joonas Niilola
2022-11-05 10:20 Andreas Schuerch
2022-06-25  9:03 Andreas Schuerch
2022-06-08  3:00 Sam James
2022-06-08  2:57 Sam James
2022-04-27 12:14 Andreas Schuerch
2022-04-27 12:14 Andreas Schuerch
2022-01-22 14:03 Andreas Schuerch
2021-09-21 17:15 Andreas Schuerch
2021-05-17 15:47 Andreas Schuerch
2021-03-26 19:46 Conrad Kostecki
2020-10-02 13:26 Andreas Schuerch
2020-01-15 10:27 Andreas Schuerch
2019-03-28 20:40 Andreas Schuerch
2018-04-05 15:21 Aaron Bauman
2017-10-28  9:53 Patrice Clement
2017-10-28  9:53 Patrice Clement
2017-06-30 20:17 Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1708368637.cd27b48e1fbc51a086a41f1325b2fedb5b0e12f3.nativemad@gentoo \
    --to=nativemad@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox