aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/dns/knot-dns/default.nix')
-rw-r--r--nixpkgs/pkgs/servers/dns/knot-dns/default.nix16
1 files changed, 11 insertions, 5 deletions
diff --git a/nixpkgs/pkgs/servers/dns/knot-dns/default.nix b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
index 3dc6fd3e2c7..3ebb31e20f2 100644
--- a/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
+++ b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix
@@ -1,18 +1,17 @@
{ stdenv, fetchurl, pkgconfig, gnutls, liburcu, lmdb, libcap_ng, libidn2, libunistring
-, systemd, nettle, libedit, zlib, libiconv, libintl
+, systemd, nettle, libedit, zlib, libiconv, libintl, libmaxminddb, libbpf, nghttp2
, autoreconfHook
}:
let inherit (stdenv.lib) optional optionals; in
-# Note: ATM only the libraries have been tested in nixpkgs.
stdenv.mkDerivation rec {
pname = "knot-dns";
- version = "2.9.5";
+ version = "3.0.0";
src = fetchurl {
url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz";
- sha256 = "1109a8ba212ff8ddfdbaf44a6f8fc13a2b880a98a9e54c19112ba72a1aacbf76";
+ sha256 = "f1c96aff6e873a2f9b1b8c2441d5a7801dd48d3abdb738a4d24b26c2a8fbe6c4";
};
outputs = [ "bin" "out" "dev" ];
@@ -27,6 +26,7 @@ stdenv.mkDerivation rec {
# Don't try to create directories like /var/lib/knot at build time.
# They are later created from NixOS itself.
./dont-create-run-time-dirs.patch
+ ./runtime-deps.patch
];
nativeBuildInputs = [ pkgconfig autoreconfHook ];
@@ -34,9 +34,15 @@ stdenv.mkDerivation rec {
gnutls liburcu libidn2 libunistring
nettle libedit
libiconv lmdb libintl
+ nghttp2 # DoH support in kdig
+ libmaxminddb # optional for geoip module (it's tiny)
# without sphinx &al. for developer documentation
+ # TODO: add dnstap support?
]
- ++ optionals stdenv.isLinux [ libcap_ng systemd ]
+ ++ optionals stdenv.isLinux [
+ libcap_ng systemd
+ libbpf # XDP support
+ ]
++ optional stdenv.isDarwin zlib; # perhaps due to gnutls
enableParallelBuilding = true;