diff --git a/pkgs/by-name/qu/quarkus/package.nix b/pkgs/by-name/qu/quarkus/package.nix new file mode 100644 index 000000000000..56eeb7a57826 --- /dev/null +++ b/pkgs/by-name/qu/quarkus/package.nix @@ -0,0 +1,46 @@ +{ lib +, stdenv +, fetchurl +, makeWrapper +, jdk +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "quarkus-cli"; + version = "3.8.3"; + + src = fetchurl { + url = "https://github.com/quarkusio/quarkus/releases/download/${finalAttrs.version}/quarkus-cli-${finalAttrs.version}.tar.gz"; + hash = "sha256-+HUVnd21q2xln58UR1QS0UFCjlY0sbf79ZkvWbRCH7Q="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/{lib,bin} + cp ./lib/quarkus-cli-${finalAttrs.version}-runner.jar $out/lib + + makeWrapper ${jdk}/bin/java $out/bin/quarkus \ + --add-flags "-classpath $out/lib/quarkus-cli-${finalAttrs.version}-runner.jar" \ + --add-flags "-Dapp.name=quarkus" \ + --add-flags "-Dapp-pid='\$\$'" \ + --add-flags "-Dapp.repo=$out/lib" \ + --add-flags "-Dapp.home=$out" \ + --add-flags "-Dbasedir=$out" \ + --add-flags "io.quarkus.cli.Main" + + runHook postInstall + ''; + + meta = with lib; { + description = "Quarkus is a Kubernetes-native Java framework tailored for GraalVM and HotSpot, crafted from best-of-breed Java libraries and standards"; + homepage = "https://quarkus.io"; + license = licenses.asl20; + maintainers = [ maintainers.vinetos ]; + platforms = platforms.all; + mainProgram = "quarkus"; + sourceProvenance = with sourceTypes; [ binaryBytecode ]; + }; +})