nixpkgs/pkgs/servers/dns/powerdns/default.nix
Jonathan Ringer 9bb3fccb5b treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix
continuation of #109595

pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.

python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
2021-01-19 01:16:25 -08:00

61 lines
1.7 KiB
Nix

{ lib, stdenv, fetchurl, fetchpatch, pkg-config, nixosTests
, boost, libyamlcpp, libsodium, sqlite, protobuf, openssl, systemd
, mysql57, postgresql, lua, openldap, geoip, curl, unixODBC
}:
stdenv.mkDerivation rec {
pname = "powerdns";
version = "4.3.1";
src = fetchurl {
url = "https://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
sha256 = "0if27znz528sir52y9i4gcfhdsym7yxiwjgffy9lpscf1426q56m";
};
patches = [
(fetchpatch { # remove for >= 4.4.0
name = "gcc-10_undefined-reference.diff";
url = "https://github.com/PowerDNS/pdns/commit/05c9dd77b28.diff";
sha256 = "1m9szbi02h9kcabgw3kb8k9qrb54d34z0qzizrlfiw3hxs6c2zql";
})
];
nativeBuildInputs = [ pkg-config ];
buildInputs = [
boost mysql57.connector-c postgresql lua openldap sqlite protobuf geoip
libyamlcpp libsodium curl unixODBC openssl systemd
];
# nix destroy with-modules arguments, when using configureFlags
preConfigure = ''
configureFlagsArray=(
"--with-modules=bind gmysql geoip godbc gpgsql gsqlite3 ldap lua2 pipe random remote"
--with-sqlite3
--with-libcrypto=${openssl.dev}
--with-libsodium
--enable-tools
--disable-dependency-tracking
--disable-silent-rules
--enable-reproducible
--enable-unit-tests
--enable-systemd
)
'';
enableParallelBuilding = true;
doCheck = true;
passthru.tests = {
nixos = nixosTests.powerdns;
};
meta = with lib; {
description = "Authoritative DNS server";
homepage = "https://www.powerdns.com";
platforms = platforms.unix;
broken = stdenv.isDarwin;
license = licenses.gpl2;
maintainers = with maintainers; [ mic92 disassembler ];
};
}