diff --git a/manifest.dhall b/manifest.dhall index 898b80e1ff688811d9c5dc32c6584f231c87de45..af28419a8a800f857acfcdd155e4f2be4d780828 100644 --- a/manifest.dhall +++ b/manifest.dhall @@ -682,6 +682,7 @@ in [ callHackage "Cabal" "3.8.1.0" , callHackage "wai" "3.2.3" , callHackage "warp" "3.3.22" , callHackage "warp-tls" "3.3.3" + , callHackage "websockets" "0.12.7.3" , callHackage "witherable" "0.4.2" , callHackage "with-utf8" "1.0.2.3" , callHackage "x509-store" "1.6.9" diff --git a/overlay.nix b/overlay.nix index 6b98efe5e4ae49782f2e1d58d177146a35ad5c80..c0e92ba6f3eeb843213439d3e2865ea60bad475f 100644 --- a/overlay.nix +++ b/overlay.nix @@ -971,6 +971,8 @@ final: prev: with pkgs.haskell.lib; { warp-tls = prev.callPackage (./pkgs/warp-tls.nix) { }; + websockets = prev.callPackage (./pkgs/websockets.nix) { }; + with-utf8 = prev.callPackage (./pkgs/with-utf8.nix) { }; witherable = prev.callPackage (./pkgs/witherable.nix) { }; diff --git a/pkgs/websockets.nix b/pkgs/websockets.nix new file mode 100644 index 0000000000000000000000000000000000000000..c93003b387209163a0c58e79f88753121b10fab9 --- /dev/null +++ b/pkgs/websockets.nix @@ -0,0 +1,105 @@ +{ mkDerivation +, async +, attoparsec +, base +, base64-bytestring +, binary +, bytestring +, bytestring-builder +, case-insensitive +, clock +, containers +, criterion +, entropy +, HUnit +, lib +, network +, QuickCheck +, random +, SHA +, streaming-commons +, test-framework +, test-framework-hunit +, test-framework-quickcheck2 +, text +}: +mkDerivation { + pname = "websockets"; + version = "0.12.7.3"; + sha256 = "d3b0a8a0df7ac7c39c2572152ff903af2d5f009627dde4dada6fb81c89057f3c"; + revision = "1"; + editedCabalFile = "1yx97y6jl74vy200y43vjxfyzx338kh10dx8vxkjhr0mfh36wldq"; + isLibrary = true; + isExecutable = true; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + async + attoparsec + base + base64-bytestring + binary + bytestring + bytestring-builder + case-insensitive + clock + containers + entropy + network + random + SHA + streaming-commons + text + ]; + testHaskellDepends = [ + async + attoparsec + base + base64-bytestring + binary + bytestring + bytestring-builder + case-insensitive + clock + containers + entropy + HUnit + network + QuickCheck + random + SHA + streaming-commons + test-framework + test-framework-hunit + test-framework-quickcheck2 + text + ]; + benchmarkHaskellDepends = [ + async + attoparsec + base + base64-bytestring + binary + bytestring + bytestring-builder + case-insensitive + clock + containers + criterion + entropy + network + random + SHA + text + ]; + enableLibraryProfiling = false; + enableExecutableProfiling = false; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://jaspervdj.be/websockets"; + description = "A sensible and clean way to write WebSocket-capable servers in Haskell"; + license = lib.licenses.bsd3; + broken = false; +}