Thanks for reminding me of that. I "know" it, but don't always think of it. My initial reaction was "I wonder what the problem is... binary distros seem to still be doing it."sam_ wrote:Binary distributions have the advantage of being able to build something once from source and then split up the resultant image (even with hacks) and it being normal in their culture.
Code: Select all
root@client02 ~ $ cat /etc/portage/env/net-dns/bind
INSTALL_MASK="/etc/*"
INSTALL_MASK="${INSTALL_MASK} /usr/bin/dnssec-* /usr/bin/named-* /usr/bin/nsec3hash /usr/bin/nslookup"
INSTALL_MASK="${INSTALL_MASK} /usr/include/*"
INSTALL_MASK="${INSTALL_MASK} /usr/lib/*"
INSTALL_MASK="${INSTALL_MASK} /usr/lib64/bind/*"
INSTALL_MASK="${INSTALL_MASK} /usr/libexec/*"
INSTALL_MASK="${INSTALL_MASK} /usr/sbin/ddns-confgen /usr/sbin/named /usr/sbin/rndc-confgen /usr/sbin/tsig-keygen"
INSTALL_MASK="${INSTALL_MASK} /var/*"
pkg_postinst() { return; }
Code: Select all
init=/sbin/openrc-init
-systemd -logind -elogind seatdI am NaN! I am a man!
That seems a bit strange to me. BIND (Berkeley Internet Name Daemon) is actually the server package, so making the server optional is a bit like "Lets install sys-kernel/gentoo-sources, but don't install the kernel sources".Zucca wrote:My preferred way would be to have USE="server" for bind package. But if that could possibly cause a lot of breakages, then better to just go "all-in" and have the server stuff come along. I know some people like to drop all the unnecessary bits off to limit possible attack vectors...
I haven't dug enough deep to say which is the better option from packager's perspective, so I trust sam_ on this.
Just like I do. ;)pa4wdh wrote:...i accept the server as unnecessary install since i really like the tools, especially dig.
Maybe upstream should create another project: BINT. ;)pa4wdh wrote:BIND (Berkeley Internet Name Daemon) is actually the server package
Code: Select all
init=/sbin/openrc-init
-systemd -logind -elogind seatdI am NaN! I am a man!

Well, they do set things up by bin filesZucca wrote:If I have understood correctly upstream doesn't have separate "make targets" for tools/utils and server.
So to really have this problem properly solved, one would need to patch some files to have separate build instructions for each of the parts.
Code: Select all
$ cat /etc/portage/patches/net-dns/bind/bind-tools.patch
--- a/bin/Makefile.am 2025-11-07 06:29:54.596158548 -0600
+++ b/bin/Makefile.am 2026-01-20 11:04:09.781429877 -0600
@@ -1 +1 @@
-SUBDIRS = named rndc dig delv dnssec tools nsupdate check confgen tests plugins
+SUBDIRS = dig delv dnssec nsupdate check confgen tests
drill is indeed a great alternative.RumpletonBongworth wrote:The (smaller) net-libs/ldns package provides the drill(1) utility, whose functionality is similar to that of dig(1). It is also better implemented, in my estimation.
Similar case with knot. "net-dns/knot -* utils" installs the tools including kdig but it requires shared libs anyway (libknot.so, libdnssec.so, libgnutls).sam_ wrote:When porting the ebuild to Meson, we could look at using install tags for components, but the value in this depends again on the internal structure and whether some libbind or whatever is being built regardless.
That's easy. Add an install mask for that and you're good to go.dmpogo wrote:Interesting, for me the most regression is not even extra disk space, but to have entries in /etc/init.d and /etc which correspond to subsystem that is not needed on this machine.
I sometimes consult this directories to see what I may have forgotten to configure or maybe need, and feel better with a shorter list
Code: Select all
emerge --deselect bind-tools
emerge --noreplace bind
emerge -ca
ldns homepage wrote:Development Vision
ldns has been in maintenance mode since 2020.
In principle we only perform basic maintenance and bug fixes on ldns. This could for example be for a research project or an IETF Hackathon. We do not strive for ldns to be a comprehensive library that supports every (emerging) standard.
Successors
- The natural successor to the ldns library is the domain library for Rust
- We offer drop-in replacements for commonly used ldns example utilities in dnst
- ldns includes a DNS lookup utility named drill. We have reimagined the functionality and output of such a DNS inspection tool in dnsi, with a focus on usability.
Code: Select all
init=/sbin/openrc-init
-systemd -logind -elogind seatdI am NaN! I am a man!
Yes. I didn't mean it was unsafe to use it, just that there is no "motivation" for adding new features to ldns, but rather to other tools mentioned in the message.nicop wrote:Yes, but releases, PR merged, bugfixes...ldns has been in maintenance mode since 2020.
Code: Select all
init=/sbin/openrc-init
-systemd -logind -elogind seatdI am NaN! I am a man!