diff --git a/pkgs/tools/networking/swagger-codegen/default.nix b/pkgs/tools/networking/swagger-codegen/default.nix new file mode 100644 index 000000000000..0c3af79628e1 --- /dev/null +++ b/pkgs/tools/networking/swagger-codegen/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, jre, makeWrapper }: + +stdenv.mkDerivation rec { + version = "2.2.1"; + pname = "swagger-codegen"; + name = "${pname}-${version}"; + + jarfilename = "${pname}-cli-${version}.jar"; + + nativeBuildInputs = [ + makeWrapper + ]; + + src = fetchurl { + url = "https://oss.sonatype.org/content/repositories/releases/io/swagger/${pname}-cli/${version}/${jarfilename}"; + sha256 = "1pwxkl3r93c8hsif9xm0h1hmbjrxz1q7hr5qn5n0sni1x3c3k0d1"; + }; + + phases = [ "installPhase" ]; + + installPhase = '' + install -D "$src" "$out/share/java/${jarfilename}" + + makeWrapper ${jre}/bin/java $out/bin/swagger-codegen \ + --add-flags "-jar $out/share/java/${jarfilename}" + ''; + + meta = with stdenv.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; + license = licenses.asl20; + maintainers = [ maintainers.jraygauthier ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7fb8b6cfdd96..3d4cad94225e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4675,6 +4675,8 @@ with pkgs; surfraw = callPackage ../tools/networking/surfraw { }; + swagger-codegen = callPackage ../tools/networking/swagger-codegen { }; + swec = callPackage ../tools/networking/swec { inherit (perlPackages) LWP URI HTMLParser HTTPServerSimple Parent; };