063fde8848
Use jdk instead of jre (jre is an alias for jdk since java9) Split installPhase to make it more readable
51 lines
1.1 KiB
Nix
51 lines
1.1 KiB
Nix
{ lib, stdenv, fetchurl, jdk, runtimeShell }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "polylith";
|
|
version = "0.2.12-alpha";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/polyfy/polylith/releases/download/v${version}/poly-${version}.jar";
|
|
sha256 = "1zsasyrrssj7kmvgfr63fa5hslw9gnlbp9bh05g72bfgzi99n8kg";
|
|
};
|
|
|
|
dontUnpack = true;
|
|
|
|
passAsFile = [ "polyWrapper" ];
|
|
polyWrapper = ''
|
|
#!${runtimeShell}
|
|
ARGS=""
|
|
while [ "$1" != "" ] ; do
|
|
ARGS="$ARGS $1"
|
|
shift
|
|
done
|
|
exec "${jdk}/bin/java" "-jar" "${src}" $ARGS
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/bin
|
|
cp "$polyWrapperPath" $out/bin/poly
|
|
chmod a+x $out/bin/poly
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
doInstallCheck = true;
|
|
installCheckPhase = ''
|
|
runHook preInstallCheck
|
|
|
|
$out/bin/poly help | fgrep -q '${version}'
|
|
|
|
runHook postInstallCheck
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "A tool used to develop Polylith based architectures in Clojure";
|
|
homepage = "https://github.com/polyfy/polylith";
|
|
license = licenses.epl10;
|
|
maintainers = with maintainers; [ ericdallo jlesquembre ];
|
|
platforms = jdk.meta.platforms;
|
|
};
|
|
}
|