1{ stdenv, fetchFromGitHub, kernel }:
2
3assert stdenv.lib.versionOlder kernel.version "4.13";
4
5let
6 sourceAttrs = (import ./source.nix) { inherit fetchFromGitHub; };
7in
8
9stdenv.mkDerivation {
10 name = "jool-${sourceAttrs.version}-${kernel.version}";
11
12 src = sourceAttrs.src;
13
14 hardeningDisable = [ "pic" ];
15
16 prePatch = ''
17 sed -e 's@/lib/modules/\$(.*)@${kernel.dev}/lib/modules/${kernel.modDirVersion}@' -i mod/*/Makefile
18 '';
19
20 buildPhase = ''
21 make -C mod
22 '';
23
24 installPhase = ''
25 make -C mod modules_install INSTALL_MOD_PATH=$out
26 '';
27
28 meta = with stdenv.lib; {
29 homepage = https://www.jool.mx/;
30 description = "Fairly compliant SIIT and Stateful NAT64 for Linux - kernel modules";
31 platforms = platforms.linux;
32 maintainers = with maintainers; [ fpletz ];
33 };
34}