nixpkgs/pkgs/os-specific/linux/jool/cli.nix
2023-07-21 09:08:40 +02:00

42 lines
927 B
Nix

{ lib, stdenv, fetchFromGitHub, nixosTests
, autoreconfHook, pkg-config, libnl, iptables
}:
let
sourceAttrs = (import ./source.nix) { inherit fetchFromGitHub; };
in
stdenv.mkDerivation {
pname = "jool-cli";
version = sourceAttrs.version;
src = sourceAttrs.src;
patches = [
./validate-config.patch
];
outputs = [
"out"
"man"
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ libnl iptables ];
makeFlags = [ "-C" "src/usr" ];
prePatch = ''
sed -e 's%^XTABLES_SO_DIR = .*%XTABLES_SO_DIR = '"$out"'/lib/xtables%g' -i src/usr/iptables/Makefile
'';
passthru.tests = { inherit (nixosTests) jool; };
meta = with lib; {
homepage = "https://www.jool.mx/";
description = "Fairly compliant SIIT and Stateful NAT64 for Linux - CLI tools";
platforms = platforms.linux;
license = licenses.gpl2;
maintainers = with maintainers; [ fpletz ];
};
}