summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/tools/system/java-service-wrapper/default.nix41
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 43 insertions, 0 deletions
diff --git a/pkgs/tools/system/java-service-wrapper/default.nix b/pkgs/tools/system/java-service-wrapper/default.nix
new file mode 100644
index 00000000000..19502e5a352
--- /dev/null
+++ b/pkgs/tools/system/java-service-wrapper/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl
+, jdk
+, ant, cunit, ncurses
+}:
+
+stdenv.mkDerivation rec {
+  pname = "java-service-wrapper";
+  version = "3.5.41";
+
+  src = fetchurl {
+    url = "https://wrapper.tanukisoftware.com/download/${version}/wrapper_${version}_src.tar.gz";
+    sha256 = "0wvazc4y134brn99aa4rc9jdh1h2q3l7qhhvbcs6lhf4ym47sskm";
+  };
+
+  buildInputs = [ jdk ];
+  nativeBuildInputs = [ ant cunit ncurses ];
+
+  buildPhase = ''
+    export ANT_HOME=${ant}
+    export JAVA_HOME=${jdk}/lib/openjdk/jre/
+    export JAVA_TOOL_OPTIONS=-Djava.home=$JAVA_HOME
+    export CLASSPATH=${jdk}/lib/openjdk/lib/tools.jar
+
+    ${if stdenv.isi686 then "./build32.sh" else "./build64.sh"}
+  '';
+
+  installPhase = ''
+    mkdir -p $out/{bin,lib}
+    cp bin/wrapper $out/bin/wrapper
+    cp lib/wrapper.jar $out/lib/wrapper.jar
+    cp lib/libwrapper.so $out/lib/libwrapper.so
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Enables a Java Application to be run as a Windows Service or Unix Daemon";
+    homepage = "https://wrapper.tanukisoftware.com/";
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" "i686-linux" ];
+    maintainers = [ maintainers.suhr ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 87169b5296c..4d9ea22e176 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8335,6 +8335,8 @@ in
 
   jasmin = callPackage ../development/compilers/jasmin { };
 
+  java-service-wrapper = callPackage ../tools/system/java-service-wrapper { };
+
   javacard-devkit = pkgsi686Linux.callPackage ../development/compilers/javacard-devkit { };
 
   julia_07 = callPackage ../development/compilers/julia/0.7.nix {