datarekisteri/.guix/modules/datarekisteri-package.scm

938 lines
36 KiB
Scheme

(define-module (datarekisteri-package)
#:use-module (guix)
#:use-module (guix build-system go)
#:use-module (guix build-system haskell)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages golang)
#:use-module (gnu packages syncthing)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz))
(define vcs-file?
(or (git-predicate (string-append (current-source-directory) "/../.."))
(const #t)))
(define-public datarekisteri
(package
(name "datarekisteri")
(version "0.0.1")
(source (local-file "../.." "datarekisteri-checkout"
#:recursive? #t
#:select? vcs-file?))
(build-system haskell-build-system)
(inputs (list dbmate
ghc-base64
ghc-cryptonite
ghc-email-validate
ghc-esqueleto
ghc-mime-mail
ghc-morpheus-graphql
ghc-morpheus-graphql-client
ghc-optparse-applicative
ghc-persistent
ghc-persistent-postgresql
ghc-scotty
ghc-smtp-mail
ghc-wai-cors
ghc-wai-extra
ghc-yesod
ghc-yesod-static
ghc-yesod-auth))
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-binaries
(lambda _
(wrap-program
(string-append #$output "/bin/datarekisteri")
`("PATH" prefix (,(string-append #$(this-package-input "dbmate") "/bin")))))))))
(home-page "")
(synopsis "")
(description "")
(license license:agpl3+)))
(define ghc-authenticate
(package
(name "ghc-authenticate")
(version "1.3.5.1")
(source (origin
(method url-fetch)
(uri (hackage-uri "authenticate" version))
(sha256
(base32
"1rhbvdgwdr68gp13p5piddfdqf3l9lmx4w7k249lc98y23780c3x"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-http-conduit
ghc-case-insensitive
ghc-http-types
ghc-xml-conduit
ghc-blaze-builder
ghc-attoparsec
ghc-unordered-containers
ghc-conduit
ghc-html-conduit
ghc-resourcet
ghc-network-uri))
(home-page "http://github.com/yesodweb/authenticate")
(synopsis "Authentication methods for Haskell web applications.")
(description "API docs and the README are available at
<http://www.stackage.org/package/authenticate>.")
(license license:expat)))
(define ghc-yesod-auth
(package
(name "ghc-yesod-auth")
(version "1.6.11")
(source (origin
(method url-fetch)
(uri (hackage-uri "yesod-auth" version))
(sha256
(base32
"0fdahk5mc63g0zsafk8axry01qaxahmclpmmwygp2lhfsjy8mby2"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-authenticate
ghc-base16-bytestring
ghc-base64-bytestring
ghc-blaze-builder
ghc-blaze-html
ghc-blaze-markup
ghc-conduit
ghc-conduit-extra
ghc-cryptonite
ghc-data-default
ghc-email-validate
ghc-file-embed
ghc-http-client
ghc-http-client-tls
ghc-http-conduit
ghc-http-types
ghc-memory
ghc-nonce
ghc-persistent
ghc-random
ghc-safe
ghc-shakespeare
ghc-unliftio
ghc-unliftio-core
ghc-unordered-containers
ghc-wai
ghc-yesod-core
ghc-yesod-form
ghc-yesod-persistent
ghc-network-uri))
(home-page "http://www.yesodweb.com/")
(synopsis "Authentication for Yesod.")
(description "API docs and the README are available at
<http://www.stackage.org/package/yesod-auth>")
(license license:expat)))
(define ghc-scotty
(package
(name "ghc-scotty")
(version "0.12")
(source (origin
(method url-fetch)
(uri (hackage-uri "scotty" version))
(sha256
(base32
"1lpggpdzgjk23mq7aa64yylds5dbm4ynhcvbarqihjxabvh7xmz1"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-base-compat-batteries
ghc-blaze-builder
ghc-case-insensitive
ghc-data-default-class
ghc-fail
ghc-http-types
ghc-monad-control
ghc-nats
ghc-network
ghc-regex-compat
ghc-transformers-base
ghc-transformers-compat
ghc-wai
ghc-wai-extra
ghc-warp))
(native-inputs (list ghc-async ghc-hspec ghc-hspec-wai ghc-lifted-base hspec-discover))
(arguments
`(#:cabal-revision ("7"
"1i8icc612w4dbmqmnf99drqpmjvhjnkmqgk9xr63amj8jkz5lp4m")))
(home-page "https://github.com/scotty-web/scotty")
(synopsis
"Haskell web framework inspired by Ruby's Sinatra, using WAI and Warp")
(description
"This package provides a Haskell web framework inspired by Ruby's Sinatra, using
WAI and Warp. . @ &#123;-&#35; LANGUAGE OverloadedStrings &#35;-&#125; . import
Web.Scotty . import Data.Monoid (mconcat) . main = scotty 3000 $ &#32;&#32;get
&#34;/:word&#34; $ do &#32;&#32;&#32;&#32;beam <- param &#34;word&#34;
&#32;&#32;&#32;&#32;html $ mconcat [&#34;&#60;h1&#62;Scotty, &#34;, beam, &#34;
me up!&#60;/h1&#62;&#34;] @ . . Scotty is the cheap and cheerful way to write
RESTful, declarative web applications. . * A page is as simple as defining the
verb, url pattern, and Text content. . * It is template-language agnostic.
Anything that returns a Text value will do. . * Conforms to WAI Application
interface. . * Uses very fast Warp webserver by default. . As for the name:
Sinatra + Warp = Scotty. . [WAI] <http://hackage.haskell.org/package/wai> .
[Warp] <http://hackage.haskell.org/package/warp>")
(license license:bsd-3)))
(define ghc-hspec-wai
(package
(name "ghc-hspec-wai")
(version "0.11.1")
(source (origin
(method url-fetch)
(uri (hackage-uri "hspec-wai" version))
(sha256
(base32
"03wiksic5y9a2g6a86nsxrnajdgdvpv17w02h5qla0zp9zs6pa1j"))))
(build-system haskell-build-system)
(inputs (list ghc-quickcheck
ghc-base-compat
ghc-case-insensitive
ghc-hspec-core
ghc-hspec-expectations
ghc-http-types
ghc-wai
ghc-wai-extra))
(native-inputs (list ghc-hspec hspec-discover))
(home-page "https://github.com/hspec/hspec-wai#readme")
(synopsis "Experimental Hspec support for testing WAI applications")
(description "Experimental Hspec support for testing WAI applications")
(license license:expat)))
(define ghc-morpheus-graphql
(package
(name "ghc-morpheus-graphql")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql" version))
(sha256
(base32
"04qah7565dzq7v4q43zjz8778pdn5jwnway5rvz4kkibcrscfagn"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-morpheus-graphql-app
ghc-morpheus-graphql-code-gen
ghc-morpheus-graphql-core
ghc-morpheus-graphql-server
ghc-relude
ghc-unordered-containers
ghc-vector))
(native-inputs (list ghc-morpheus-graphql-subscriptions
ghc-morpheus-graphql-tests ghc-tasty ghc-tasty-hunit))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL")
(description "Build GraphQL APIs with your favourite functional language!")
(license license:expat)))
(define ghc-morpheus-graphql-code-gen
(package
(name "ghc-morpheus-graphql-code-gen")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-code-gen" version))
(sha256
(base32
"1rmxcr17xjx99aam048a4sqlwlnxjk41hx8fnb363ljid74vrcrb"))))
(build-system haskell-build-system)
(inputs (list ghc-file-embed
ghc-morpheus-graphql-code-gen-utils
ghc-morpheus-graphql-core
ghc-morpheus-graphql-server
ghc-prettyprinter
ghc-relude
ghc-unordered-containers
ghc-glob
ghc-morpheus-graphql-client
ghc-optparse-applicative
ghc-yaml))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL CLI")
(description "code generator for Morpheus GraphQL")
(license license:bsd-3)))
(define ghc-morpheus-graphql-core
(package
(name "ghc-morpheus-graphql-core")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-core" version))
(sha256
(base32
"0dd8bifn6qwpss06hbb0r730fqfkbd4nhwsr2bsrgxc7hvzv9wi7"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-hashable
ghc-megaparsec
ghc-relude
ghc-scientific
ghc-th-lift-instances
ghc-unordered-containers
ghc-vector))
(native-inputs (list ghc-morpheus-graphql-tests ghc-tasty ghc-tasty-hunit))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL Core")
(description "Build GraphQL APIs with your favorite functional language!")
(license license:expat)))
(define ghc-morpheus-graphql-app
(package
(name "ghc-morpheus-graphql-app")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-app" version))
(sha256
(base32
"0dicajcqgxpv1jhnywjjs0g4p5ryv0xlrywib1xwxrb04wy9aa3f"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-hashable
ghc-megaparsec
ghc-morpheus-graphql-core
ghc-relude
ghc-scientific
ghc-th-lift-instances
ghc-unordered-containers
ghc-vector))
(native-inputs (list ghc-morpheus-graphql-tests ghc-tasty ghc-tasty-hunit))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL App")
(description "Build GraphQL APIs with your favourite functional language!")
(license license:expat)))
(define ghc-morpheus-graphql-subscriptions
(package
(name "ghc-morpheus-graphql-subscriptions")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-subscriptions" version))
(sha256
(base32
"0gynrshv858g36jwvmh3q2asc6ppkr7hv9w9lx1qfjqfwm7r0140"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-morpheus-graphql-app
ghc-morpheus-graphql-core
ghc-relude
ghc-unliftio-core
ghc-unordered-containers
ghc-uuid
ghc-websockets))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL Subscriptions")
(description "Build GraphQL APIs with your favourite functional language!")
(license license:expat)))
(define ghc-morpheus-graphql-client
(package
(name "ghc-morpheus-graphql-client")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-client" version))
(sha256
(base32
"1j4r6ar6l462aq8qvxikmwyxd2f8i60gd3j0qf5pxsslgjwmjbi9"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-file-embed
ghc-modern-uri
ghc-morpheus-graphql-code-gen-utils
ghc-morpheus-graphql-core
ghc-morpheus-graphql-subscriptions
ghc-prettyprinter
ghc-relude
ghc-req
ghc-unliftio-core
ghc-unordered-containers
ghc-websockets
ghc-wuss))
(native-inputs (list ghc-tasty ghc-tasty-hunit))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL Client")
(description "Build GraphQL APIs with your favorite functional language!")
(license license:expat)))
(define ghc-morpheus-graphql-tests
(package
(name "ghc-morpheus-graphql-tests")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-tests" version))
(sha256
(base32
"1s9x4gcqd36gqf5w2wxiqhf7k9y44b7g7zm90y2kbclxqirs9rqf"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson ghc-relude ghc-tasty ghc-tasty-hunit
ghc-unordered-containers))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL Test")
(description "")
(license license:expat)))
(define ghc-morpheus-graphql-server
(package
(name "ghc-morpheus-graphql-server")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-server" version))
(sha256
(base32
"1hl2c78pnx2rxx869p6ixvnyhzm46f1hzalqz2vbwrflshpmjv91"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-morpheus-graphql-app
ghc-morpheus-graphql-core
ghc-relude
ghc-unordered-containers
ghc-vector))
(native-inputs (list ghc-file-embed ghc-morpheus-graphql-subscriptions
ghc-morpheus-graphql-tests ghc-tasty ghc-tasty-hunit))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL")
(description "Build GraphQL APIs with your favourite functional language!")
(license license:expat)))
(define ghc-relude
(package
(name "ghc-relude")
(version "1.1.0.0")
(source (origin
(method url-fetch)
(uri (hackage-uri "relude" version))
(sha256
(base32
"02dn99v2qmykj0l1qmn15k36hyxccy71b7iqavfk24zgjf5g07dm"))))
(build-system haskell-build-system)
(inputs (list ghc-hashable ghc-unordered-containers))
(native-inputs (list ghc-hedgehog ghc-doctest ghc-glob))
(home-page "https://github.com/kowainik/relude")
(synopsis
"Safe, performant, user-friendly and lightweight Haskell Standard Library")
(description
"@__relude__@ is an alternative prelude library. If you find the default
@Prelude@ unsatisfying, despite its advantages, consider using @relude@ instead.
== Relude goals and design principles * __Productivity.__ You can be more
productive with a \"non-standard\" standard library, and @relude@ helps you with
writing safer and more efficient code faster. * __Total programming__. Usage of
[/partial
functions/](https://www.reddit.com/r/haskell/comments/5n51u3/why_are_partial_functions_as_in_head_tail_bad/)
can lead to unexpected bugs and runtime exceptions in pure code. The types of
partial functions lie about their behaviour. And even if it is not always
possible to rely only on total functions, @relude@ strives to encourage
best-practices and reduce the chances of introducing a bug.
+---------------------------------+--------------------------------------------+
| __Partial__ | __Total__ |
+=================================+============================================+
| @head :: [a] -> a@ | @head :: NonEmpty a -> a@ |
+---------------------------------+--------------------------------------------+
| @tail :: [a] -> [a]@ | @tail :: NonEmpty a -> [a]@ |
+---------------------------------+--------------------------------------------+
| @read :: Read a => String -> a@ | @readMaybe :: Read a => String -> Maybe a@ |
+---------------------------------+--------------------------------------------+
| @fromJust :: Maybe a -> a@ | @fromMaybe :: a -> Maybe a -> a@ |
+---------------------------------+--------------------------------------------+
* __Type-safety__. We use the /\"make invalid states unrepresentable\"/ motto as
one of our guiding principles. If it is possible, we express this concept
through the types. /Example:/ @ whenNotNull :: Applicative f => [a] -> (NonEmpty
a -> f ()) -> f () @ * __Performance.__ We prefer @Text@ over
@[String](https://www.reddit.com/r/haskell/comments/29jw0s/whats_wrong_with_string/)@,
use space-leaks-free functions (e.g. our custom performant @sum@ and
@product@), introduce @\\{\\-\\# INLINE \\#\\-\\}@ and @\\{\\-\\# SPECIALIZE \\#\\-\\}@
pragmas where appropriate, and make efficient container types (e.g. @Map@,
@HashMap@, @Set@) more accessible. * __Minimalism__ (low number of
dependencies). We do not force users of @relude@ to stick to any specific lens
or text formatting or logging library. Where possible, @relude@ depends only on
boot libraries. The [Dependency
graph](https://raw.githubusercontent.com/kowainik/relude/main/relude-dependency-graph.png)
of @relude@ can give you a clearer picture. * __Convenience__. Despite
minimalism, we want to bring commonly used types and functions into scope, and
make available functions easier to use. Some examples of conveniences: 1. No
need to add @containers@, @unordered-containers@, @text@ and @bytestring@ to
dependencies in your @.cabal@ file to use the main API of these libraries 2. No
need to import types like @NonEmpty@, @Text@, @Set@, @Reader[T]@, @MVar@, @STM@
3. Functions like @liftIO@, @fromMaybe@, @sortWith@ are available by default as
well 4. @IO@ actions are lifted to @MonadIO@ * __Excellent documentation.__ 1.
Tutorial 2. Migration guide from @Prelude@ 3. Haddock for every function with
examples tested by [doctest](http://hackage.haskell.org/package/doctest). 4.
Documentation regarding [internal module
structure](http://hackage.haskell.org/package/relude/docs/Relude.html) 5.
@relude@-specific [HLint](http://hackage.haskell.org/package/hlint) rules:
@[.hlint.yaml](https://github.com/kowainik/relude/blob/main/.hlint.yaml)@ *
__User-friendliness.__ Anyone should be able to quickly migrate to @relude@.
Only some basic familiarity with the common libraries like @text@ and
@containers@ should be enough (but not necessary). * __Exploration.__ We have
space to experiment with new ideas and proposals without introducing breaking
changes. @relude@ uses the approach with @Extra.*@ modules which are not
exported by default. The chosen approach makes it quite easy for us to provide
new functionality without breaking anything and let the users decide to use it
or not.")
(license license:expat)))
(define ghc-morpheus-graphql-code-gen-utils
(package
(name "ghc-morpheus-graphql-code-gen-utils")
(version "0.27.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "morpheus-graphql-code-gen-utils" version))
(sha256
(base32
"11dfnyd9wbrwjfjz1qkc188x6l4b149jsyzjwh1gqji0skzsk3f6"))))
(build-system haskell-build-system)
(inputs (list ghc-morpheus-graphql-core ghc-prettyprinter ghc-relude
ghc-unordered-containers))
(home-page "https://morpheusgraphql.com")
(synopsis "Morpheus GraphQL CLI")
(description "code generator for Morpheus GraphQL")
(license license:bsd-3)))
(define ghc-wuss
(package
(name "ghc-wuss")
(version "2.0.1.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "wuss" version))
(sha256
(base32
"037dsx4mrp5mz2fif9zqlsp1n35g7v8749wmji281ing8jfiyl37"))))
(build-system haskell-build-system)
(inputs (list ghc-connection ghc-network ghc-websockets))
(home-page "http://hackage.haskell.org/package/wuss")
(synopsis "Secure WebSocket (WSS) clients")
(description
"Wuss is a library that lets you easily create secure WebSocket clients over the
WSS protocol. It is a small addition to
<https://hackage.haskell.org/package/websockets the websockets package> and is
adapted from existing solutions by <https://gist.github.com/jaspervdj/7198388
@@jaspervdj>, <https://gist.github.com/mpickering/f1b7ba3190a4bb5884f3
@@mpickering>, and <https://gist.github.com/elfenlaid/7b5c28065e67e4cf0767
@@elfenlaid>.")
(license license:expat)))
(define ghc-rsa
(package
(name "ghc-rsa")
(version "2.4.1")
(source (origin
(method url-fetch)
(uri (hackage-uri "RSA" version))
(sha256
(base32
"0hchsqrxpfw7mqrqwscfy8ig1w2di6w3nxpzi873w0gibv2diibj"))))
(build-system haskell-build-system)
(inputs (list ghc-crypto-api ghc-crypto-pubkey-types ghc-sha))
(native-inputs (list ghc-quickcheck ghc-tagged ghc-test-framework
ghc-test-framework-quickcheck2))
(home-page "http://hackage.haskell.org/package/RSA")
(synopsis
"Implementation of RSA, using the padding schemes of PKCS#1 v2.1.")
(description
"This library implements the RSA encryption and signature algorithms for
arbitrarily-sized ByteStrings. While the implementations work, they are not
necessarily the fastest ones on the planet. Particularly key generation. The
algorithms included are based of RFC 3447, or the Public-Key Cryptography
Standard for RSA, version 2.1 (a.k.a, PKCS#1 v2.1).")
(license license:bsd-3)))
(define ghc-crypto-pubkey-types
(package
(name "ghc-crypto-pubkey-types")
(version "0.4.3")
(source (origin
(method url-fetch)
(uri (hackage-uri "crypto-pubkey-types" version))
(sha256
(base32
"0q0wlzjmpx536h1zcdzrpxjkvqw8abj8z0ci38138kpch4igbnby"))))
(build-system haskell-build-system)
(inputs (list ghc-asn1-types ghc-asn1-encoding))
(home-page "http://github.com/vincenthz/hs-crypto-pubkey-types")
(synopsis "Generic cryptography Public keys algorithm types")
(description "Generic cryptography public keys algorithm types")
(license license:bsd-3)))
(define ghc-authenticate-oauth
(package
(name "ghc-authenticate-oauth")
(version "1.7")
(source (origin
(method url-fetch)
(uri (hackage-uri "authenticate-oauth" version))
(sha256
(base32
"0y4v46rn0cvm0sr1v8qq1zgzllrlrr3ji5gij1xprgf1zsazcvvl"))))
(build-system haskell-build-system)
(inputs (list ghc-http-client
ghc-crypto-pubkey-types
ghc-rsa
ghc-data-default
ghc-sha
ghc-random
ghc-http-types
ghc-blaze-builder
ghc-transformers-compat))
(home-page "http://github.com/yesodweb/authenticate")
(synopsis
"Library to authenticate with OAuth for Haskell web applications.")
(description "API docs and the README are available at
<http://www.stackage.org/package/authenticate-oauth>.")
(license license:bsd-3)))
(define ghc-req
(package
(name "ghc-req")
(version "3.13.0")
(source (origin
(method url-fetch)
(uri (hackage-uri "req" version))
(sha256
(base32
"1igs75bj57vs1fwpxj1765l6zkqd4r3p2gbwp6cv2l37drfxjck4"))))
(build-system haskell-build-system)
(inputs (list ghc-aeson
ghc-authenticate-oauth
ghc-blaze-builder
ghc-case-insensitive
ghc-connection
ghc-http-api-data
ghc-http-client
ghc-http-client-tls
ghc-http-types
ghc-modern-uri
ghc-monad-control
ghc-retry
ghc-transformers-base
ghc-unliftio-core))
(native-inputs (list ghc-quickcheck ghc-hspec hspec-discover ghc-hspec-core
ghc-quickcheck ghc-hspec))
(arguments '(#:tests? #f))
(home-page "https://github.com/mrkkrp/req")
(synopsis "HTTP client library")
(description "HTTP client library.")
(license license:bsd-3)))
(define ghc-modern-uri
(package
(name "ghc-modern-uri")
(version "0.3.6.0")
(source (origin
(method url-fetch)
(uri (hackage-uri "modern-uri" version))
(sha256
(base32
"1lj3il9wg7v88l1hj08k07g3f76xas0gz20l2wy8z6xbpcn5ng6g"))))
(build-system haskell-build-system)
(inputs (list ghc-quickcheck
ghc-contravariant
ghc-hashable
ghc-megaparsec
ghc-profunctors
ghc-reflection
ghc-tagged))
(native-inputs (list ghc-hspec hspec-discover ghc-hspec-megaparsec))
(home-page "https://github.com/mrkkrp/modern-uri")
(synopsis "Modern library for working with URIs")
(description "Modern library for working with URIs.")
(license license:bsd-3)))
(define ghc-mime-mail
(package
(name "ghc-mime-mail")
(version "0.5.1")
(source (origin
(method url-fetch)
(uri (hackage-uri "mime-mail" version))
(sha256
(base32
"1s1wp8v1xlvw3r4qk1lv9zpm99ihka7a785zjl6i3fq1maqq955g"))))
(build-system haskell-build-system)
(inputs (list ghc-base64-bytestring ghc-random ghc-blaze-builder))
(native-inputs (list ghc-hspec hspec-discover))
(home-page "http://github.com/snoyberg/mime-mail")
(synopsis "Compose MIME email messages.")
(description
"Hackage documentation generation is not reliable. For up to date documentation,
please see: <http://www.stackage.org/package/mime-mail>.")
(license license:expat)))
(define ghc-smtp-mail
(package
(name "ghc-smtp-mail")
(version "0.3.0.0")
(source (origin
(method url-fetch)
(uri (hackage-uri "smtp-mail" version))
(sha256
(base32
"0q81m4mi43cd0f1azm6984xw3qw2s6ygszdn86j5z3g5sjj5dax4"))))
(build-system haskell-build-system)
(inputs (list ghc-base16-bytestring
ghc-base64-bytestring
ghc-connection
ghc-mime-mail
ghc-network
ghc-network-bsd
ghc-cryptonite
ghc-memory))
(home-page "http://github.com/jhickner/smtp-mail")
(synopsis "Simple email sending via SMTP")
(description
"This packages provides a simple interface for mail over SMTP. PLease see the
README for more information.")
(license license:bsd-3)))
(define-public go-github-com-jmoiron-sqlx
(package
(name "go-github-com-jmoiron-sqlx")
(version "1.3.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jmoiron/sqlx")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"09snd3gfi3sm3gib7jdc6p8zxpn2ah0isqnibbag6f63k473yj14"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/jmoiron/sqlx"))
(propagated-inputs
(list go-github-com-mattn-go-sqlite3
go-github-com-lib-pq
go-github-com-go-sql-driver-mysql))
(home-page "https://github.com/jmoiron/sqlx")
(synopsis "sqlx")
(description
"Package sqlx provides general purpose extensions to database/sql.")
(license license:expat)))
(define-public go-github-com-pierrec-lz4
(package
(name "go-github-com-pierrec-lz4")
(version "v2.0.5+incompatible")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pierrec/lz4")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"0y5rh7z01zycd59nnjpkqq0ydyjmcg9j1xw15q1i600l9j9g617p"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/pierrec/lz4"))
(home-page "https://github.com/pierrec/lz4")
(synopsis "lz4 : LZ4 compression in pure Go")
(description
"Package lz4 implements reading and writing lz4 compressed data (a frame), as
specified in
@url{http://fastcompression.blogspot.fr/2013/04/lz4-streaming-format-final.html,http://fastcompression.blogspot.fr/2013/04/lz4-streaming-format-final.html}.")
(license license:bsd-3)))
(define-public go-github-com-clickhouse-clickhouse-go
(package
(name "go-github-com-clickhouse-clickhouse-go")
(version "1.5.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ClickHouse/clickhouse-go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"15yf96mx3fkjyyasb8gjw6ml476k9qacp54bdjrb14pafz3p3rgf"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/ClickHouse/clickhouse-go"
#:tests? #f))
(propagated-inputs
(list go-github-com-stretchr-testify
go-github-com-pierrec-lz4
go-github-com-jmoiron-sqlx
go-github-com-cloudflare-golz4
go-github-com-bkaradzic-go-lz4))
(home-page "https://github.com/ClickHouse/clickhouse-go")
(synopsis "ClickHouse")
(description
"Golang SQL database driver for @url{https://clickhouse.yandex/,Yandex
ClickHouse}")
(license license:expat)))
(define-public go-github-com-joho-godotenv
(package
(name "go-github-com-joho-godotenv")
(version "1.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/joho/godotenv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1036h59vyhb58n817az6yg0zw5wa87yb86i7fnbdq8cw46mnjgw8"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/joho/godotenv"))
(home-page "https://github.com/joho/godotenv")
(synopsis "GoDotEnv")
(description
"Package godotenv is a go port of the ruby dotenv library
(@url{https://github.com/bkeepers/dotenv,https://github.com/bkeepers/dotenv})")
(license license:expat)))
(define-public go-github-com-kami-zh-go-capturer
(package
(name "go-github-com-kami-zh-go-capturer")
(version "0.0.0-20211219060012-52ea6c8fed04")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zenizh/go-capturer")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"0zwz9gr1863z32gz9nyysg66mg124w6nql4m99g2dg6fbq2klda4"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/kami-zh/go-capturer"))
(home-page "https://github.com/kami-zh/go-capturer")
(synopsis "go-capturer")
(description
"Capture @code{os.Stdout} and/or @code{os.Stderr} in Go. This package is useful
for writing tests which print some outputs using @code{fmt} package.")
(license license:expat)))
(define-public go-github-com-cloudflare-golz4
(package
(name "go-github-com-cloudflare-golz4")
(version "0.0.0-20150217214814-ef862a3cdc58")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cloudflare/golz4")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ckiwp3aa010sdnki6vd32f0n08768ppnggc8d7syzh3kkn9zvn1"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/cloudflare/golz4"
#:tests? #f))
(home-page "https://github.com/cloudflare/golz4")
(synopsis "golz4")
(description "Package lz4 implements compression using lz4.c and lz4hc.c")
(license license:bsd-3)))
(define-public go-github-com-cpuguy83-go-md2man-v2
(package
(name "go-github-com-cpuguy83-go-md2man-v2")
(version "2.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cpuguy83/go-md2man")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"19qri18cinpzxblkid6ngz2vcxslv73s1aid900q0gfzvc71mqqb"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/cpuguy83/go-md2man/v2"))
(propagated-inputs (list go-github-com-russross-blackfriday-v2))
(home-page "https://github.com/cpuguy83/go-md2man")
(synopsis "go-md2man")
(description "Converts markdown into roff (man pages).")
(license license:expat)))
(define-public go-github-com-russross-blackfriday-v2
(package
(name "go-github-com-russross-blackfriday-v2")
(version "2.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/russross/blackfriday")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0d1rg1drrfmabilqjjayklsz5d0n3hkf979sr3wsrw92bfbkivs7"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/russross/blackfriday/v2"))
(home-page "https://github.com/russross/blackfriday")
(synopsis "Blackfriday")
(description "Package blackfriday is a markdown processor.")
(license license:bsd-2)))
(define-public dbmate
(package
(name "dbmate")
(version "1.15.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/amacneil/dbmate")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1dbhm2aqppn4m55xnx18017shsy109hqv2nhksxb4ix83bjaq5vq"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/amacneil/dbmate"))
(propagated-inputs
(list go-gopkg-in-yaml-v3
go-github-com-russross-blackfriday-v2
go-github-com-pmezard-go-difflib
go-github-com-davecgh-go-spew
go-github-com-cpuguy83-go-md2man-v2
go-github-com-cloudflare-golz4
go-github-com-urfave-cli-v2
go-github-com-stretchr-testify
go-github-com-mattn-go-sqlite3
go-github-com-lib-pq
go-github-com-kami-zh-go-capturer
go-github-com-joho-godotenv
go-github-com-go-sql-driver-mysql
go-github-com-clickhouse-clickhouse-go))
(home-page "https://github.com/amacneil/dbmate")
(synopsis "Sql database migration tool")
(description
"Dbmate is a database migration tool, to keep your database schema in sync across
multiple developers and your production servers.")
(license license:expat)))
datarekisteri