1{ stdenv, fetchurl, jre, makeWrapper }:
2
3stdenv.mkDerivation rec {
4 version = "2.3.1";
5 pname = "swagger-codegen";
6 name = "${pname}-${version}";
7
8 jarfilename = "${pname}-cli-${version}.jar";
9
10 nativeBuildInputs = [
11 makeWrapper
12 ];
13
14 src = fetchurl {
15 url = "https://oss.sonatype.org/content/repositories/releases/io/swagger/${pname}-cli/${version}/${jarfilename}";
16 sha256 = "171qr0zx7i6cykv54vqjf3mplrf7w4a1fpq47wsj861lbf8xm322";
17 };
18
19 phases = [ "installPhase" ];
20
21 installPhase = ''
22 install -D "$src" "$out/share/java/${jarfilename}"
23
24 makeWrapper ${jre}/bin/java $out/bin/swagger-codegen \
25 --add-flags "-jar $out/share/java/${jarfilename}"
26 '';
27
28 meta = with stdenv.lib; {
29 description = "Allows generation of API client libraries (SDK generation), server stubs and documentation automatically given an OpenAPI Spec";
30 homepage = https://github.com/swagger-api/swagger-codegen;
31 license = licenses.asl20;
32 maintainers = [ maintainers.jraygauthier ];
33 };
34}