{ stdenv, fetchurl, pkgconfig, boost , openssl, systemd, lua, luajit, protobuf , enableLua ? false , enableProtoBuf ? false }: assert enableLua -> lua != null && luajit != null; assert enableProtoBuf -> protobuf != null; with stdenv.lib; stdenv.mkDerivation rec { name = "pdns-recursor-${version}"; version = "4.0.8"; src = fetchurl { url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2"; sha256 = "04v5y6mfdhn8ikigqmm3k5k0zz5l8d3k1a7ih464n1161q7z0vww"; }; nativeBuildInputs = [ pkgconfig ]; buildInputs = [ boost openssl systemd ] ++ optional enableLua [ lua luajit ] ++ optional enableProtoBuf protobuf; configureFlags = [ "--enable-reproducible" "--with-systemd" ]; enableParallelBuilding = true; meta = { description = "A recursive DNS server"; homepage = https://www.powerdns.com/; platforms = platforms.linux; license = licenses.gpl2; maintainers = with maintainers; [ rnhmjoj ]; }; }