diff --git a/pkgs/servers/dns/bind/default.nix b/pkgs/servers/dns/bind/default.nix index 2aae5634cc5ea1..7937324b24cbaf 100644 --- a/pkgs/servers/dns/bind/default.nix +++ b/pkgs/servers/dns/bind/default.nix @@ -1,6 +1,6 @@ { config, stdenv, lib, fetchurl, fetchpatch -, perl -, libcap, libtool, libxml2, openssl +, perl, pkg-config +, libcap, libtool, libxml2, openssl, libuv , enablePython ? config.bind.enablePython or false, python3 ? null , enableSeccomp ? false, libseccomp ? null, buildPackages }: @@ -10,11 +10,11 @@ assert enablePython -> python3 != null; stdenv.mkDerivation rec { pname = "bind"; - version = "9.14.12"; + version = "9.16.7"; src = fetchurl { - url = "https://ftp.isc.org/isc/bind9/${version}/${pname}-${version}.tar.gz"; - sha256 = "1j7ldvdschmvzxrbajjhmdsl2iqxc1lm64vk0a5sdykxpy9y8kcw"; + url = "https://downloads.isc.org/isc/bind9/${version}/${pname}-${version}.tar.xz"; + sha256 = "1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz"; }; outputs = [ "out" "lib" "dev" "man" "dnsutils" "host" ]; @@ -24,8 +24,8 @@ stdenv.mkDerivation rec { ./remove-mkdir-var.patch ]; - nativeBuildInputs = [ perl ]; - buildInputs = [ libtool libxml2 openssl ] + nativeBuildInputs = [ perl pkg-config ]; + buildInputs = [ libtool libxml2 openssl libuv ] ++ lib.optional stdenv.isLinux libcap ++ lib.optional enableSeccomp libseccomp ++ lib.optional enablePython (python3.withPackages (ps: with ps; [ ply ])); @@ -35,8 +35,6 @@ stdenv.mkDerivation rec { configureFlags = [ "--localstatedir=/var" "--with-libtool" - "--with-libxml2=${libxml2.dev}" - "--with-openssl=${openssl.dev}" (if enablePython then "--with-python" else "--without-python") "--without-atf" "--without-dlopen" @@ -59,7 +57,6 @@ stdenv.mkDerivation rec { postInstall = '' moveToOutput bin/bind9-config $dev - moveToOutput bin/isc-config.sh $dev moveToOutput bin/host $host @@ -68,7 +65,7 @@ stdenv.mkDerivation rec { moveToOutput bin/nslookup $dnsutils moveToOutput bin/nsupdate $dnsutils - for f in "$lib/lib/"*.la "$dev/bin/"{isc-config.sh,bind*-config}; do + for f in "$lib/lib/"*.la "$dev/bin/"bind*-config; do sed -i "$f" -e 's|-L${openssl.dev}|-L${openssl.out}|g' done ''; diff --git a/pkgs/servers/dns/bind/dont-keep-configure-flags.patch b/pkgs/servers/dns/bind/dont-keep-configure-flags.patch index 17fdb15ad46097..ceb887e678eb5c 100644 --- a/pkgs/servers/dns/bind/dont-keep-configure-flags.patch +++ b/pkgs/servers/dns/bind/dont-keep-configure-flags.patch @@ -1,40 +1,37 @@ -diff --git a/bin/named/include/named/globals.h b/bin/named/include/named/globals.h -index b8e356b..cbe6c94 100644 ---- a/bin/named/include/named/globals.h -+++ b/bin/named/include/named/globals.h -@@ -68,7 +68,9 @@ EXTERN const char * named_g_version INIT(VERSION); - EXTERN const char * named_g_product INIT(PRODUCT); - EXTERN const char * named_g_description INIT(DESCRIPTION); - EXTERN const char * named_g_srcid INIT(SRCID); +diff -ru a/bin/named/include/named/globals.h b/bin/named/include/named/globals.h +--- a/bin/named/include/named/globals.h 2020-09-24 17:43:49.398977491 +0200 ++++ b/bin/named/include/named/globals.h 2020-09-24 17:44:36.826590553 +0200 +@@ -69,7 +69,9 @@ + EXTERN const char *named_g_product INIT(PRODUCT); + EXTERN const char *named_g_description INIT(DESCRIPTION); + EXTERN const char *named_g_srcid INIT(SRCID); +#if 0 - EXTERN const char * named_g_configargs INIT(CONFIGARGS); + EXTERN const char *named_g_configargs INIT(CONFIGARGS); +#endif - EXTERN const char * named_g_builder INIT(BUILDER); - EXTERN in_port_t named_g_port INIT(0); - EXTERN isc_dscp_t named_g_dscp INIT(-1); -diff --git a/bin/named/main.c b/bin/named/main.c -index 62d9ce3..342abdc 100644 ---- a/bin/named/main.c -+++ b/bin/named/main.c -@@ -459,8 +459,10 @@ printversion(bool verbose) { + EXTERN const char *named_g_builder INIT(BUILDER); + EXTERN in_port_t named_g_port INIT(0); + EXTERN isc_dscp_t named_g_dscp INIT(-1); +diff -ru a/bin/named/main.c b/bin/named/main.c +--- a/bin/named/main.c 2020-09-24 17:43:49.399977504 +0200 ++++ b/bin/named/main.c 2020-09-24 17:44:24.102426273 +0200 +@@ -506,7 +506,9 @@ } printf("running on %s\n", named_os_uname()); +#if 0 - printf("built by %s with %s\n", - named_g_builder, named_g_configargs); + printf("built by %s with %s\n", named_g_builder, named_g_configargs); +#endif #ifdef __clang__ printf("compiled by CLANG %s\n", __VERSION__); - #else -@@ -1001,9 +1003,11 @@ setup(void) { - NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE, - "running on %s", named_os_uname()); + #else /* ifdef __clang__ */ +@@ -1102,9 +1104,11 @@ + NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE, "running on %s", + named_os_uname()); +#if 0 isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL, - NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE, - "built with %s", named_g_configargs); + NAMED_LOGMODULE_MAIN, ISC_LOG_NOTICE, "built with %s", + named_g_configargs); +#endif isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,