at master 55 lines 1.5 kB view raw
1{ 2 callPackage, 3 lib, 4 stdenv, 5 fetchurl, 6 jre_headless, 7 makeWrapper, 8}: 9 10let 11 jre = jre_headless; 12 this = stdenv.mkDerivation (finalAttrs: { 13 version = "7.15.0"; 14 pname = "openapi-generator-cli"; 15 16 jarfilename = "openapi-generator-cli-${finalAttrs.version}.jar"; 17 18 nativeBuildInputs = [ 19 makeWrapper 20 ]; 21 22 src = fetchurl { 23 url = "mirror://maven/org/openapitools/openapi-generator-cli/${finalAttrs.version}/${finalAttrs.jarfilename}"; 24 sha256 = "sha256-TaGnzbeMOkOx6rBkiJETXow1R9Lu26Ddadrzd/hl82Y="; 25 }; 26 27 dontUnpack = true; 28 29 installPhase = '' 30 runHook preInstall 31 32 install -D "$src" "$out/share/java/${finalAttrs.jarfilename}" 33 34 makeWrapper ${jre}/bin/java $out/bin/${finalAttrs.pname} \ 35 --add-flags "-jar $out/share/java/${finalAttrs.jarfilename}" 36 37 runHook postInstall 38 ''; 39 40 meta = with lib; { 41 description = "Allows generation of API client libraries (SDK generation), server stubs and documentation automatically given an OpenAPI Spec"; 42 homepage = "https://github.com/OpenAPITools/openapi-generator"; 43 changelog = "https://github.com/OpenAPITools/openapi-generator/releases/tag/v${finalAttrs.version}"; 44 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 45 license = licenses.asl20; 46 maintainers = with maintainers; [ shou ]; 47 mainProgram = "openapi-generator-cli"; 48 }; 49 50 passthru.tests.example = callPackage ./example.nix { 51 openapi-generator-cli = this; 52 }; 53 }); 54in 55this