diff --git a/pkgs/servers/h2/default.nix b/pkgs/servers/h2/default.nix new file mode 100644 index 000000000000..a5dbf74947e2 --- /dev/null +++ b/pkgs/servers/h2/default.nix @@ -0,0 +1,44 @@ +{ stdenv, fetchzip, jre, makeWrapper, unzip }: +stdenv.mkDerivation rec { + name = "h2-${version}"; + + version = "1.4.193"; + + src = fetchzip { + url = "http://www.h2database.com/h2-2016-10-31.zip"; + sha256 = "1da1qcfwi5gvh68i6w6y0qpcqp3rbgakizagkajmjxk2ryc4b3z9"; + }; + + buildInputs = [ makeWrapper ]; + + installPhase = + let + h2ToolScript = '' + #!/usr/bin/env bash + dir=$(dirname "$0") + + if [ -n "$1" ]; then + ${jre}/bin/java -cp "$dir/h2-${version}.jar:$H2DRIVERS:$CLASSPATH" $1 "''${@:2}" + else + echo "You have to provide the full java class path for the h2 tool you want to run. E.g. 'org.h2.tools.Server'" + fi + ''; + in '' + mkdir -p $out + cp -R * $out + + echo '${h2ToolScript}' > $out/bin/h2tool.sh + + substituteInPlace $out/bin/h2.sh --replace "java" "${jre}/bin/java" + + chmod +x $out/bin/*.sh + ''; + + meta = with stdenv.lib; { + description = "The Java SQL database"; + homepage = http://www.h2database.com/html/main.html; + license = licenses.mpl20; + platforms = stdenv.lib.platforms.linux; + maintainers = with maintainers; [ mahe ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2b51ccc1b84d..ae6a3191b853 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2125,6 +2125,8 @@ in hans = callPackage ../tools/networking/hans { }; + h2 = callPackage ../servers/h2 { }; + haproxy = callPackage ../tools/networking/haproxy { }; haveged = callPackage ../tools/security/haveged { };