Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 420013

Summary: net-dns/ndjbdns - djbdns without daemontools
Product: Gentoo Linux Reporter: Jason A. Donenfeld <zx2c4>
Component: New packagesAssignee: Default Assignee for New Packages <maintainer-wanted>
Status: UNCONFIRMED ---    
Severity: normal CC: jer, mrueg, subscryer
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---
Attachments: ndjbdns-1.05.4.ebuild

Description Jason A. Donenfeld archtester Gentoo Infrastructure gentoo-dev Security 2012-06-07 01:15:58 UTC
While some people really love daemontools, most people prefer to use the native logging and init systems provided by the distro. The current djbdns package relies on daemontools, which adds /etc/init.d/svscan, which then starts up an entire secondary service monitoring situation. Wouldn't it be nice if djbdns just played by the Linux rules, without sacrificing security?

Some people at Fedora, evidently, got fed up over this and decided to maintain ndjbdns -- a djbdns that's been tamed to work with the usual Linux setup. They provide systemd scripts and classic sysv init scripts, and it should be trivial to add openrc scripts. Most of all, the whole system integrates nicely into the FHS, and it's really the type of djbdns we should be shipping here.

How would you feel about supporting this?
Comment 1 Jason A. Donenfeld archtester Gentoo Infrastructure gentoo-dev Security 2012-06-07 01:17:14 UTC

By the way, the build system is just ordinary autotools.

The fedora spec is wonderfully simple:;a=blob;f=ndjbdns.spec;h=b9c3a036df3e89052cc44a756e9590f6b28fafad;hb=HEAD

I suspect our ebuild will be even simpler.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2012-06-07 02:14:46 UTC
It's a fork so let's not say djbdns needs to transition - this would simply be another package in the tree and the old can stay exactly as it is.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2012-06-07 02:35:03 UTC
Created attachment 314495 [details]

Basic ebuild, includes one Gentoo specific fix (via sed) and one patch for upstream.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2012-06-07 02:36:12 UTC
Created attachment 314497 [details]

Fixes a couple of missing includes:

 * QA Notice: Package triggers severe warnings which indicate that it
 *            may exhibit random runtime failures.
 * dnscache-conf.c:111:5: warning: implicit declaration of function ‘strlen’
 * dnscache-conf.c:115:5: warning: implicit declaration of function ‘sprintf’
 * dnscache-conf.c:116:5: warning: implicit declaration of function ‘printf’
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2012-06-07 02:37:52 UTC
Now all this needs is a couple of init.d scripts, which is where this package actually deviates from djbdns.
Comment 6 Jason A. Donenfeld archtester Gentoo Infrastructure gentoo-dev Security 2012-06-07 02:39:28 UTC
Looks great.

Possible TODOs:
- OpenRC scripts
- Not installing the included SysV scripts
- Possibly integrating with the somewhat partially unofficially supported systemd support in gentoo to plop those .service files into the right place
- IPv6 support

As for the last item, net-dns/djbdns provides this via a series of patches, that I'm not sure whether or not they apply over ndjbdns. There was an old comment about upstream potentially supporting this at some point, so I've emailed the upstream authors to inquire about the status and current support. I'll report back what I hear.