diff options
Diffstat (limited to 'gnu/packages/haskell-crypto.scm')
-rw-r--r-- | gnu/packages/haskell-crypto.scm | 66 |
1 files changed, 64 insertions, 2 deletions
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm index 8d28a77fc1..882773ab68 100644 --- a/gnu/packages/haskell-crypto.scm +++ b/gnu/packages/haskell-crypto.scm @@ -25,6 +25,8 @@ #:use-module (gnu packages compression) #:use-module (gnu packages haskell) #:use-module (gnu packages haskell-check) + #:use-module (gnu packages haskell-xyz) + #:use-module (gnu packages tls) #:use-module (guix build-system haskell) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) @@ -69,8 +71,7 @@ format.") (build-system haskell-build-system) (inputs `(("ghc-hourglass" ,ghc-hourglass) - ("ghc-asn1-types" ,ghc-asn1-types) - ("ghc-text" ,ghc-text))) + ("ghc-asn1-types" ,ghc-asn1-types))) (native-inputs `(("ghc-tasty" ,ghc-tasty) ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) @@ -776,3 +777,64 @@ Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many extensions.") (license license:bsd-3))) +(define-public ghc-hsopenssl + (package + (name "ghc-hsopenssl") + (version "0.11.4.15") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "HsOpenSSL/HsOpenSSL-" version ".tar.gz")) + (sha256 + (base32 + "0idmak6d8mpbxphyq9hkxkmby2wnzhc1phywlgm0zw6q47pwxgff")))) + (build-system haskell-build-system) + (inputs + `(("ghc-network" ,ghc-network) + ("openssl" ,openssl))) + (arguments + `(#:cabal-revision + ("1" "0bkcw2pjfgv1bhgkrpncvwq9czfr7cr4ak14n0v8c2y33i33wk5z"))) + (home-page "https://github.com/vshabanov/HsOpenSSL") + (synopsis "Partial OpenSSL binding for Haskell") + (description "HsOpenSSL is an OpenSSL binding for Haskell. It can +generate RSA and DSA keys, read and write PEM files, generate message +digests, sign and verify messages, encrypt and decrypt messages. It has +also some capabilities of creating SSL clients and servers. This +package is in production use by a number of Haskell based systems and +stable. You may also be interested in the tls package, +@uref{http://hackage.haskell.org/package/tls}, which is a pure Haskell +implementation of SSL.") + (license license:public-domain))) + +(define-public ghc-openssl-streams + (package + (name "ghc-openssl-streams") + (version "1.2.1.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "openssl-streams/openssl-streams-" + version ".tar.gz")) + (sha256 + (base32 + "0pwghr7ygv59k572xsj1j97rilkbjz66qaiyj0ra2wfg6pl70wfw")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hsopenssl" ,ghc-hsopenssl) + ("ghc-io-streams" ,ghc-io-streams) + ("ghc-network" ,ghc-network))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit))) + (arguments + `(#:cabal-revision + ("2" "1004kgdryflpkp19dv4ikilhcn0xbfc5dsp6v3ib34580pcfj7wy"))) + (home-page "http://hackage.haskell.org/package/openssl-streams") + (synopsis "OpenSSL network support for io-streams") + (description "This library contains io-streams routines for secure +networking using OpenSSL (by way of HsOpenSSL).") + (license license:bsd-3))) |