diff --git a/horizon.dhall b/horizon.dhall index a149583c36a24fba6b89818f2d56c6619f0ee6b9..b0ecef6ee56d09646b215a7ec9d669a97d780f39 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -4,8 +4,11 @@ let H = let packages = { Only = H.callHackage "Only" "0.1" , attoparsec-iso8601 = H.callHackage "attoparsec-iso8601" "1.1.0.0" + , binary-orphans = H.callHackage "binary-orphans" "1.0.4.1" , brick = H.callHackage "brick" "1.9" + , bytes = H.callHackage "bytes" "0.17.2" , cassava = H.callHackage "cassava" "0.5.3.0" + , composite-base = H.callHackage "composite-base" "0.8.2.1" , constraints-extras = H.callHackage "constraints-extras" "0.4.0.0" , cpphs = H.callHackage "cpphs" "1.20.9.1" , dependent-map = H.callHackage "dependent-map" "0.4.0.0" @@ -23,11 +26,17 @@ let packages = , hxt-charproperties = H.callHackage "hxt-charproperties" "9.5.0.0" , hxt-regex-xmlschema = H.callHackage "hxt-regex-xmlschema" "9.2.0.7" , hxt-unicode = H.callHackage "hxt-unicode" "9.0.2.4" + , linear = H.callHackage "linear" "1.22" , polyparse = H.callHackage "polyparse" "1.13" , polysemy = H.callHackage "polysemy" "1.9.1.0" , quiet = H.callHackage "quiet" "0.2" , recursion-schemes = H.callHackage "recursion-schemes" "5.2.2.4" , regex-compat = H.callHackage "regex-compat" "0.95.2.1" + , selda = + H.callGit + "https://github.com/guibou/selda" + "54c12169ce8cd46a7b3c698f65cea55e41a13fe6" + (Some "selda") , servant = H.callGit "https://github.com/haskell-servant/servant" @@ -44,6 +53,7 @@ let packages = , th-extras = H.callHackage "th-extras" "0.0.0.6" , type-errors = H.callHackage "type-errors" "0.2.0.2" , unagi-chan = H.callHackage "unagi-chan" "0.4.1.4" + , vinyl = H.callHackage "vinyl" "0.14.3" , vty = H.callHackage "vty" "5.38" , wai-app-static = H.callHackage "wai-app-static" "3.1.7.4" , wai-extra = H.callHackage "wai-extra" "3.1.13.0" diff --git a/horizon.lock b/horizon.lock index 2c98898b82d6c4864c412e0302db9825e1eb8891..76e949070e24959e0ad0c1330355ae31d3fe544d 100644 --- a/horizon.lock +++ b/horizon.lock @@ -6,14 +6,26 @@ , mapValue = "e9381924b80af1d359ebf5c4d5eeabd059219603adf132913d598c1839e7eb5a" } +, { mapKey = "binary-orphans" + , mapValue = + "14b21133632546a0c0313eeaeaa0bf77b2dbb381ce190d7b65ff55d8047768d6" + } , { mapKey = "brick" , mapValue = "220f9d15bf93eaa2a28c4bc6c2a056031afc9120fd28160948bafeef89e219f2" } +, { mapKey = "bytes" + , mapValue = + "fbf9341467887f9af671b2b451376e1a77b491afbde39543f7530a1933c80b04" + } , { mapKey = "cassava" , mapValue = "27ce84f48eda9b16a2d8319bea7d7b96a5cb5ee41f6622abe46a7eaa667ba2ba" } +, { mapKey = "composite-base" + , mapValue = + "1b18c5b7c4967631ac81924c8ee64f10f7e25fbce1fa7a7dd715d8a963380998" + } , { mapKey = "constraints-extras" , mapValue = "8e853f726b214d8ae4d678575ac47e8f6292ba983354affc7917276348040af0" @@ -78,6 +90,10 @@ , mapValue = "0f704a54006d45142f4faf04c1f09ffbcb3c11931d0b14076b806a18e3146648" } +, { mapKey = "linear" + , mapValue = + "edb8c9191d3d13df10761bb4a7a9de7761a87028f7694757f825e2365516abf9" + } , { mapKey = "polyparse" , mapValue = "2cac3d1ba9be7501de571a085512834798adc0d76aea9ba65bfa460fa5cf9e09" @@ -98,6 +114,10 @@ , mapValue = "0b384fc5c7d44f762a315e6a5db0b79ad2d94170ce78099ef2e3166233c5a124" } +, { mapKey = "selda" + , mapValue = + "4049c43c686ba027052b4916e3b97a4c724c9e2b69acb90632cd441727e17319" + } , { mapKey = "servant" , mapValue = "16507876e4f9cddcca51bdf96704910d2cac52a088d901743712b78e52bff38c" @@ -130,6 +150,10 @@ , mapValue = "a36ee8a9b63ae33a8b988289492c36f60f68d7b6c8984b3916283f49051da076" } +, { mapKey = "vinyl" + , mapValue = + "217b7957c5b8a2321ffc5f5b8a3d68604e41148f4a20b51ba6bc7eddc4510d06" + } , { mapKey = "vty" , mapValue = "ad47834af1f16c2c1b011f283fc82294b7d5d6985e85686bf234ea3e968575a0" diff --git a/overlay.nix b/overlay.nix index a23640c24d661fa5d50510ab4c6c868b1979a89a..f05416fda84c361d001e41e9977a573e4bdf41f4 100644 --- a/overlay.nix +++ b/overlay.nix @@ -5,10 +5,16 @@ final: prev: with pkgs.haskell.lib; { attoparsec-iso8601 = final.callPackage (./pkgs/attoparsec-iso8601.nix) { }; + binary-orphans = final.callPackage (./pkgs/binary-orphans.nix) { }; + brick = final.callPackage (./pkgs/brick.nix) { }; + bytes = final.callPackage (./pkgs/bytes.nix) { }; + cassava = final.callPackage (./pkgs/cassava.nix) { }; + composite-base = final.callPackage (./pkgs/composite-base.nix) { }; + constraints-extras = final.callPackage (./pkgs/constraints-extras.nix) { }; cpphs = final.callPackage (./pkgs/cpphs.nix) { }; @@ -41,6 +47,8 @@ final: prev: with pkgs.haskell.lib; { hxt-unicode = final.callPackage (./pkgs/hxt-unicode.nix) { }; + linear = final.callPackage (./pkgs/linear.nix) { }; + polyparse = final.callPackage (./pkgs/polyparse.nix) { }; polysemy = final.callPackage (./pkgs/polysemy.nix) { }; @@ -51,6 +59,8 @@ final: prev: with pkgs.haskell.lib; { regex-compat = final.callPackage (./pkgs/regex-compat.nix) { }; + selda = final.callPackage (./pkgs/selda.nix) { }; + servant = final.callPackage (./pkgs/servant.nix) { }; servant-server = final.callPackage (./pkgs/servant-server.nix) { }; @@ -67,6 +77,8 @@ final: prev: with pkgs.haskell.lib; { unagi-chan = final.callPackage (./pkgs/unagi-chan.nix) { }; + vinyl = final.callPackage (./pkgs/vinyl.nix) { }; + vty = final.callPackage (./pkgs/vty.nix) { }; wai-app-static = final.callPackage (./pkgs/wai-app-static.nix) { }; diff --git a/pkgs/binary-orphans.nix b/pkgs/binary-orphans.nix new file mode 100644 index 0000000000000000000000000000000000000000..a62abd4e41a9dfe09dd216865528bfc801453eff --- /dev/null +++ b/pkgs/binary-orphans.nix @@ -0,0 +1,29 @@ +{ mkDerivation, OneTuple, QuickCheck, base, binary, lib +, quickcheck-instances, tagged, tasty, tasty-quickcheck +, transformers +}: +mkDerivation { + pname = "binary-orphans"; + version = "1.0.4.1"; + sha256 = "5f5b789bc86d25bbd054b86b2d9a6a03f4ac0dd480f283564b6d6465cfa2f0d2"; + revision = "2"; + editedCabalFile = "1q9fbn41fi4wfk8mrm9izy5jna86gmy7gxhz94crqfhp5f89v58l"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base binary transformers ]; + testHaskellDepends = [ + base binary OneTuple QuickCheck quickcheck-instances tagged tasty + tasty-quickcheck + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + description = "Compatibility package for binary; provides instances"; + license = lib.licenses.bsd3; + broken = false; +} \ No newline at end of file diff --git a/pkgs/bytes.nix b/pkgs/bytes.nix new file mode 100644 index 0000000000000000000000000000000000000000..5bbe9720d11b2444e466bdf83d017d4da474bca8 --- /dev/null +++ b/pkgs/bytes.nix @@ -0,0 +1,30 @@ +{ mkDerivation, base, binary, binary-orphans, bytestring, cereal +, containers, hashable, lib, mtl, scientific, text, time +, transformers, transformers-compat, unordered-containers, void +}: +mkDerivation { + pname = "bytes"; + version = "0.17.2"; + sha256 = "bc55f41edad589bc0ba389e8b106d7425a87390dcd5f1371e3194a9cc2c4781a"; + revision = "1"; + editedCabalFile = "0frs6ag93kmg2fw3vd686czx8g7h9qmdn1ip6wdk96d94ap0fz9i"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base binary binary-orphans bytestring cereal containers hashable + mtl scientific text time transformers transformers-compat + unordered-containers void + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/ekmett/bytes"; + description = "Sharing code for serialization between binary and cereal"; + license = lib.licenses.bsd3; + broken = false; +} \ No newline at end of file diff --git a/pkgs/composite-base.nix b/pkgs/composite-base.nix new file mode 100644 index 0000000000000000000000000000000000000000..9eca883b45de734a8314f830b35fa7fddcb53e9a --- /dev/null +++ b/pkgs/composite-base.nix @@ -0,0 +1,33 @@ +{ mkDerivation, QuickCheck, base, deepseq, exceptions, hspec, lens +, lib, monad-control, mtl, profunctors, template-haskell, text +, transformers, transformers-base, unliftio-core, vinyl +}: +mkDerivation { + pname = "composite-base"; + version = "0.8.2.1"; + sha256 = "31b7fe24885d2db164524a4477058157592ae06a75da5259f0eafc5760555544"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base deepseq exceptions lens monad-control mtl profunctors + template-haskell text transformers transformers-base unliftio-core + vinyl + ]; + testHaskellDepends = [ + base deepseq exceptions hspec lens monad-control mtl profunctors + QuickCheck template-haskell text transformers transformers-base + unliftio-core vinyl + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/composite-hs/composite-base#readme"; + description = "Shared utilities for composite-* packages"; + license = lib.licenses.bsd3; + broken = false; +} \ No newline at end of file diff --git a/pkgs/linear.nix b/pkgs/linear.nix new file mode 100644 index 0000000000000000000000000000000000000000..56b6bbe6822c95ddde224192dba6cfb6d605984c --- /dev/null +++ b/pkgs/linear.nix @@ -0,0 +1,39 @@ +{ mkDerivation, HUnit, adjunctions, base, base-orphans, binary +, bytes, bytestring, cereal, containers, deepseq, distributive +, ghc-prim, hashable, indexed-traversable, lens, lib, random +, reflection, semigroupoids, simple-reflect, tagged +, template-haskell, test-framework, test-framework-hunit +, transformers, transformers-compat, unordered-containers, vector +, void +}: +mkDerivation { + pname = "linear"; + version = "1.22"; + sha256 = "cfe43e392d0e9b2fd5647bde962b0678681de580260ad30e5f29ae490a03b9b5"; + revision = "1"; + editedCabalFile = "1p94bq3pwqvj4qd1lp0w84k514xd9vib76gw0d16q1xh27c2sz4h"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + adjunctions base base-orphans binary bytes cereal containers + deepseq distributive ghc-prim hashable indexed-traversable lens + random reflection semigroupoids tagged template-haskell + transformers transformers-compat unordered-containers vector void + ]; + testHaskellDepends = [ + base binary bytestring deepseq HUnit reflection simple-reflect + test-framework test-framework-hunit vector + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://github.com/ekmett/linear/"; + description = "Linear Algebra"; + license = lib.licenses.bsd3; + broken = false; +} \ No newline at end of file diff --git a/pkgs/selda.nix b/pkgs/selda.nix new file mode 100644 index 0000000000000000000000000000000000000000..b4b3e73ee74d91e59daca197c23d0ba00ea6eed9 --- /dev/null +++ b/pkgs/selda.nix @@ -0,0 +1,32 @@ +{ mkDerivation, base, bytestring, containers, exceptions, fetchgit +, lib, mtl, random, text, time, uuid-types +}: +mkDerivation { + pname = "selda"; + version = "0.5.2.1"; + src = fetchgit { + url = "https://github.com/guibou/selda"; + sha256 = "0q8m8asmb83mpa3j3adlrhc446xif7gv6lql20gv05k33lmbjfhg"; + rev = "54c12169ce8cd46a7b3c698f65cea55e41a13fe6"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/selda/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base bytestring containers exceptions mtl random text time + uuid-types + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://selda.link"; + description = "Multi-backend, high-level EDSL for interacting with SQL databases"; + license = lib.licenses.mit; + broken = false; +} \ No newline at end of file diff --git a/pkgs/vinyl.nix b/pkgs/vinyl.nix new file mode 100644 index 0000000000000000000000000000000000000000..a494aeef1e859991dafbc5f315422c9b92121ad3 --- /dev/null +++ b/pkgs/vinyl.nix @@ -0,0 +1,31 @@ +{ mkDerivation, aeson, array, base, criterion, deepseq, ghc-prim +, hspec, lens, lens-aeson, lib, linear, microlens, mtl, mwc-random +, primitive, should-not-typecheck, tagged, text +, unordered-containers, vector +}: +mkDerivation { + pname = "vinyl"; + version = "0.14.3"; + sha256 = "e6789cbf9d3db493065cc85251e1a4596e4ab561c857d2757ae2593dd53ce6d2"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ array base deepseq ghc-prim ]; + testHaskellDepends = [ + aeson base hspec lens lens-aeson microlens mtl should-not-typecheck + text unordered-containers vector + ]; + benchmarkHaskellDepends = [ + base criterion linear microlens mwc-random primitive tagged vector + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + description = "Extensible Records"; + license = lib.licenses.mit; + broken = false; +} \ No newline at end of file