summary refs log tree commit diff
diff options
context:
space:
mode:
authorFranz Pletz <fpletz@fnordicwalking.de>2015-06-29 12:58:07 +0200
committerFranz Pletz <fpletz@fnordicwalking.de>2015-07-12 07:25:44 +0200
commita21ead3d62069ddaa5b4f7f6c618a39a412967e5 (patch)
tree3743e14aaa70fda124b250a2126ba74d2c6599f3
parentb59685de83195a5450932d97975a25237a4989c4 (diff)
downloadnixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar.gz
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar.bz2
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar.lz
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar.xz
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.tar.zst
nixpkgs-a21ead3d62069ddaa5b4f7f6c618a39a412967e5.zip
jool: init at 3.3.2
Jool is a SIIT and a NAT64 implementation for Linux.
-rw-r--r--pkgs/os-specific/linux/jool/cli.nix22
-rw-r--r--pkgs/os-specific/linux/jool/default.nix30
-rw-r--r--pkgs/os-specific/linux/jool/source.nix9
-rw-r--r--pkgs/top-level/all-packages.nix3
4 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/jool/cli.nix b/pkgs/os-specific/linux/jool/cli.nix
new file mode 100644
index 00000000000..8fb37ed1c5b
--- /dev/null
+++ b/pkgs/os-specific/linux/jool/cli.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchzip, autoreconfHook, pkgconfig, libnl }:
+
+let
+  sourceAttrs = (import ./source.nix) { inherit fetchzip; };
+in
+
+stdenv.mkDerivation {
+  name = "jool-cli-${sourceAttrs.version}";
+
+  src = sourceAttrs.src;
+
+  sourceRoot = "Jool-${sourceAttrs.version}.zip/usr";
+
+  buildInputs = [ autoreconfHook pkgconfig libnl ];
+
+  meta = with stdenv.lib; {
+    homepage = https://www.jool.mx/;
+    description = "Fairly compliant SIIT and Stateful NAT64 for Linux - CLI tools";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz ];
+  };
+}
diff --git a/pkgs/os-specific/linux/jool/default.nix b/pkgs/os-specific/linux/jool/default.nix
new file mode 100644
index 00000000000..fdb2f041a65
--- /dev/null
+++ b/pkgs/os-specific/linux/jool/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchzip, kernel }:
+
+let
+  sourceAttrs = (import ./source.nix) { inherit fetchzip; };
+in
+
+stdenv.mkDerivation {
+  name = "jool-${sourceAttrs.version}-${kernel.version}";
+
+  src = sourceAttrs.src;
+
+  prePatch = ''
+    sed -e 's@/lib/modules/\$(.*)@${kernel.dev}/lib/modules/${kernel.modDirVersion}@' -i mod/*/Makefile
+  '';
+
+  buildPhase = ''
+    make -C mod
+  '';
+
+  installPhase = ''
+    make -C mod modules_install INSTALL_MOD_PATH=$out
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://www.jool.mx/;
+    description = "Fairly compliant SIIT and Stateful NAT64 for Linux - kernel modules";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz ];
+  };
+}
diff --git a/pkgs/os-specific/linux/jool/source.nix b/pkgs/os-specific/linux/jool/source.nix
new file mode 100644
index 00000000000..196167667e0
--- /dev/null
+++ b/pkgs/os-specific/linux/jool/source.nix
@@ -0,0 +1,9 @@
+{ fetchzip }:
+
+rec {
+  version = "3.3.2";
+  src = fetchzip {
+    url = "https://www.jool.mx/download/Jool-${version}.zip";
+    sha256 = "0hc6vlxzmjrgf7vjcwprdqcbx3biq8kphks5k725mrd9rb84drgw";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b3e7849dd1a..fafb11bb6da 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9550,6 +9550,8 @@ let
 
   jfbview = callPackage ../os-specific/linux/jfbview { };
 
+  jool-cli = callPackage ../os-specific/linux/jool/cli.nix { };
+
   jujuutils = callPackage ../os-specific/linux/jujuutils { };
 
   kbd = callPackage ../os-specific/linux/kbd { };
@@ -9792,6 +9794,7 @@ let
 
     klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { });
 
+    jool = callPackage ../os-specific/linux/jool { };
 
     /* compiles but has to be integrated into the kernel somehow
        Let's have it uncommented and finish it..