43 lines
1.3 KiB
Nix
43 lines
1.3 KiB
Nix
{ 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 ];
|
|
};
|
|
}
|