diff --git a/manifest.dhall b/manifest.dhall index 17be0600b28877984c3742d28958feedafd680cf..9545a95bcaaa8a769d7bde15e55e51cc7491c456 100644 --- a/manifest.dhall +++ b/manifest.dhall @@ -327,6 +327,7 @@ in [ callHackage "Cabal" "3.8.1.0" "https://github.com/TeofilC/servant" (Some "76fc90a51f915230bbe1e0d1dbe9727fcdc7a0fc") (Some "servant-server") + , callHackage "servant-swagger" "1.1.11" , callHackage "servant-swagger-ui-core" "0.3.5" , callHackage "shake" "0.19.6" , callHackage "shelly" "1.10.0" diff --git a/overlay.nix b/overlay.nix index 35e490f99af3e9074db2ad9ca9ae55dc29d709e1..dd1a159c5d5ca2c93c9dec884e99864e3938bd16 100644 --- a/overlay.nix +++ b/overlay.nix @@ -415,6 +415,8 @@ final: prev: with pkgs.haskell.lib; { servant-server = prev.callPackage (./pkgs/servant-server.nix) { }; + servant-swagger = prev.callPackage (./pkgs/servant-swagger.nix) { }; + servant-swagger-ui-core = prev.callPackage (./pkgs/servant-swagger-ui-core.nix) { }; shake = prev.callPackage (./pkgs/shake.nix) { }; diff --git a/pkgs/servant-swagger.nix b/pkgs/servant-swagger.nix new file mode 100644 index 0000000000000000000000000000000000000000..67fb44354ecaef5f8c4f07e18b5fd12d00ae94e6 --- /dev/null +++ b/pkgs/servant-swagger.nix @@ -0,0 +1,31 @@ +{ mkDerivation, aeson, aeson-pretty, base, base-compat, bytestring +, Cabal, cabal-doctest, directory, doctest, filepath, hspec +, hspec-discover, http-media, insert-ordered-containers, lens +, lens-aeson, lib, QuickCheck, servant, singleton-bool, swagger2 +, template-haskell, text, time, unordered-containers, utf8-string +, vector +}: +mkDerivation { + pname = "servant-swagger"; + version = "1.1.11"; + sha256 = "f4b985007ab0520c177f8dcf7bfabf8cc88d480e087db5ea5b1d311c079676cf"; + setupHaskellDepends = [ base Cabal cabal-doctest ]; + libraryHaskellDepends = [ + aeson aeson-pretty base base-compat bytestring hspec http-media + insert-ordered-containers lens QuickCheck servant singleton-bool + swagger2 text unordered-containers + ]; + testHaskellDepends = [ + aeson base base-compat directory doctest filepath hspec lens + lens-aeson QuickCheck servant swagger2 template-haskell text time + utf8-string vector + ]; + testToolDepends = [ hspec-discover ]; + doHaddock = false; + jailbreak = true; + doCheck = false; + hyperlinkSource = false; + homepage = "https://github.com/haskell-servant/servant/tree/master/servant-swagger#readme"; + description = "Generate a Swagger/OpenAPI/OAS 2.0 specification for your servant API."; + license = lib.licenses.bsd3; +} \ No newline at end of file