From 649a036dccfd2f23179582c3b995046833bd0b26 Mon Sep 17 00:00:00 2001 From: Volth Date: Sat, 24 Jun 2017 23:14:57 +0000 Subject: [PATCH 1/2] nailgun: init at 0.9.1 --- pkgs/development/tools/nailgun/default.nix | 43 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 45 insertions(+) create mode 100644 pkgs/development/tools/nailgun/default.nix diff --git a/pkgs/development/tools/nailgun/default.nix b/pkgs/development/tools/nailgun/default.nix new file mode 100644 index 00000000000..ec19606eea9 --- /dev/null +++ b/pkgs/development/tools/nailgun/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchMavenArtifact, fetchFromGitHub, bash, jre }: + +let + version = "0.9.1"; + nailgun-server = fetchMavenArtifact { + groupId = "com.martiansoftware"; + artifactId = "nailgun-server"; + inherit version; + sha256 = "09ggkkd1s58jmpc74s6m10d3hyf6bmif31advk66zljbpykgl625"; + }; +in +stdenv.mkDerivation rec { + name = "nailgun-${version}"; + + src = fetchFromGitHub { + owner = "martylamb"; + repo = "nailgun"; + rev = "1ad9ad9d2d17c895144a9ee0e7acb1d3d90fb66f"; + sha256 = "1f8ac5kg7imhix9kqdzwiav1bxh8vljv2hb1mq8yz4rqsrx2r4w3"; + }; + + makeFlags = "PREFIX=$(out)"; + + installPhase = '' + install -D ng $out/bin/ng + install -D ${nailgun-server.jar} $out/share/java/nailgun-server-${version}.jar + + cat > $out/bin/ng-server << EOF + #!${bash}/bin/bash + + ${jre}/bin/java -cp $out/share/java/nailgun-server-${version}.jar:\$CLASSPATH com.martiansoftware.nailgun.NGServer "\$@" + EOF + chmod +x $out/bin/ng-server + ''; + + meta = with stdenv.lib; { + description = "Client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead"; + homepage = http://martiansoftware.com/nailgun/; + license = licenses.apsl20; + platforms = platforms.linux; + maintainer = with maintainers; [ volth ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 31fc83d4516..c809a10b457 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6931,6 +6931,8 @@ with pkgs; }; }; + nailgun = callPackage ../development/tools/nailgun { }; + nant = callPackage ../development/tools/build-managers/nant { }; ninja = callPackage ../development/tools/build-managers/ninja { }; From 5b7fd8f3b8602259ef0640db3d7b7ec1a7fe93eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sun, 25 Jun 2017 07:46:51 +0100 Subject: [PATCH 2/2] nailgun: use makeWrapper --- pkgs/development/tools/nailgun/default.nix | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/pkgs/development/tools/nailgun/default.nix b/pkgs/development/tools/nailgun/default.nix index ec19606eea9..aef851e6476 100644 --- a/pkgs/development/tools/nailgun/default.nix +++ b/pkgs/development/tools/nailgun/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchMavenArtifact, fetchFromGitHub, bash, jre }: +{ stdenv, fetchMavenArtifact, fetchFromGitHub, bash, jre, makeWrapper }: let version = "0.9.1"; @@ -21,16 +21,13 @@ stdenv.mkDerivation rec { makeFlags = "PREFIX=$(out)"; + buildInputs = [ makeWrapper ]; + installPhase = '' install -D ng $out/bin/ng - install -D ${nailgun-server.jar} $out/share/java/nailgun-server-${version}.jar - cat > $out/bin/ng-server << EOF - #!${bash}/bin/bash - - ${jre}/bin/java -cp $out/share/java/nailgun-server-${version}.jar:\$CLASSPATH com.martiansoftware.nailgun.NGServer "\$@" - EOF - chmod +x $out/bin/ng-server + makeWrapper ${jre}/bin/java $out/bin/ng-server \ + --add-flags '-cp ${nailgun-server.jar}:$CLASSPATH com.martiansoftware.nailgun.NGServer' ''; meta = with stdenv.lib; {