diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/dns/knot-dns/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/dns/knot-dns/default.nix | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/dns/knot-dns/default.nix b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix new file mode 100644 index 000000000000..2ff80906c01b --- /dev/null +++ b/nixpkgs/pkgs/servers/dns/knot-dns/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchurl, pkgconfig, gnutls, liburcu, lmdb, libcap_ng, libidn2, libunistring +, systemd, nettle, libedit, zlib, libiconv, libintl +}: + +let inherit (stdenv.lib) optional optionals; in + +# Note: ATM only the libraries have been tested in nixpkgs. +stdenv.mkDerivation rec { + name = "knot-dns-${version}"; + version = "2.7.4"; + + src = fetchurl { + url = "https://secure.nic.cz/files/knot-dns/knot-${version}.tar.xz"; + sha256 = "0x7xx6jh4x8ljnvj30zh3n1zw5jkhla62dv9i75v0rwgrpxy5sxc"; + }; + + outputs = [ "bin" "out" "dev" ]; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ + gnutls liburcu libidn2 libunistring + nettle libedit + libiconv lmdb libintl + # without sphinx &al. for developer documentation + ] + ++ optionals stdenv.isLinux [ libcap_ng systemd ] + ++ optional stdenv.isDarwin zlib; # perhaps due to gnutls + + enableParallelBuilding = true; + + CFLAGS = [ "-O2" "-DNDEBUG" ]; + + doCheck = true; + doInstallCheck = false; # needs pykeymgr? + + postInstall = ''rm -r "$out"/var "$out"/lib/*.la''; + + meta = with stdenv.lib; { + description = "Authoritative-only DNS server from .cz domain registry"; + homepage = https://knot-dns.cz; + license = licenses.gpl3Plus; + platforms = platforms.unix; + maintainers = [ maintainers.vcunat ]; + }; +} |