diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2017-09-28 12:32:57 -0400 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2017-09-28 12:32:57 -0400 |
commit | f037625f87b0b1d8852a1f31ebaece5fdbc87a2b (patch) | |
tree | af8c8369954890db69195a1e9394ce16c7640d7f /pkgs/servers/dns | |
parent | f08d6f0e2daf9f3d9daa070eee223855b33c430d (diff) | |
parent | 4e22e88b914ffb63393449c5e20fe8843a7ce93b (diff) | |
download | nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar.gz nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar.bz2 nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar.lz nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar.xz nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.tar.zst nixlib-f037625f87b0b1d8852a1f31ebaece5fdbc87a2b.zip |
Merge remote-tracking branch 'upstream/staging' into deps-reorg
Diffstat (limited to 'pkgs/servers/dns')
-rw-r--r-- | pkgs/servers/dns/knot-dns/default.nix | 8 | ||||
-rw-r--r-- | pkgs/servers/dns/knot-resolver/default.nix | 53 |
2 files changed, 29 insertions, 32 deletions
diff --git a/pkgs/servers/dns/knot-dns/default.nix b/pkgs/servers/dns/knot-dns/default.nix index 0b556a0859c8..1df36cd37c7b 100644 --- a/pkgs/servers/dns/knot-dns/default.nix +++ b/pkgs/servers/dns/knot-dns/default.nix @@ -20,17 +20,13 @@ stdenv.mkDerivation rec { buildInputs = [ gnutls jansson liburcu libidn nettle libedit - libiconv + libiconv lmdb # without sphinx &al. for developer documentation ] - # Use embedded lmdb there for now, as detection is broken on Darwin somehow. - ++ optionals stdenv.isLinux [ libcap_ng systemd lmdb ] + ++ optionals stdenv.isLinux [ libcap_ng systemd ] ++ libintlOrEmpty ++ optional stdenv.isDarwin zlib; # perhaps due to gnutls - # Not ideal but seems to work on Linux. - configureFlags = optional stdenv.isLinux "--with-lmdb=${stdenv.lib.getLib lmdb}"; - enableParallelBuilding = true; CFLAGS = [ "-O2" "-DNDEBUG" ]; diff --git a/pkgs/servers/dns/knot-resolver/default.nix b/pkgs/servers/dns/knot-resolver/default.nix index 390bf43d4d62..44c8b933400e 100644 --- a/pkgs/servers/dns/knot-resolver/default.nix +++ b/pkgs/servers/dns/knot-resolver/default.nix @@ -1,20 +1,20 @@ { stdenv, fetchurl, pkgconfig, hexdump, which -, knot-dns, luajit, libuv, lmdb -, cmocka, systemd, hiredis, libmemcached -, gnutls, nettle -, luajitPackages, makeWrapper +, knot-dns, luajit, libuv, lmdb, gnutls, nettle +, cmocka, systemd, dns-root-data, makeWrapper +, extraFeatures ? false /* catch-all if defaults aren't enough */ +, hiredis, libmemcached, luajitPackages }: let - inherit (stdenv.lib) optional; + inherit (stdenv.lib) optional optionals optionalString; in stdenv.mkDerivation rec { name = "knot-resolver-${version}"; - version = "1.3.3"; + version = "1.4.0"; src = fetchurl { url = "http://secure.nic.cz/files/knot-resolver/${name}.tar.xz"; - sha256 = "c679238bea5744de8a99f4402a61e9e58502bc42b40ecfa370e53679ed5d5b80"; + sha256 = "ac19c121fd687c7e4f5f907b46932d26f8f9d9e01626c4dadb3847e25ea31ceb"; }; outputs = [ "out" "dev" ]; @@ -23,18 +23,16 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig which makeWrapper hexdump ]; - buildInputs = [ knot-dns luajit libuv gnutls ] - ++ optional stdenv.isLinux lmdb # system lmdb causes some problems on Darwin - ## optional dependencies; TODO: libedit, dnstap? + # http://knot-resolver.readthedocs.io/en/latest/build.html#requirements + buildInputs = [ knot-dns luajit libuv gnutls nettle lmdb ] ++ optional doInstallCheck cmocka - ++ optional stdenv.isLinux systemd # socket activation - ++ [ - nettle # DNS cookies + ++ optional stdenv.isLinux systemd # sd_notify + ++ optionals extraFeatures [ hiredis libmemcached # additional cache backends - # http://knot-resolver.readthedocs.io/en/latest/build.html#requirements ]; + ## optional dependencies; TODO: libedit, dnstap, http2 module? - makeFlags = [ "PREFIX=$(out)" ]; + makeFlags = [ "PREFIX=$(out)" "ROOTHINTS=${dns-root-data}/root.hints" ]; CFLAGS = [ "-O2" "-DNDEBUG" ]; enableParallelBuilding = true; @@ -45,18 +43,21 @@ stdenv.mkDerivation rec { export LD_LIBRARY_PATH="$out/lib" ''; + postInstall = '' + rm "$out"/etc/kresd/root.hints # using system-wide instead + '' # optional: to allow auto-bootstrapping root trust anchor via https - postInstall = with luajitPackages; '' - wrapProgram "$out/sbin/kresd" \ - --set LUA_PATH '${ - stdenv.lib.concatStringsSep ";" - (map getLuaPath [ luasec luasocket ]) - }' \ - --set LUA_CPATH '${ - stdenv.lib.concatStringsSep ";" - (map getLuaCPath [ luasec luasocket ]) - }' - ''; + + (with luajitPackages; '' + wrapProgram "$out/sbin/kresd" \ + --set LUA_PATH '${ + stdenv.lib.concatStringsSep ";" + (map getLuaPath [ luasec luasocket ]) + }' \ + --set LUA_CPATH '${ + stdenv.lib.concatStringsSep ";" + (map getLuaCPath [ luasec luasocket ]) + }' + ''); meta = with stdenv.lib; { description = "Caching validating DNS resolver, from .cz domain registry"; |