python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / networking / kea / default.nix
blobe03e013f9ba0a352f259e867593a5c9237a18e3d
1 { stdenv
2 , lib
3 , fetchurl
5 # build time
6 , autoreconfHook
7 , pkg-config
9 # runtime
10 , boost
11 , libmysqlclient
12 , log4cplus
13 , openssl
14 , postgresql
15 , python3
17 # tests
18 , nixosTests
21 stdenv.mkDerivation rec {
22   pname = "kea";
23   version = "2.2.0"; # only even minor versions are stable
25   src = fetchurl {
26     url = "https://ftp.isc.org/isc/${pname}/${version}/${pname}-${version}.tar.gz";
27     sha256 = "sha256-2n2QymKncmAtrG535QcxkDhCKJWtaO6xQvFIfWfVMdI=";
28   };
30   patches = [
31     ./dont-create-var.patch
32   ];
34   postPatch = ''
35     substituteInPlace ./src/bin/keactrl/Makefile.am --replace '@sysconfdir@' "$out/etc"
36   '';
38   outputs = [
39     "out"
40     "doc"
41     "man"
42   ];
44   configureFlags = [
45     "--enable-perfdhcp"
46     "--enable-shell"
47     "--localstatedir=/var"
48     "--with-openssl=${lib.getDev openssl}"
49     "--with-mysql=${lib.getDev libmysqlclient}/bin/mysql_config"
50     "--with-pgsql=${postgresql}/bin/pg_config"
51   ];
53   nativeBuildInputs = [
54     autoreconfHook
55     pkg-config
56   ] ++ (with python3.pkgs; [
57     sphinxHook
58     sphinx-rtd-theme
59   ]);
61   sphinxBuilders = [
62     "html"
63     "man"
64   ];
65   sphinxRoot = "doc/sphinx";
67   buildInputs = [
68     boost
69     libmysqlclient
70     log4cplus
71     openssl
72     python3
73   ];
75   enableParallelBuilding = true;
77   passthru.tests = {
78     kea = nixosTests.kea;
79     prefix-delegation = nixosTests.systemd-networkd-ipv6-prefix-delegation;
80     prometheus-exporter = nixosTests.prometheus-exporters.kea;
81   };
83   meta = with lib; {
84     homepage = "https://kea.isc.org/";
85     description = "High-performance, extensible DHCP server by ISC";
86     longDescription = ''
87       Kea is a new open source DHCPv4/DHCPv6 server being developed by
88       Internet Systems Consortium. The objective of this project is to
89       provide a very high-performance, extensible DHCP server engine for
90       use by enterprises and service providers, either as is or with
91       extensions and modifications.
92     '';
93     license = licenses.mpl20;
94     platforms = platforms.unix;
95     maintainers = with maintainers; [ fpletz hexa ];
96   };