[packages/dnsdist] initial PLD release
gotar
gotar at pld-linux.org
Sat Sep 6 14:13:38 CEST 2025
commit 360a73f46d395015ac93e5add7a5294eb522453b
Author: Tomasz Pala <gotar at polanet.pl>
Date: Sat Sep 6 14:09:08 2025 +0200
initial PLD release
dnsdist.spec | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 114 insertions(+)
---
diff --git a/dnsdist.spec b/dnsdist.spec
new file mode 100644
index 0000000..2dd5ed7
--- /dev/null
+++ b/dnsdist.spec
@@ -0,0 +1,114 @@
+# TODO:
+# --with-net-snmp
+# Some resources are generated using ragel.
+Summary: Highly DNS-, DoS- and abuse-aware loadbalancer
+Name: dnsdist
+Version: 2.0.0
+Release: 1
+License: GPL v2
+Group: Networking/Daemons
+Source0: http://downloads.powerdns.com/releases/%{name}-%{version}.tar.xz
+# Source0-md5: b9a902167b42b564777402a9a678a7c7
+URL: https://www.dnsdist.org/
+BuildRequires: boost-devel >= 1.54.0
+BuildRequires: cargo >= 1.64
+BuildRequires: fstrm-devel
+# alternative to openssl-devel?
+BuildRequires: gnutls-devel >= 3.1.11
+# deprecated in 1.9.0 in favor of nghttp2
+#BuildRequires: h2o-devel
+BuildRequires: libbpf-devel
+BuildRequires: libcap-devel
+BuildRequires: libedit-devel
+BuildRequires: libsodium-devel
+BuildRequires: libxdp-devel
+BuildRequires: lmdb-devel
+BuildRequires: luajit-devel >= 2.0.2
+BuildRequires: nghttp2-devel
+BuildRequires: openssl-devel >= 3.0.0
+BuildRequires: pkgconfig >= 0.9.0
+BuildRequires: protobuf-devel
+BuildRequires: python3 >= 3.6
+# --enable-dns-over-quic --enable-dns-over-http3
+#BuildRequires: quiche-devel
+BuildRequires: re2-devel
+BuildRequires: systemd-devel
+BuildRequires: tinycdb-devel
+Requires(post): sed >= 4.0
+Requires(post,preun): /sbin/chkconfig
+Requires(post,preun,postun): systemd-units
+Requires(postun): /usr/sbin/groupdel
+Requires(postun): /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
+Requires: rc-scripts
+Requires: systemd-units
+Provides: group(djbdns)
+Provides: nameserver
+Provides: user(pdns)
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+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.
+
+%prep
+%setup -q
+
+%build
+%{__libtoolize}
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
+%configure \
+ --sysconfdir=%{_sysconfdir}/%{name} \
+ --with-service-group=djbdns \
+ --with-service-user=pdns \
+ --enable-dnscrypt \
+ --enable-dns-over-tls \
+ --enable-dns-over-https \
+ --enable-yaml \
+ --with-re2
+# experimental:
+# --enable-tls-providers
+
+%{__make} V=1
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} install \
+ SYSTEMD_DIR=%{systemdunitdir} \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%pre
+%groupadd -g 32 djbdns
+%useradd -u 30 -d /var/lib/pdns -s /bin/false -c "pdns User" -g djbdns pdns
+
+%post
+%systemd_post %{name}.service
+
+%preun
+%systemd_preun %{name}.service
+
+%postun
+if [ "$1" = "0" ]; then
+ %userremove pdns
+ %groupremove djbdns
+fi
+%systemd_reload
+
+%files
+%defattr(644,root,root,755)
+%doc README docs
+%{_sysconfdir}/%{name}
+%{systemdunitdir}/%{name}*.service
+%attr(755,root,root) %{_bindir}/%{name}
+%{_mandir}/man1/%{name}.1*
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/dnsdist.git/commitdiff/360a73f46d395015ac93e5add7a5294eb522453b
More information about the pld-cvs-commit
mailing list