forked from mirrors/nixpkgs
djbdns: fix root server list at build time
as suggested by @peterhoeg in
1b7e5eaa79 (commitcomment-24560631)
fixes #30379
This commit is contained in:
parent
6ec6af4625
commit
bbec429f7a
|
@ -18,10 +18,13 @@ let
|
|||
'') ips}
|
||||
'') cfg.domainServers)}
|
||||
|
||||
# djbdns contains an outdated list of root servers;
|
||||
# if one was not provided in config, provide a current list
|
||||
if [ ! -e servers/@ ]; then
|
||||
awk '/^.?.ROOT-SERVERS.NET/ { print $4 }' ${pkgs.dns-root-data}/root.hints > $out/servers/@
|
||||
# if a list of root servers was not provided in config, copy it
|
||||
# over. (this is also done by dnscache-conf, but we 'rm -rf
|
||||
# /var/lib/dnscache/root' below & replace it wholesale with this,
|
||||
# so we have to ensure servers/@ exists ourselves.)
|
||||
if [ ! -e $out/servers/@ ]; then
|
||||
# symlink does not work here, due chroot
|
||||
cp ${pkgs.djbdns}/etc/dnsroots.global $out/servers/@;
|
||||
fi
|
||||
'';
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, glibc } :
|
||||
{ stdenv, fetchurl, glibc, dns-root-data } :
|
||||
|
||||
let
|
||||
version = "1.05";
|
||||
|
@ -23,6 +23,8 @@ stdenv.mkDerivation {
|
|||
postPatch = ''
|
||||
echo gcc -O2 -include ${glibc.dev}/include/errno.h > conf-cc
|
||||
echo $out > conf-home
|
||||
# djbdns ships with an outdated list of root servers
|
||||
awk '/^.?.ROOT-SERVERS.NET/ { print $4 }' ${dns-root-data}/root.hints > dnsroots.global
|
||||
sed -i "s|/etc/dnsroots.global|$out/etc/dnsroots.global|" dnscache-conf.c
|
||||
'';
|
||||
|
||||
|
|
Loading…
Reference in a new issue