diff --git a/horizon.dhall b/horizon.dhall index 9df418c8643da46be32a4118f90bb14936c30ef9..b07d7f46c14e74b52620902e875e108ab84e0718 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -11,6 +11,14 @@ let callHorizonAdopted revision (None Text) +let callGitBeam + : H.Subdir → H.HaskellPackage.Type + = λ(subdir : H.Subdir) → + H.callGit + "https://github.com/haskell-beam/beam" + "94461937c5ca8b89f1ff1a60bde5bffe207315b4" + (Some subdir) + let callGitCabal : H.Subdir → H.HaskellPackage.Type = λ(subdir : H.Subdir) → @@ -122,6 +130,10 @@ let packages = , base64 = H.callHackage "base64" "0.4.2.4" , base-compat = H.callHackage "base-compat" "0.12.2" , base-compat-batteries = H.callHackage "base-compat-batteries" "0.12.2" + , beam-core = callGitBeam "beam-core" + , beam-migrate = callGitBeam "beam-migrate" + , beam-postgres = callGitBeam "beam-postgres" + , beam-sqlite = callGitBeam "beam-sqlite" , bech32 = H.callHackage "bech32" "1.1.2" , bech32-th = H.callHackage "bech32-th" "1.1.1" , bifunctors = H.callHackage "bifunctors" "5.5.13" diff --git a/initial-packages.nix b/initial-packages.nix index 7276d858170ee98578798a08eb22b6ea87b2bb37..1f4ac6f91dac08a8a44f45e09edf72ee0fb4e20e 100644 --- a/initial-packages.nix +++ b/initial-packages.nix @@ -155,6 +155,14 @@ self: with pkgs.haskell.lib; { basement = self.callPackage (./pkgs/basement.nix) { }; + beam-core = self.callPackage (./pkgs/beam-core.nix) { }; + + beam-migrate = self.callPackage (./pkgs/beam-migrate.nix) { }; + + beam-postgres = self.callPackage (./pkgs/beam-postgres.nix) { }; + + beam-sqlite = self.callPackage (./pkgs/beam-sqlite.nix) { }; + bech32 = self.callPackage (./pkgs/bech32.nix) { }; bech32-th = self.callPackage (./pkgs/bech32-th.nix) { }; diff --git a/pkgs/beam-core.nix b/pkgs/beam-core.nix new file mode 100644 index 0000000000000000000000000000000000000000..716a1f8193e0bf425acbabffc0c5e1e7efca4c39 --- /dev/null +++ b/pkgs/beam-core.nix @@ -0,0 +1,75 @@ +{ mkDerivation +, aeson +, base +, bytestring +, containers +, dlist +, fetchgit +, free +, ghc-prim +, hashable +, lib +, microlens +, mtl +, network-uri +, scientific +, tagged +, tasty +, tasty-hunit +, text +, time +, vector +, vector-sized +}: +mkDerivation { + pname = "beam-core"; + version = "0.10.0.0"; + src = fetchgit { + url = "https://github.com/haskell-beam/beam"; + sha256 = "05yvc8hw0b2f8dg8lz8w1a2y90pwi10iwqa0b2xjhrlacwi0fci9"; + rev = "94461937c5ca8b89f1ff1a60bde5bffe207315b4"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/beam-core/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + base + bytestring + containers + dlist + free + ghc-prim + hashable + microlens + mtl + network-uri + scientific + tagged + text + time + vector + vector-sized + ]; + testHaskellDepends = [ + base + bytestring + tasty + tasty-hunit + text + time + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://travis.athougies.net/projects/beam.html"; + description = "Type-safe, feature-complete SQL query and manipulation interface for Haskell"; + license = lib.licenses.mit; + broken = false; +} diff --git a/pkgs/beam-migrate.nix b/pkgs/beam-migrate.nix new file mode 100644 index 0000000000000000000000000000000000000000..5c84ae45b2c76cee71b51104047b5316f949c4bf --- /dev/null +++ b/pkgs/beam-migrate.nix @@ -0,0 +1,77 @@ +{ mkDerivation +, aeson +, base +, beam-core +, bytestring +, containers +, deepseq +, dependent-map +, dependent-sum +, fetchgit +, free +, ghc-prim +, hashable +, haskell-src-exts +, lib +, microlens +, mtl +, parallel +, pqueue +, pretty +, scientific +, text +, time +, unordered-containers +, uuid-types +, vector +}: +mkDerivation { + pname = "beam-migrate"; + version = "0.5.2.0"; + src = fetchgit { + url = "https://github.com/haskell-beam/beam"; + sha256 = "05yvc8hw0b2f8dg8lz8w1a2y90pwi10iwqa0b2xjhrlacwi0fci9"; + rev = "94461937c5ca8b89f1ff1a60bde5bffe207315b4"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/beam-migrate/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + base + beam-core + bytestring + containers + deepseq + dependent-map + dependent-sum + free + ghc-prim + hashable + haskell-src-exts + microlens + mtl + parallel + pqueue + pretty + scientific + text + time + unordered-containers + uuid-types + vector + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://travis.athougies.net/projects/beam.html"; + description = "SQL DDL support and migrations support library for Beam"; + license = lib.licenses.mit; + broken = false; +} diff --git a/pkgs/beam-postgres.nix b/pkgs/beam-postgres.nix new file mode 100644 index 0000000000000000000000000000000000000000..4afa4708d696eddc3804eeb9ed8e4b3e0307392f --- /dev/null +++ b/pkgs/beam-postgres.nix @@ -0,0 +1,101 @@ +{ mkDerivation +, aeson +, attoparsec +, base +, beam-core +, beam-migrate +, bytestring +, case-insensitive +, conduit +, fetchgit +, free +, hashable +, haskell-src-exts +, hedgehog +, lib +, lifted-base +, monad-control +, mtl +, network-uri +, postgresql-libpq +, postgresql-simple +, scientific +, tagged +, tasty +, tasty-hunit +, text +, time +, tmp-postgres +, transformers-base +, unordered-containers +, uuid +, uuid-types +, vector +}: +mkDerivation { + pname = "beam-postgres"; + version = "0.5.3.0"; + src = fetchgit { + url = "https://github.com/haskell-beam/beam"; + sha256 = "05yvc8hw0b2f8dg8lz8w1a2y90pwi10iwqa0b2xjhrlacwi0fci9"; + rev = "94461937c5ca8b89f1ff1a60bde5bffe207315b4"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/beam-postgres/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + attoparsec + base + beam-core + beam-migrate + bytestring + case-insensitive + conduit + free + hashable + haskell-src-exts + lifted-base + monad-control + mtl + network-uri + postgresql-libpq + postgresql-simple + scientific + tagged + text + time + transformers-base + unordered-containers + uuid-types + vector + ]; + testHaskellDepends = [ + aeson + base + beam-core + beam-migrate + bytestring + hedgehog + postgresql-simple + tasty + tasty-hunit + text + tmp-postgres + uuid + vector + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://haskell-beam.github.io/beam/user-guide/backends/beam-postgres"; + description = "Connection layer between beam and postgres"; + license = lib.licenses.mit; + broken = false; +} diff --git a/pkgs/beam-sqlite.nix b/pkgs/beam-sqlite.nix new file mode 100644 index 0000000000000000000000000000000000000000..96553036b57e82af579d9b8fac8b8a57613569c3 --- /dev/null +++ b/pkgs/beam-sqlite.nix @@ -0,0 +1,81 @@ +{ mkDerivation +, aeson +, attoparsec +, base +, beam-core +, beam-migrate +, bytestring +, dlist +, fetchgit +, free +, hashable +, lib +, monad-control +, mtl +, network-uri +, scientific +, sqlite-simple +, tasty +, tasty-expected-failure +, tasty-hunit +, text +, time +, transformers-base +, unix +}: +mkDerivation { + pname = "beam-sqlite"; + version = "0.5.2.0"; + src = fetchgit { + url = "https://github.com/haskell-beam/beam"; + sha256 = "05yvc8hw0b2f8dg8lz8w1a2y90pwi10iwqa0b2xjhrlacwi0fci9"; + rev = "94461937c5ca8b89f1ff1a60bde5bffe207315b4"; + fetchSubmodules = true; + }; + postUnpack = "sourceRoot+=/beam-sqlite/; echo source root reset to $sourceRoot"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + aeson + attoparsec + base + beam-core + beam-migrate + bytestring + dlist + free + hashable + monad-control + mtl + network-uri + scientific + sqlite-simple + text + time + transformers-base + unix + ]; + testHaskellDepends = [ + base + beam-core + beam-migrate + sqlite-simple + tasty + tasty-expected-failure + tasty-hunit + text + time + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://haskell-beam.github.io/beam/user-guide/backends/beam-sqlite/"; + description = "Beam driver for SQLite"; + license = lib.licenses.mit; + broken = false; +}