depot/third_party/nixpkgs/pkgs/tools/networking/swagger-codegen3/default.nix

42 lines
1.2 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchurl, jre, makeWrapper, testers, swagger-codegen3 }:
stdenv.mkDerivation rec {
version = "3.0.58";
pname = "swagger-codegen";
jarfilename = "${pname}-cli-${version}.jar";
nativeBuildInputs = [
makeWrapper
];
src = fetchurl {
url = "mirror://maven/io/swagger/codegen/v3/${pname}-cli/${version}/${jarfilename}";
sha256 = "sha256-+6jWSNDxX6ZqdOYCQ+Vqpfv95drZLqp1AGW4YdNY57M=";
};
dontUnpack = true;
installPhase = ''
install -D $src $out/share/java/${jarfilename}
makeWrapper ${jre}/bin/java $out/bin/${pname}3 \
--add-flags "-jar $out/share/java/${jarfilename}"
'';
passthru.tests.version = testers.testVersion {
package = swagger-codegen3;
command = "swagger-codegen3 version";
};
meta = with lib; {
description = "Allows generation of API client libraries (SDK generation), server stubs and documentation automatically given an OpenAPI Spec";
homepage = "https://github.com/swagger-api/swagger-codegen/tree/3.0.0";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.asl20;
maintainers = [ maintainers._1000101 ];
mainProgram = "swagger-codegen3";
platforms = platforms.all;
};
}