gnu: Add matterhorn.

  • Done
  • quality assurance status badge
Details
6 participants
  • elaexuotee
  • Mathieu
  • Maxime Devos
  • (
  • Ricardo Wurmus
  • Romain GARBAGE
Owner
unassigned
Submitted by
elaexuotee
Severity
normal
E
E
elaexuotee wrote on 8 Nov 2020 13:53
(address . guix-patches@gnu.org)
2674A0N1F01CQ.3GO4FVW1X3O76@wilsonb.com
Hey Guix,

This packages up a nice CLI client for Mattermost chat servers (a self-hosted,
libre Slack alternative).

Anyway, it's a Haskell package and ended up requiring quite a few
dependendencies along with a few version-updated alternatives to existing
packages.

The attached patch bundles all these up together, but what is the appropriate
convention in this case?

The bulk of the work is completely thanks to the hackage importer, but I did
spend quite a bit of time cleaning these up and sanity checking things.
Everything should pass the lint checks as well as indentation.

Also, for two packages, I had to disable tests. There are comments explaining
why in each case.

Let me know what you think!
(
CMSPINIXM5VA.GR7957O7UF4M@guix-aspire
Hi,

This patch must have slipped through the cracks, but it was mentioned
on IRC today, so I decided to do a little review :)

First of all,

(1) You should have one commit per package.
(2) It's better, though not required, to use the procedure described here[1]
to send patches, instead of using attachments. This makes it much easier
to annotate the patch with review comments, at least here in aerc :)


Toggle quote (5 lines)
> + (inputs
> + `(("ghc-random" ,ghc-random)
> + ("ghc-quickcheck" ,ghc-quickcheck)
> + ("ghc-semigroupoids" ,ghc-semigroupoids)))

You should use the "new style" of inputs:

Toggle quote (5 lines)
> + (inputs
> + (list ghc-random
> + ghc-quickcheck
> + ghc-semigroupoids))

Same for any native- and propagated- inputs.

Toggle quote (4 lines)
> + (arguments
> + `(#:cabal-revision
> + ("3" "1ndz5x6njl35h73il5c6qpaqd4ynvg21n6k7sb8aq09gfbg544d8")))

There's also a new arguments style:

Toggle quote (12 lines)
> + (arguments
> + (list #:cabal-revision
> + (list "3" "1ndz5x6njl35h73il5c6qpaqd4ynvg21n6k7sb8aq09gfbg544d8")))

> + (description
> + "This library is intended to be a comprehensive solution to parsing and
> +selecting quality-indexed values in HTTP headers. It is capable of parsing
> +both media types and language parameters from the Accept and Content header
> +families, and can be extended to match against other accept headers as well.
> +Selecting the appropriate header value is achieved by comparing a list of
> +server options against the quality-indexed values supplied by the client.")

This is a wee bit too long IMO.

-- (
M
M
Maxime Devos wrote on 12 Sep 2022 18:47
Re: [bug#44518] gnu: Add matterhorn.
4918ad1b-fda2-69ca-619c-abb30753292d@telenet.be
On 10-09-2022 14:06, ( via Guix-patches via wrote:
Toggle quote (11 lines)
>> ription
>> + "This library is intended to be a comprehensive solution to parsing and
>> +selecting quality-indexed values in HTTP headers. It is capable of parsing
>> +both media types and language parameters from the Accept and Content header
>> +families, and can be extended to match against other accept headers as well.
>> +Selecting the appropriate header value is achieved by comparing a list of
>> +server options against the quality-indexed values supplied by the client.")
> This is a wee bit too long IMO.
>
> -- (
>
Myself, I consider the length to be about perfect -- it isn't verbosely
worded, it is only a single paragraph and it clearly explains what it
can do.
Greetings,
Maxime.
Attachment: OpenPGP_signature
M
M
Mathieu wrote on 4 Nov 2022 16:11
Re: gnu: Add matterhorn.
(address . 44518@debbugs.gnu.org)
af59e078-0850-4080-b955-09699c4cb9de@disroot.org
Do you receive email notifications from here, elaexuotee, and are you by any chance still an active Guix user? Matterhorn would be a great addition to Guix packages.
R
R
Ricardo Wurmus wrote on 7 Jul 01:07 +0200
Re: [PATCH] gnu: Add matterhorn.
(name . Romain GARBAGE)(address . romain.garbage@inria.fr)
87zfqurufm.fsf@elephly.net
Hi Romain,

Toggle quote (11 lines)
> * gnu/packages/haskell-apps.scm (matterhorn): New variable.
> * gnu/packages/haskell-crypto.scm (ghc-crypton, ghc-crypton-x509,
> ghc-crypton-x509-store, ghc-crypton-x509-system,
> ghc-crypton-x509-validation, ghc-tls-1.9): New variables.
> * gnu/packages/haskell-web.scm (ghc-crypton-connection,
> ghc-mattermost-api, ghc-mattermost-api-qc, ghc-modern-uri): New variables.
> * gnu/packages/haskell-xyz.scm (ghc-aspell-pipe, ghc-bimap,
> ghc-checkers, ghc-monad-parallel, ghc-text-zipper-13, ghc-stm-delay,
> ghc-unique, ghc-unix-compat-7, ghc-vty-6, ghc-vty-crossplatform,
> ghc-vty-unix, ghc-hclip, ghc-brick, ghc-brick-skylighting): New variables.

thank you for the patch! This looks all pretty good.

There are a few minor quibbles:

* Please make one commit for every added package.
* matterhorn: Please sort inputs alphabetically.
* ghc-crypton: please use Texinfo syntax such as @itemize for the list
of features.
* ghc-crypton-x509: it would be good to know if there is something we
can do to make tests pass. If the tests are pointless it would be
good to record that. Please also make sure that the description is
... descriptive.
* ghc-tls-1.9, ghc-unix-compat-7, ghc-vty-6, ghc-text-zipper-13: Is it
desirable to have these packages instead of upgrading the existing
packages? Is there pending work on the Haskell team branch(es) that
would make the use of these versioned variants obsolete?
* Please check whether potentially unwanted changes should really be
included, such as the cosmetic changes to ghc-githash.

I also just found that there's an old patch set for matterhorn; I cc'd
the issue email address.

--
Ricardo
R
R
Romain GARBAGE wrote on 9 Jul 11:02 +0200
(name . Ricardo Wurmus)(address . rekado@elephly.net)
D2KVXMWSD66D.14U3EO3MT8PA1@guix-A102
Hi Ricardo,

On Sun Jul 7, 2024 at 1:07 AM CEST, Ricardo Wurmus wrote:
Toggle quote (15 lines)
> Hi Romain,
>
> > * gnu/packages/haskell-apps.scm (matterhorn): New variable.
> > * gnu/packages/haskell-crypto.scm (ghc-crypton, ghc-crypton-x509,
> > ghc-crypton-x509-store, ghc-crypton-x509-system,
> > ghc-crypton-x509-validation, ghc-tls-1.9): New variables.
> > * gnu/packages/haskell-web.scm (ghc-crypton-connection,
> > ghc-mattermost-api, ghc-mattermost-api-qc, ghc-modern-uri): New variables.
> > * gnu/packages/haskell-xyz.scm (ghc-aspell-pipe, ghc-bimap,
> > ghc-checkers, ghc-monad-parallel, ghc-text-zipper-13, ghc-stm-delay,
> > ghc-unique, ghc-unix-compat-7, ghc-vty-6, ghc-vty-crossplatform,
> > ghc-vty-unix, ghc-hclip, ghc-brick, ghc-brick-skylighting): New variables.
>
> thank you for the patch! This looks all pretty good.

Thank you for your review. I will send a v2 fixing the comments I don't answer
below.

Toggle quote (2 lines)
> There are a few minor quibbles:
>
[...]
Toggle quote (5 lines)
> * ghc-tls-1.9, ghc-unix-compat-7, ghc-vty-6, ghc-text-zipper-13: Is it
> desirable to have these packages instead of upgrading the existing
> packages? Is there pending work on the Haskell team branch(es) that
> would make the use of these versioned variants obsolete?

I don't have myself an answer for the first question: I didn't try to upgrade
any of these packages locally as I didn't want to "break things in Guix".
I guess I could give it a try before sending the v2 if you think it is
better. WDYT?

As for the 2nd question, I checked the haskell-team branch and didn't
see any update of these packages (I might not have checked the right
thing though).

--
Romain
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 01/25] gnu: Add ghc-crypton.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-2-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton): New variable.

Change-Id: I91902a8dbc0df2d19729933e6cd096810fdc1059
---
gnu/packages/haskell-crypto.scm | 40 +++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 83ba8bc10b..12ffd10743 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -612,6 +612,46 @@ (define-public ghc-crypto-random
abstraction for CPRNGs.")
(license license:bsd-3)))
+(define-public ghc-crypton
+ (package
+ (name "ghc-crypton")
+ (version "0.34")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton" version))
+ (sha256
+ (base32 "1mhypjhzn95in853bp7ary0a2xc6lsji6j8hrrgn2mfa4ilq8i24"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton")))
+ (inputs (list ghc-memory ghc-basement))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-tasty-hunit
+ ghc-tasty-kat))
+ (home-page "https://github.com/kazu-yamamoto/crypton")
+ (synopsis "Cryptography Primitives sink")
+ (description
+ "This package provides a repository of cryptographic primitives.
+@itemize @bullet
+
+@item Symmetric ciphers: AES, DES, 3DES, CAST5, Blowfish, Twofish, Camellia, RC4,
+Salsa, XSalsa, ChaCha.
+
+@item Hash: SHA1, SHA2, SHA3, SHAKE, MD2, MD4, MD5, Keccak, Skein, Ripemd, Tiger,
+Whirlpool, Blake2.
+
+@item MAC: HMAC, KMAC, Poly1305
+
+@item Asymmetric crypto: DSA, RSA, DH, ECDH, ECDSA, ECC, Curve25519, Curve448,
+Ed25519, Ed448
+
+@item Key Derivation Function: PBKDF2, Scrypt, HKDF, Argon2, BCrypt, BCryptPBKDF
+
+@item Cryptographic Random generation: System Entropy, Deterministic Random Generator
+
+@item Data related: Anti-Forensic Information Splitter (AFIS)
+@end itemize")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 02/25] gnu: Add ghc-crypton-x509.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-3-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509): New variable.

Change-Id: I0bea5088c2fd23b77f22a2017303bac849c45c29
---
gnu/packages/haskell-crypto.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 12ffd10743..9bbf3ee0fc 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -652,6 +652,37 @@ (define-public ghc-crypton
@end itemize")
(license license:bsd-3)))
+(define-public ghc-crypton-x509
+ (package
+ (name "ghc-crypton-x509")
+ (version "1.7.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509" version))
+ (sha256
+ (base32 "1zyaz0krf08g36g30zr5wn8f2x51l4dj2zcjnhpiw9h05p54mdzb"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509")))
+ (inputs (list ghc-memory
+ ghc-hourglass
+ ghc-pem
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-asn1-parse
+ ghc-crypton))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-x509))
+ (arguments
+ `(#:cabal-revision ("1"
+ "10a2x47znhbayyfr6fqgq27623akpycyjbfxz4hnavavf1x6ary5")
+ ;; build phase fails when tests are activated.
+ ;; See https://github.com/kazu-yamamoto/crypton-certificate/pull/7
+ #:tests? #f))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X509 reader and writer")
+ (description "Generic X509 support for Haskell.")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 00/25] Add matterhorn package.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-1-romain.garbage@inria.fr
v2 changes:
* one commit per package addition/update
* matterhorn inputs sorted alphabetically
* ghc-crypton description modified to use Texinfo syntax
* ghc-crypton-x509 description modified
* added a comment explaining why tests are disabled for
ghc-crypton-x509
* updated ghc-text-zipper instead of adding a new package with a more
up-to-date version
* removed cosmetic changes for unrelevant packages (added dby mistake)

A few comments regarding the other points raised by Ricardo:
* As for reenabling the tests for ghc-crypton-x509, the PR mentioned in
the comment provided a trivial fix of the .cabal file (which I didn't
try). I can add it as a snippet or a substitute* in a fix phase if
needed, just let me know.

* As for updating ghc-tls, ghc-vty and ghc-unix-compat, it seems that
the changes are not trivial and that updating these packages introduces
breakages (tested locally). IMHO, updating the corresponding
packages/fixing the breakages is out of the scope of this patch series.
What would the proper way to handle things here?

Romain GARBAGE (25):
gnu: Add ghc-crypton.
gnu: Add ghc-crypton-x509.
gnu: Add ghc-crypton-x509-store.
gnu: Add ghc-crypton-x509-system.
gnu: Add ghc-crypton-x509-validation.
gnu: Add ghc-tls-1.9.
gnu: Add ghc-crypton-connection.
gnu: Add ghc-mattermost-api.
gnu: Add ghc-mattermost-api-qc.
gnu: Add ghc-modern-uri.
gnu: Add ghc-aspell-pipe.
gnu: Add ghc-bimap.
gnu: Add ghc-checkers.
gnu: Add ghc-monad-parallel.
gnu: ghc-text-zipper: Update to 0.13.
gnu: Add ghc-stm-delay.
gnu: Add ghc-unique.
gnu: Add ghc-unix-compat-7.
gnu: Add ghc-vty-crossplatform.
gnu: Add ghc-vty-unix.
gnu: Add ghc-vty-6.
gnu: Add ghc-hclip.
gnu: Add ghc-brick.
gnu: Add ghc-brick-skylighting.
gnu: Add matterhorn.

gnu/packages/haskell-apps.scm | 92 +++++++++
gnu/packages/haskell-crypto.scm | 177 ++++++++++++++++++
gnu/packages/haskell-web.scm | 121 ++++++++++++
gnu/packages/haskell-xyz.scm | 318 +++++++++++++++++++++++++++++++-
4 files changed, 706 insertions(+), 2 deletions(-)

--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 03/25] gnu: Add ghc-crypton-x509-store.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-4-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-store): New variable.

Change-Id: Id9e2bd91d99c09fee5bd0054741176108b7376ed
---
gnu/packages/haskell-crypto.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 9bbf3ee0fc..3f2517143c 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -683,6 +683,28 @@ (define-public ghc-crypton-x509
(description "Generic X509 support for Haskell.")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-store
+ (package
+ (name "ghc-crypton-x509-store")
+ (version "1.6.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-store" version))
+ (sha256
+ (base32 "0vr5b9cyf9x016wn1g0bryslf5nz8jq2sy8r3llwqfg02apihqiy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-store")))
+ (inputs (list ghc-pem ghc-asn1-types ghc-asn1-encoding ghc-crypton
+ ghc-crypton-x509))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X.509 collection accessing and storing methods")
+ (description
+ "X.509 collection accessing and storing methods for certificate, crl, exception
+list")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 05/25] gnu: Add ghc-crypton-x509-validation.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-6-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-validation): New variable.

Change-Id: Ib25c2dee8fef24c763cf70dfa1c615405d250d39
---
gnu/packages/haskell-crypto.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 5c69def661..5c5305afa9 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -725,6 +725,33 @@ (define-public ghc-crypton-x509-system
storage methods")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-validation
+ (package
+ (name "ghc-crypton-x509-validation")
+ (version "1.6.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-validation" version))
+ (sha256
+ (base32 "1xjhwvmkcy47a6xiqxb3xy944ca7g660203jdrz5xzd46zibfq0f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-validation")))
+ (inputs (list ghc-memory
+ ghc-hourglass
+ ghc-data-default-class
+ ghc-pem
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X.509 Certificate and CRL validation")
+ (description "X.509 Certificate and CRL validation. please see README")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 04/25] gnu: Add ghc-crypton-x509-system.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-5-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-system): New variable.

Change-Id: Idfadaf630a3bcc4d019738d37ae9ee888f49fd80
---
gnu/packages/haskell-crypto.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 3f2517143c..5c69def661 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -705,6 +705,26 @@ (define-public ghc-crypton-x509-store
list")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-system
+ (package
+ (name "ghc-crypton-x509-system")
+ (version "1.6.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-system" version))
+ (sha256
+ (base32 "1jilnr9715njlx1hqvg5lrsrwk12r04maypmh18di0sybwg2cdm4"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-system")))
+ (inputs (list ghc-pem ghc-crypton-x509 ghc-crypton-x509-store))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "Handle per-operating-system X.509 accessors and storage")
+ (description
+ "System X.509 handling for accessing operating system dependents store and other
+storage methods")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 06/25] gnu: Add ghc-tls-1.9.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-7-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-tls-1.9): New variable.

Change-Id: I53d26e85d7ed333be036cb5e0e359b72f5c21262
---
gnu/packages/haskell-crypto.scm | 37 +++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 5c5305afa9..dfd28a3537 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -861,6 +861,43 @@ (define-public ghc-tls
extensions.")
(license license:bsd-3)))
+(define-public ghc-tls-1.9
+ (package
+ (name "ghc-tls")
+ (version "1.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tls" version))
+ (sha256
+ (base32 "0gj3af9sqd0bw7dpcqfyvbslpxsk2ij00a77kl710fwhw35vj1an"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tls")))
+ (inputs (list ghc-cereal
+ ghc-data-default-class
+ ghc-memory
+ ghc-crypton
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton-x509-validation
+ ghc-async
+ ghc-unix-time
+ ghc-network))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck))
+ (home-page "http://github.com/vincenthz/hs-tls")
+ (synopsis "TLS/SSL protocol native implementation (Server and Client)")
+ (description
+ "Native Haskell TLS and SSL protocol implementation for server and client.
+This provides a high-level implementation of a sensitive security protocol,
+eliminating a common set of security issues through the use of the advanced
+type system, high level constructions and common Haskell features. Currently
+implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and
+Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many
+extensions.")
+ (license license:bsd-3)))
+
(define-public ghc-hsopenssl
(package
(name "ghc-hsopenssl")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 07/25] gnu: Add ghc-crypton-connection.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-8-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-crypton-connection): New variable.

Change-Id: I37bc263de2aa9f3ce7b06b9a752424a0550bf6d3
---
gnu/packages/haskell-web.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 0aaa609e42..08b2136cb2 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -89,6 +89,35 @@ (define-public ghc-cookie
(description "HTTP cookie parsing and rendering library for Haskell.")
(license license:expat)))
+(define-public ghc-crypton-connection
+ (package
+ (name "ghc-crypton-connection")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-connection" version))
+ (sha256
+ (base32 "07lrkv6lwphsyp4797yp8ywnndzd270bk58r8gwyby0hr4xy52r0"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-connection")))
+ (inputs (list ghc-basement
+ ghc-data-default-class
+ ghc-network
+ ghc-tls-1.9
+ ghc-socks
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton-x509-system
+ ghc-crypton-x509-validation))
+ (home-page "https://github.com/kazu-yamamoto/crypton-connection")
+ (synopsis "Simple and easy network connections API")
+ (description
+ "Simple network library for all your connection need. Features: Really simple to
+use, SSL/TLS, SOCKS. This library provides a very simple api to create sockets to a
+destination with the choice of SSL/TLS, and SOCKS.")
+ (license license:bsd-3)))
+
(define-public ghc-curl
(package
(name "ghc-curl")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 08/25] gnu: Add ghc-mattermost-api.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-9-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-mattermost-api): New variable.

Change-Id: Idc2a8fb0d8589b38d7e50aa7565fff71dcc6ab28
---
gnu/packages/haskell-web.scm | 42 ++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 08b2136cb2..8021cbaefc 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -843,6 +843,48 @@ (define-public ghc-css-text
Haskell.")
(license license:bsd-3)))
+(define-public ghc-mattermost-api
+ (package
+ (name "ghc-mattermost-api")
+ (version "90000.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "mattermost-api" version))
+ (sha256
+ (base32 "1ka3r4bnfwlbjnkws8vkg8i9gj8wzsyss137p7hxrx4sr75s6iyv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "mattermost-api")))
+ (inputs (list ghc-websockets
+ ghc-aeson
+ ghc-crypton-connection
+ ghc-memory
+ ghc-resource-pool
+ ghc-http
+ ghc-http-media
+ ghc-network-uri
+ ghc-modern-uri
+ ghc-unordered-containers
+ ghc-hashable
+ ghc-gitrev
+ ghc-microlens
+ ghc-microlens-th
+ ghc-pretty-show
+ ghc-split
+ ghc-connection))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit ghc-hunit))
+ (arguments
+ (list
+ #:tests? #f)) ;tests fail: unable to setup network socket
+ (home-page "http://hackage.haskell.org/package/mattermost-api")
+ (synopsis "Client API for Mattermost chat system")
+ (description
+ "Client API for Mattermost chat system. Mattermost is a flexible, open source
+messaging platform that meets even the most demanding privacy and security
+standards. This library provides network API interaction with the Mattermost
+server.")
+ (license license:bsd-3)))
+
(define-public ghc-mime-types
(package
(name "ghc-mime-types")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 11/25] gnu: Add ghc-aspell-pipe.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-12-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-aspell-pipe): New variable.

Change-Id: I0d31c9c457ce33b45c0fb6589413208796843920
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index fa423ae2ca..3bdc8d6d6b 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -450,6 +450,26 @@ (define-public ghc-appar
style.")
(license license:bsd-3)))
+(define-public ghc-aspell-pipe
+ (package
+ (name "ghc-aspell-pipe")
+ (version "0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "aspell-pipe" version))
+ (sha256
+ (base32 "09dw4v4j5pmqi8pdh3p7kk7f8pph5w33s7vd21fgvhv3arnrj6p8"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "aspell-pipe")))
+ (inputs (list ghc-async))
+ (home-page "http://hackage.haskell.org/package/aspell-pipe")
+ (synopsis "Pipe-based interface to the Aspell program")
+ (description
+ "This package provides a pipe-based interface to the Aspell program (no dynamic
+linking required).")
+ (license license:bsd-3)))
+
(define-public ghc-assoc
(package
(name "ghc-assoc")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 09/25] gnu: Add ghc-mattermost-api-qc.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-10-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-mattermost-api-qc): New variable.

Change-Id: If28b8a03170bb235b2418329d408fec8f06d4b7c
---
gnu/packages/haskell-web.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 8021cbaefc..16a38fd760 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -885,6 +885,27 @@ (define-public ghc-mattermost-api
server.")
(license license:bsd-3)))
+(define-public ghc-mattermost-api-qc
+ (package
+ (name "ghc-mattermost-api-qc")
+ (version "90000.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "mattermost-api-qc" version))
+ (sha256
+ (base32 "0lrb8l8nbrdp4y2ala8hchr8ikv5hqw710ffiiw1sz6z2dqiqbxm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "mattermost-api-qc")))
+ (inputs (list ghc-mattermost-api ghc-quickcheck))
+ (home-page "https://github.com/matterhorn-chat/mattermost-api-qc")
+ (synopsis "QuickCheck instances for the Mattermost client API library")
+ (description
+ "This package provides a library providing @code{QuickCheck} for the
+mattermost-api library to allow testing. This is provided as a separate library
+to allow use of the API library without testing dependencies.")
+ (license license:isc)))
+
(define-public ghc-mime-types
(package
(name "ghc-mime-types")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 10/25] gnu: Add ghc-modern-uri.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-11-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-modern-uri): New variable.

Change-Id: I62d4c2722303cbeb9a7ef1acd3f12f355cf67509
---
gnu/packages/haskell-web.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 16a38fd760..bd33abdcb0 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -924,6 +924,35 @@ (define-public ghc-mime-types
"This library provides basic MIME type handling types and functions.")
(license license:expat)))
+(define-public ghc-modern-uri
+ (package
+ (name "ghc-modern-uri")
+ (version "0.3.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "modern-uri" version))
+ (sha256
+ (base32 "1sag8l91qd7xs56rlx8r6dz9zxxmqsnfw0v47az7l8nirv7zjih2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "modern-uri")))
+ (inputs (list ghc-quickcheck
+ ghc-hashable
+ ghc-megaparsec
+ ghc-profunctors
+ ghc-reflection
+ ghc-tagged))
+ (native-inputs (list ghc-hspec
+ ghc-hspec-megaparsec
+ ghc-hspec-discover))
+ (arguments
+ `(#:cabal-revision ("1"
+ "0c0mr8aqs963nmy7i8yfih24snaijgwkxim2q2khw12capshac0q")))
+ (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-public ghc-html
(package
(name "ghc-html")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 12/25] gnu: Add ghc-bimap.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-13-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-bimap): New variable.

Change-Id: Ib6ffebff5417273afaa3a08005aae3445606d6d2
---
gnu/packages/haskell-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 3bdc8d6d6b..60d25dd4bf 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -972,6 +972,27 @@ (define-public ghc-bifunctors
(description "This package provides bifunctors for Haskell.")
(license license:bsd-3)))
+(define-public ghc-bimap
+ (package
+ (name "ghc-bimap")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "bimap" version))
+ (sha256
+ (base32 "158cdwk9jwklcfgbn62dqq255i40w13ifggsdps87sxc5q7lpd5h"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "bimap")))
+ (native-inputs (list ghc-quickcheck))
+ (home-page "https://github.com/joelwilliamson/bimap")
+ (synopsis "Bidirectional mapping between two key types")
+ (description
+ "This package provides a data structure representing a bidirectional mapping
+between two key types. Each value in the bimap is associated with exactly one
+value of the opposite type.")
+ (license license:bsd-3)))
+
(define-public ghc-bindings-dsl
(package
(name "ghc-bindings-dsl")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 15/25] gnu: ghc-text-zipper: Update to 0.13.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-16-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-text-zipper): Update to 0.13.

Change-Id: I0ae9154713d799b48f9f0772a7c7ee2210493095
---
gnu/packages/haskell-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 4d00382ea3..67ced12750 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -8519,13 +8519,13 @@ (define-public ghc-text-short
(define-public ghc-text-zipper
(package
(name "ghc-text-zipper")
- (version "0.12")
+ (version "0.13")
(source (origin
(method url-fetch)
(uri (hackage-uri "text-zipper" version))
(sha256
(base32
- "00k7d6qfznhp6l2ihw3pppkn580pwd7ac7wx9vidil4y9hjagaw6"))))
+ "1acq583wmgb53viqslbkgl454300fawg5lryxddfiy1mqk3iqlh6"))))
(build-system haskell-build-system)
(properties '((upstream-name . "text-zipper")))
(inputs (list ghc-vector))
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 13/25] gnu: Add ghc-checkers.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-14-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-checkers): New variable.

Change-Id: I4228398238a169e49e68ead60cbe69ef0437e3e9
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 60d25dd4bf..e29e84aa9b 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -1830,6 +1830,31 @@ (define-public ghc-cheapskate
cross-site scripting (@dfn{XSS}) attacks.")
(license license:bsd-3)))
+(define-public ghc-checkers
+ (package
+ (name "ghc-checkers")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "checkers" version))
+ (sha256
+ (base32 "1r4rsa4k0fy8xig3m530ryflry9viv9v47g4gh7h0ld27rbd6z60"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "checkers")))
+ (inputs (list ghc-random ghc-quickcheck ghc-semigroupoids))
+ (arguments
+ `(#:cabal-revision ("1"
+ "0wkvf57zd7i87z18vj285whjpcl9pscpwxz2cp7v7w6kk0769p0i")))
+ (home-page "https://github.com/haskell-checkers/checkers")
+ (synopsis "Check properties on standard classes and data structures")
+ (description
+ "Checkers wraps up the expected properties associated with various standard type
+classes as @code{QuickCheck} properties. Also some morphism properties. It
+also provides arbitrary instances and generator combinators for common data
+types. . © 2008-2013 by Conal Elliott; BSD3 license.")
+ (license license:bsd-3)))
+
(define-public ghc-chell
(package
(name "ghc-chell")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:53 +0200
[PATCH v2 14/25] gnu: Add ghc-monad-parallel.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-15-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-monad-parallel): New variable.

Change-Id: I39a5b5392a50fb4f6e9e15ed107705486362d021
---
gnu/packages/haskell-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index e29e84aa9b..4d00382ea3 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -7563,6 +7563,28 @@ (define-public ghc-monad-par-extras
and other added capabilities layered on top of the @code{Par} monad.")
(license license:bsd-3)))
+(define-public ghc-monad-parallel
+ (package
+ (name "ghc-monad-parallel")
+ (version "0.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "monad-parallel" version))
+ (sha256
+ (base32 "1j905cwc440g7rvbhsdkqf50ag7p2bi6cy2rqsk918rn80fqqra4"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "monad-parallel")))
+ (inputs (list ghc-parallel ghc-transformers-compat))
+ (home-page "https://hub.darcs.net/blamario/SCC.wiki/")
+ (synopsis "Parallel execution of monadic computations")
+ (description
+ "This package defines classes of monads that can perform multiple executions in
+parallel and combine their results. For any monad that's an instance of the
+class, the package re-implements a subset of the Control.Monad interface, but
+with parallel execution.")
+ (license license:bsd-3)))
+
(define-public ghc-monadrandom
(package
(name "ghc-monadrandom")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 16/25] gnu: Add ghc-stm-delay.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-17-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-stm-delay): New variable.

Change-Id: If9e20a2c103549de9b4b7d63158fe34165f6036a
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 67ced12750..6bdff48b6e 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -11757,6 +11757,31 @@ (define-public ghc-stm-conduit
source and a sink.")
(license license:bsd-3)))
+(define-public ghc-stm-delay
+ (package
+ (name "ghc-stm-delay")
+ (version "0.1.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "stm-delay" version))
+ (sha256
+ (base32 "0cla21v89gcvmr1iwzibq13v1yq02xg4h6k9l6kcprj7mhd5hcmi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "stm-delay")))
+ (home-page "https://github.com/joeyadams/haskell-stm-delay")
+ (synopsis "Updatable one-shot timer polled with STM")
+ (description
+ "This library lets you create a one-shot timer, poll it using STM, and update it
+to ring at a different time than initially specified. . It uses GHC event
+manager timeouts when available (GHC 7.2+, @@-threaded@@, non-Windows OS),
+yielding performance similar to @@@code{threadDelay}@@ and
+@@@code{registerDelay}@@. Otherwise, it falls back to forked threads and
+@@@code{threadDelay}@@. . [0.1.1] Add @code{tryWaitDelayIO}, improve performance
+for certain cases of @@@code{newDelay}@@ and @@@code{updateDelay}@@, and improve
+example.")
+ (license license:bsd-3)))
+
(define-public ghc-stmonadtrans
(package
(name "ghc-stmonadtrans")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 20/25] gnu: Add ghc-vty-unix.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-21-romain.garbage@inria.fr
gnu/packages/haskell-xyz.scm (ghc-vty-unix): New variable.

Change-Id: Idf8e550a5d7b645d19af177dd65c5956ba3ab478
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index baf797a8ca..787f70b510 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14154,6 +14154,31 @@ (define-public ghc-vty-crossplatform
package so you don't have to conditionally depend on them in your cabal file.")
(license license:bsd-3)))
+(define-public ghc-vty-unix
+ (package
+ (name "ghc-vty-unix")
+ (version "0.2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty-unix" version))
+ (sha256
+ (base32 "1hfxc7qw884vlq8qshhyndl3zs10jc2xr6i69vhasjywkvh6gay2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty-unix")))
+ (inputs (list ghc-blaze-builder
+ ghc-vty-6
+ ghc-vector
+ ghc-utf8-string
+ ghc-microlens
+ ghc-microlens-mtl
+ ghc-microlens-th
+ ghc-ansi-terminal))
+ (home-page "http://hackage.haskell.org/package/vty-unix")
+ (synopsis "Unix backend for Vty")
+ (description "This package provides Unix terminal support for Vty.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 18/25] gnu: Add ghc-unix-compat-7.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-19-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-unix-compat-7): New variable.

Change-Id: I28e8e4924d4f829dd07059aa205d894803409320
---
gnu/packages/haskell-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index d8d0ddfb98..7558a677a4 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13437,6 +13437,28 @@ (define-public ghc-unix-compat
isn't available, portable implementations are used.")
(license license:bsd-3)))
+(define-public ghc-unix-compat-7
+ (package
+ (name "ghc-unix-compat")
+ (version "0.7.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "unix-compat" version))
+ (sha256
+ (base32 "0gz30f4g3gyjz60jbcg072ms67pwdn4by6wvdkg63hjshgl0cj60"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unix-compat")))
+ (native-inputs (list ghc-monad-parallel ghc-hspec ghc-hunit ghc-extra
+ ghc-temporary))
+ (home-page "https://github.com/haskell-pkg-janitors/unix-compat")
+ (synopsis "Portable POSIX-compatibility layer")
+ (description
+ "This package provides portable implementations of parts of the unix package.
+This package re-exports the unix package when available. When it isn't
+available, portable implementations are used.")
+ (license license:bsd-3)))
+
(define-public ghc-unix-time
(package
(name "ghc-unix-time")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 17/25] gnu: Add ghc-unique.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-18-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-unique): New variable.

Change-Id: Id9876b8018f5f8b3bcb82ab0bb13616ed298c31b
---
gnu/packages/haskell-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 6bdff48b6e..d8d0ddfb98 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13390,6 +13390,30 @@ (define-public ghc-uniplate
work, but is substantially simpler and faster.")
(license license:bsd-3)))
+(define-public ghc-unique
+ (package
+ (name "ghc-unique")
+ (version "0.4.7.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "Unique" version))
+ (sha256
+ (base32 "14f1qnmhdmbam8qis725dhwq1mk9h86fsnzhkwhsx73ny9z29s1l"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "Unique")))
+ (inputs (list ghc-extra ghc-hashable ghc-unordered-containers))
+ (native-inputs (list ghc-hspec ghc-quickcheck))
+ (arguments
+ `(#:tests? #f ;test Data.List.UniqueUnsorted.removeDuplicates fails
+ #:cabal-revision ("1"
+ "10s0npnfkh7naj49afmyrvnilikp6426fbhi49f97pxrgcmy4dvw")))
+ (home-page "http://hackage.haskell.org/package/Unique")
+ (synopsis "It provides the functionality like unix \"uniq\" utility")
+ (description
+ "Library provides the functions to find unique and duplicate elements in the list")
+ (license license:bsd-3)))
+
(define-public ghc-unix-compat
(package
(name "ghc-unix-compat")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 21/25] gnu: Add ghc-vty-6.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-22-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-vty-6): New variable.

Change-Id: I2e2dbbe0e99d26f38494fb6bdb51bc6d67e5c02c
---
gnu/packages/haskell-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 787f70b510..9bacacf9fc 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14179,6 +14179,33 @@ (define-public ghc-vty-unix
(description "This package provides Unix terminal support for Vty.")
(license license:bsd-3)))
+(define-public ghc-vty-6
+ (package
+ (name "ghc-vty")
+ (version "6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty" version))
+ (sha256
+ (base32 "0ywqfdngfv5pnsk5pa99yizpbhdq856sy3z70q2hmpmlc2r4h7vg"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty")))
+ (inputs (list ghc-blaze-builder ghc-microlens ghc-microlens-mtl
+ ghc-utf8-string ghc-vector))
+ (home-page "https://github.com/jtdaugherty/vty")
+ (synopsis "A simple terminal UI library")
+ (description
+ "vty is terminal GUI library in the niche of ncurses. It is intended to be easy
+to use and to provide good support for common terminal types. . See the
+@@vty-examples@@ package as well as the program
+@@examples/interactive_terminal_test.hs@@ included in the @@vty@@ repository for
+examples on how to use the library. . Import the @@Graphics.Vty@@ convenience
+module to get access to the core parts of the library. . © 2006-2007 Stefan
+O'Rear; BSD3 license. . © Corey O'Connor; BSD3 license. . © Jonathan
+Daugherty; BSD3 license.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 24/25] gnu: Add ghc-brick-skylighting.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-25-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-brick-skylighting): New variable.

Change-Id: I634c108edff99b1003c26dbb2f9107ed464a5e84
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 4ccb9c01ae..4e865483fb 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15926,6 +15926,26 @@ (define-public ghc-brick
package deprecates <http://hackage.haskell.org/package/vty-ui vty-ui>.")
(license license:bsd-3)))
+(define-public ghc-brick-skylighting
+ (package
+ (name "ghc-brick-skylighting")
+ (version "1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "brick-skylighting" version))
+ (sha256
+ (base32 "1nw2x9zn0jlvykm89v80fh4187bxgn8l4cljgnf4mp4ci7aqjmkr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "brick-skylighting")))
+ (inputs (list ghc-brick ghc-vty-6 ghc-skylighting-core))
+ (home-page "https://github.com/jtdaugherty/brick-skylighting/")
+ (synopsis "Show syntax-highlighted text in your Brick UI")
+ (description
+ "This package provides a module to use Skylighting to perform syntax highlighting
+and display the results in Brick-based interfaces.")
+ (license license:bsd-3)))
+
(define-public ghc-githash
(package
(name "ghc-githash")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 23/25] gnu: Add ghc-brick.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-24-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-brick): New variable.

Change-Id: I52fbfa27422a6aacca65d0e8ed5ffa3ab335cc67
---
gnu/packages/haskell-xyz.scm | 39 ++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 10618be91a..4ccb9c01ae 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15887,6 +15887,45 @@ (define-public ghc-breakpoint
[README](https://github.com/aaronallen8455/breakpoint#breakpoint) for details.")
(license license:expat)))
+(define-public ghc-brick
+ (package
+ (name "ghc-brick")
+ (version "2.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "brick" version))
+ (sha256
+ (base32 "160np0bz1mcfkp077yc936i026s3zv1czn8lj3k3qr6scldavw35"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "brick")))
+ (inputs (list ghc-vty-6
+ ghc-vty-crossplatform
+ ghc-bimap
+ ghc-data-clist
+ ghc-microlens
+ ghc-microlens-th
+ ghc-microlens-mtl
+ ghc-config-ini
+ ghc-vector
+ ghc-text-zipper
+ ghc-unix-compat-7
+ ghc-word-wrap
+ ghc-random))
+ (native-inputs (list ghc-quickcheck))
+ (home-page "https://github.com/jtdaugherty/brick/")
+ (synopsis "Declarative terminal user interface library")
+ (description
+ "Write terminal user interfaces (TUIs) painlessly with brick'! You write an event
+handler and a drawing function and the library does the rest. . . > module Main
+where > > import Brick > > ui :: Widget () > ui = str \"Hello, world!\" > > main
+:: IO () > main = @code{simpleMain} ui . . To get started, see: . *
+<https://github.com/jtdaugherty/brick/blob/master/README.md The README> . * The
+<https://github.com/jtdaugherty/brick/blob/master/docs/guide.rst Brick user
+guide> . * The demonstration programs in the programs directory . . This
+package deprecates <http://hackage.haskell.org/package/vty-ui vty-ui>.")
+ (license license:bsd-3)))
+
(define-public ghc-githash
(package
(name "ghc-githash")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 25/25] gnu: Add matterhorn.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-26-romain.garbage@inria.fr
* gnu/packages/haskell-apps.scm (matterhorn): New variable.

Change-Id: I8f83b39fdc5f94251239129814068000fb492336
---
gnu/packages/haskell-apps.scm | 92 +++++++++++++++++++++++++++++++++++
1 file changed, 92 insertions(+)

Toggle diff (112 lines)
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 3fce4f803c..2fcb1a8c56 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -37,6 +37,7 @@
(define-module (gnu packages haskell-apps)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
@@ -682,6 +683,97 @@ (define-public kmonad
Wayland, and Linux console environments alike.")
(license license:expat))))
+(define-public matterhorn
+ (package
+ (name "matterhorn")
+ (version "90000.0.0")
+ (source
+ (origin
+ ;; use git repo instead of hackage URL because the hackage tarball
+ ;; doesn't contain the sample config file
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matterhorn-chat/matterhorn")
+ (commit version)))
+ (sha256
+ (base32 "08ng5axranilvfl9j3v0mjgpg76kzacrqj4c8x6pblpc3yxx02i5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "matterhorn")))
+ (inputs (list ghc-aeson
+ ghc-aspell-pipe
+ ghc-async
+ ghc-base-compat
+ ghc-bimap
+ ghc-brick
+ ghc-brick-skylighting
+ ghc-commonmark
+ ghc-commonmark-extensions
+ ghc-config-ini
+ ghc-crypton-connection
+ ghc-data-clist
+ ghc-gitrev
+ ghc-hashable
+ ghc-hclip
+ ghc-mattermost-api
+ ghc-microlens-platform
+ ghc-network-uri
+ ghc-random
+ ghc-semigroups
+ ghc-skylighting-core
+ ghc-split
+ ghc-stm-delay
+ ghc-strict
+ ghc-temporary
+ ghc-text-zipper
+ ghc-timezone-olson
+ ghc-timezone-series
+ ghc-unix-compat-7
+ ghc-unordered-containers
+ ghc-utf8-string
+ ghc-uuid
+ ghc-vector
+ ghc-vty-6
+ ghc-vty-crossplatform
+ ghc-word-wrap
+ ghc-xdg-basedir))
+ (native-inputs (list ghc-checkers
+ ghc-mattermost-api-qc
+ ghc-tasty
+ ghc-tasty-hunit
+ ghc-tasty-quickcheck
+ ghc-unique))
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-requirements
+ (lambda _
+ (for-each (lambda (dep)
+ (substitute* "matterhorn.cabal"
+ (((string-append "(,\\s" dep
+ "\\s*>=\\s[0-9].[0-9]).*")
+ all pat)
+ pat)))
+ (list "random"
+ "data-clist"
+ "semigroups"
+ "word-wrap"
+ "unix-compat"
+ "skylighting-core"
+ "checkers"
+ "vty"
+ "vty-crossplatform"
+ "brick"))))
+ (add-after 'install 'install-config-file
+ (lambda _
+ (install-file "./docs/sample-config.ini"
+ (string-append #$output "/share/doc/" #$name "-" #$version "/etc/")))))))
+ (home-page "http://hackage.haskell.org/package/matterhorn")
+ (synopsis "Terminal client for the Mattermost chat system")
+ (description
+ "This is a terminal client for the Mattermost chat system. Please see the README
+for a list of features and information on getting started.")
+ (license license:bsd-3)))
+
(define-public nixfmt
(package
(name "nixfmt")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 19/25] gnu: Add ghc-vty-crossplatform.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-20-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-vty-crossplatform): New variable.

Change-Id: Icbd33d9bbd7561bdb6178b3431edef6a1db92fcb
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 7558a677a4..baf797a8ca 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14134,6 +14134,26 @@ (define-public ghc-vty
to use and to provide good support for common terminal types.")
(license license:bsd-3)))
+(define-public ghc-vty-crossplatform
+ (package
+ (name "ghc-vty-crossplatform")
+ (version "0.4.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty-crossplatform" version))
+ (sha256
+ (base32 "06iwxgqrqzz05hmic7z5hxd48x0i49sk935vm0xfi0xq28sl7r9m"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty-crossplatform")))
+ (inputs (list ghc-vty-6 ghc-vty-unix ghc-random ghc-string-qq))
+ (home-page "http://hackage.haskell.org/package/vty-crossplatform")
+ (synopsis "Cross-platform support for Vty")
+ (description
+ "This package provides a generic interface for multiple Vty platforms in one
+package so you don't have to conditionally depend on them in your cabal file.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Romain GARBAGE wrote on 9 Jul 15:54 +0200
[PATCH v2 22/25] gnu: Add ghc-hclip.
(address . 71938@debbugs.gnu.org)
20240709140812.6183-23-romain.garbage@inria.fr
gnu/packages/haskell-xyz.scm (ghc-hclip): New variable.

Change-Id: I2d1a2d6e1983eb89a5e61eb05204c2e1c0dc3634
---
gnu/packages/haskell-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 9bacacf9fc..10618be91a 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15153,6 +15153,30 @@ (define-public ghc-commonmark-pandoc
Pandoc types.")
(license license:bsd-3)))
+(define-public ghc-hclip
+ (package
+ (name "ghc-hclip")
+ (version "3.0.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "Hclip" version))
+ (sha256
+ (base32 "04ppwm7vfzndrys8x1n8vfb41vzwx59r9xp4dkbiqmrms390pj6q"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "Hclip")))
+ (inputs (list ghc-strict))
+ (home-page "https://github.com/jetho/Hclip")
+ (synopsis
+ "Small cross-platform library for reading and modifying the system clipboard")
+ (description
+ "This package provides a small cross-platform library for reading and modifying
+the system clipboard. . Hclip works on Windows, Mac OS X and Linux (but see the
+requirements below!). . Requirements: . * Windows: No additional requirements.
+. * Mac OS X: Requires the pbcopy and pbpaste commands, which ship with Mac OS
+X. . * Linux: Requires xclip or xsel installed.")
+ (license license:bsd-3)))
+
(define-public ghc-hslua-module-path
(package
(name "ghc-hslua-module-path")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:27 +0200
[PATCH v3 00/25] Add matterhorn package.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-1-romain.garbage@inria.fr
Changes from v2->v3:
Rebased to commit e5c0b62debc6f48a32a65736d9ba3da0b1e59cb9 and sent
patch with base-commit to fix QA.

Romain GARBAGE (25):
gnu: Add ghc-crypton.
gnu: Add ghc-crypton-x509.
gnu: Add ghc-crypton-x509-store.
gnu: Add ghc-crypton-x509-system.
gnu: Add ghc-crypton-x509-validation.
gnu: Add ghc-tls-1.9.
gnu: Add ghc-crypton-connection.
gnu: Add ghc-mattermost-api.
gnu: Add ghc-mattermost-api-qc.
gnu: Add ghc-modern-uri.
gnu: Add ghc-aspell-pipe.
gnu: Add ghc-bimap.
gnu: Add ghc-checkers.
gnu: Add ghc-monad-parallel.
gnu: ghc-text-zipper: Update to 0.13.
gnu: Add ghc-stm-delay.
gnu: Add ghc-unique.
gnu: Add ghc-unix-compat-7.
gnu: Add ghc-vty-crossplatform.
gnu: Add ghc-vty-unix.
gnu: Add ghc-vty-6.
gnu: Add ghc-hclip.
gnu: Add ghc-brick.
gnu: Add ghc-brick-skylighting.
gnu: Add matterhorn.

gnu/packages/haskell-apps.scm | 92 +++++++++
gnu/packages/haskell-crypto.scm | 177 ++++++++++++++++++
gnu/packages/haskell-web.scm | 121 ++++++++++++
gnu/packages/haskell-xyz.scm | 318 +++++++++++++++++++++++++++++++-
4 files changed, 706 insertions(+), 2 deletions(-)


base-commit: e5c0b62debc6f48a32a65736d9ba3da0b1e59cb9
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:27 +0200
[PATCH v3 01/25] gnu: Add ghc-crypton.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-2-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton): New variable.

Change-Id: I91902a8dbc0df2d19729933e6cd096810fdc1059
---
gnu/packages/haskell-crypto.scm | 40 +++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)

Toggle diff (53 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 83ba8bc10b..12ffd10743 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -612,6 +612,46 @@ (define-public ghc-crypto-random
abstraction for CPRNGs.")
(license license:bsd-3)))
+(define-public ghc-crypton
+ (package
+ (name "ghc-crypton")
+ (version "0.34")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton" version))
+ (sha256
+ (base32 "1mhypjhzn95in853bp7ary0a2xc6lsji6j8hrrgn2mfa4ilq8i24"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton")))
+ (inputs (list ghc-memory ghc-basement))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-tasty-hunit
+ ghc-tasty-kat))
+ (home-page "https://github.com/kazu-yamamoto/crypton")
+ (synopsis "Cryptography Primitives sink")
+ (description
+ "This package provides a repository of cryptographic primitives.
+@itemize @bullet
+
+@item Symmetric ciphers: AES, DES, 3DES, CAST5, Blowfish, Twofish, Camellia, RC4,
+Salsa, XSalsa, ChaCha.
+
+@item Hash: SHA1, SHA2, SHA3, SHAKE, MD2, MD4, MD5, Keccak, Skein, Ripemd, Tiger,
+Whirlpool, Blake2.
+
+@item MAC: HMAC, KMAC, Poly1305
+
+@item Asymmetric crypto: DSA, RSA, DH, ECDH, ECDSA, ECC, Curve25519, Curve448,
+Ed25519, Ed448
+
+@item Key Derivation Function: PBKDF2, Scrypt, HKDF, Argon2, BCrypt, BCryptPBKDF
+
+@item Cryptographic Random generation: System Entropy, Deterministic Random Generator
+
+@item Data related: Anti-Forensic Information Splitter (AFIS)
+@end itemize")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:27 +0200
[PATCH v3 02/25] gnu: Add ghc-crypton-x509.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-3-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509): New variable.

Change-Id: I0bea5088c2fd23b77f22a2017303bac849c45c29
---
gnu/packages/haskell-crypto.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Toggle diff (44 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 12ffd10743..9bbf3ee0fc 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -652,6 +652,37 @@ (define-public ghc-crypton
@end itemize")
(license license:bsd-3)))
+(define-public ghc-crypton-x509
+ (package
+ (name "ghc-crypton-x509")
+ (version "1.7.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509" version))
+ (sha256
+ (base32 "1zyaz0krf08g36g30zr5wn8f2x51l4dj2zcjnhpiw9h05p54mdzb"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509")))
+ (inputs (list ghc-memory
+ ghc-hourglass
+ ghc-pem
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-asn1-parse
+ ghc-crypton))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-x509))
+ (arguments
+ `(#:cabal-revision ("1"
+ "10a2x47znhbayyfr6fqgq27623akpycyjbfxz4hnavavf1x6ary5")
+ ;; build phase fails when tests are activated.
+ ;; See https://github.com/kazu-yamamoto/crypton-certificate/pull/7
+ #:tests? #f))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X509 reader and writer")
+ (description "Generic X509 support for Haskell.")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 03/25] gnu: Add ghc-crypton-x509-store.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-4-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-store): New variable.

Change-Id: Id9e2bd91d99c09fee5bd0054741176108b7376ed
---
gnu/packages/haskell-crypto.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 9bbf3ee0fc..3f2517143c 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -683,6 +683,28 @@ (define-public ghc-crypton-x509
(description "Generic X509 support for Haskell.")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-store
+ (package
+ (name "ghc-crypton-x509-store")
+ (version "1.6.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-store" version))
+ (sha256
+ (base32 "0vr5b9cyf9x016wn1g0bryslf5nz8jq2sy8r3llwqfg02apihqiy"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-store")))
+ (inputs (list ghc-pem ghc-asn1-types ghc-asn1-encoding ghc-crypton
+ ghc-crypton-x509))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X.509 collection accessing and storing methods")
+ (description
+ "X.509 collection accessing and storing methods for certificate, crl, exception
+list")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 04/25] gnu: Add ghc-crypton-x509-system.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-5-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-system): New variable.

Change-Id: Idfadaf630a3bcc4d019738d37ae9ee888f49fd80
---
gnu/packages/haskell-crypto.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 3f2517143c..5c69def661 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -705,6 +705,26 @@ (define-public ghc-crypton-x509-store
list")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-system
+ (package
+ (name "ghc-crypton-x509-system")
+ (version "1.6.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-system" version))
+ (sha256
+ (base32 "1jilnr9715njlx1hqvg5lrsrwk12r04maypmh18di0sybwg2cdm4"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-system")))
+ (inputs (list ghc-pem ghc-crypton-x509 ghc-crypton-x509-store))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "Handle per-operating-system X.509 accessors and storage")
+ (description
+ "System X.509 handling for accessing operating system dependents store and other
+storage methods")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 05/25] gnu: Add ghc-crypton-x509-validation.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-6-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-crypton-x509-validation): New variable.

Change-Id: Ib25c2dee8fef24c763cf70dfa1c615405d250d39
---
gnu/packages/haskell-crypto.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 5c69def661..5c5305afa9 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -725,6 +725,33 @@ (define-public ghc-crypton-x509-system
storage methods")
(license license:bsd-3)))
+(define-public ghc-crypton-x509-validation
+ (package
+ (name "ghc-crypton-x509-validation")
+ (version "1.6.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-x509-validation" version))
+ (sha256
+ (base32 "1xjhwvmkcy47a6xiqxb3xy944ca7g660203jdrz5xzd46zibfq0f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-x509-validation")))
+ (inputs (list ghc-memory
+ ghc-hourglass
+ ghc-data-default-class
+ ghc-pem
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit))
+ (home-page "https://github.com/kazu-yamamoto/crypton-certificate")
+ (synopsis "X.509 Certificate and CRL validation")
+ (description "X.509 Certificate and CRL validation. please see README")
+ (license license:bsd-3)))
+
(define-public ghc-cprng-aes
(package
(name "ghc-cprng-aes")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 06/25] gnu: Add ghc-tls-1.9.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-7-romain.garbage@inria.fr
* gnu/packages/haskell-crypto.scm (ghc-tls-1.9): New variable.

Change-Id: I53d26e85d7ed333be036cb5e0e359b72f5c21262
---
gnu/packages/haskell-crypto.scm | 37 +++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm
index 5c5305afa9..dfd28a3537 100644
--- a/gnu/packages/haskell-crypto.scm
+++ b/gnu/packages/haskell-crypto.scm
@@ -861,6 +861,43 @@ (define-public ghc-tls
extensions.")
(license license:bsd-3)))
+(define-public ghc-tls-1.9
+ (package
+ (name "ghc-tls")
+ (version "1.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "tls" version))
+ (sha256
+ (base32 "0gj3af9sqd0bw7dpcqfyvbslpxsk2ij00a77kl710fwhw35vj1an"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "tls")))
+ (inputs (list ghc-cereal
+ ghc-data-default-class
+ ghc-memory
+ ghc-crypton
+ ghc-asn1-types
+ ghc-asn1-encoding
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton-x509-validation
+ ghc-async
+ ghc-unix-time
+ ghc-network))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck ghc-quickcheck))
+ (home-page "http://github.com/vincenthz/hs-tls")
+ (synopsis "TLS/SSL protocol native implementation (Server and Client)")
+ (description
+ "Native Haskell TLS and SSL protocol implementation for server and client.
+This provides a high-level implementation of a sensitive security protocol,
+eliminating a common set of security issues through the use of the advanced
+type system, high level constructions and common Haskell features. Currently
+implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and
+Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many
+extensions.")
+ (license license:bsd-3)))
+
(define-public ghc-hsopenssl
(package
(name "ghc-hsopenssl")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 07/25] gnu: Add ghc-crypton-connection.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-8-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-crypton-connection): New variable.

Change-Id: I37bc263de2aa9f3ce7b06b9a752424a0550bf6d3
---
gnu/packages/haskell-web.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 0aaa609e42..08b2136cb2 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -89,6 +89,35 @@ (define-public ghc-cookie
(description "HTTP cookie parsing and rendering library for Haskell.")
(license license:expat)))
+(define-public ghc-crypton-connection
+ (package
+ (name "ghc-crypton-connection")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "crypton-connection" version))
+ (sha256
+ (base32 "07lrkv6lwphsyp4797yp8ywnndzd270bk58r8gwyby0hr4xy52r0"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "crypton-connection")))
+ (inputs (list ghc-basement
+ ghc-data-default-class
+ ghc-network
+ ghc-tls-1.9
+ ghc-socks
+ ghc-crypton-x509
+ ghc-crypton-x509-store
+ ghc-crypton-x509-system
+ ghc-crypton-x509-validation))
+ (home-page "https://github.com/kazu-yamamoto/crypton-connection")
+ (synopsis "Simple and easy network connections API")
+ (description
+ "Simple network library for all your connection need. Features: Really simple to
+use, SSL/TLS, SOCKS. This library provides a very simple api to create sockets to a
+destination with the choice of SSL/TLS, and SOCKS.")
+ (license license:bsd-3)))
+
(define-public ghc-curl
(package
(name "ghc-curl")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 08/25] gnu: Add ghc-mattermost-api.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-9-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-mattermost-api): New variable.

Change-Id: Idc2a8fb0d8589b38d7e50aa7565fff71dcc6ab28
---
gnu/packages/haskell-web.scm | 42 ++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)

Toggle diff (55 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 08b2136cb2..8021cbaefc 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -843,6 +843,48 @@ (define-public ghc-css-text
Haskell.")
(license license:bsd-3)))
+(define-public ghc-mattermost-api
+ (package
+ (name "ghc-mattermost-api")
+ (version "90000.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "mattermost-api" version))
+ (sha256
+ (base32 "1ka3r4bnfwlbjnkws8vkg8i9gj8wzsyss137p7hxrx4sr75s6iyv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "mattermost-api")))
+ (inputs (list ghc-websockets
+ ghc-aeson
+ ghc-crypton-connection
+ ghc-memory
+ ghc-resource-pool
+ ghc-http
+ ghc-http-media
+ ghc-network-uri
+ ghc-modern-uri
+ ghc-unordered-containers
+ ghc-hashable
+ ghc-gitrev
+ ghc-microlens
+ ghc-microlens-th
+ ghc-pretty-show
+ ghc-split
+ ghc-connection))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit ghc-hunit))
+ (arguments
+ (list
+ #:tests? #f)) ;tests fail: unable to setup network socket
+ (home-page "http://hackage.haskell.org/package/mattermost-api")
+ (synopsis "Client API for Mattermost chat system")
+ (description
+ "Client API for Mattermost chat system. Mattermost is a flexible, open source
+messaging platform that meets even the most demanding privacy and security
+standards. This library provides network API interaction with the Mattermost
+server.")
+ (license license:bsd-3)))
+
(define-public ghc-mime-types
(package
(name "ghc-mime-types")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 09/25] gnu: Add ghc-mattermost-api-qc.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-10-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-mattermost-api-qc): New variable.

Change-Id: If28b8a03170bb235b2418329d408fec8f06d4b7c
---
gnu/packages/haskell-web.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 8021cbaefc..16a38fd760 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -885,6 +885,27 @@ (define-public ghc-mattermost-api
server.")
(license license:bsd-3)))
+(define-public ghc-mattermost-api-qc
+ (package
+ (name "ghc-mattermost-api-qc")
+ (version "90000.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "mattermost-api-qc" version))
+ (sha256
+ (base32 "0lrb8l8nbrdp4y2ala8hchr8ikv5hqw710ffiiw1sz6z2dqiqbxm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "mattermost-api-qc")))
+ (inputs (list ghc-mattermost-api ghc-quickcheck))
+ (home-page "https://github.com/matterhorn-chat/mattermost-api-qc")
+ (synopsis "QuickCheck instances for the Mattermost client API library")
+ (description
+ "This package provides a library providing @code{QuickCheck} for the
+mattermost-api library to allow testing. This is provided as a separate library
+to allow use of the API library without testing dependencies.")
+ (license license:isc)))
+
(define-public ghc-mime-types
(package
(name "ghc-mime-types")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 10/25] gnu: Add ghc-modern-uri.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-11-romain.garbage@inria.fr
* gnu/packages/haskell-web.scm (ghc-modern-uri): New variable.

Change-Id: I62d4c2722303cbeb9a7ef1acd3f12f355cf67509
---
gnu/packages/haskell-web.scm | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 16a38fd760..bd33abdcb0 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -924,6 +924,35 @@ (define-public ghc-mime-types
"This library provides basic MIME type handling types and functions.")
(license license:expat)))
+(define-public ghc-modern-uri
+ (package
+ (name "ghc-modern-uri")
+ (version "0.3.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "modern-uri" version))
+ (sha256
+ (base32 "1sag8l91qd7xs56rlx8r6dz9zxxmqsnfw0v47az7l8nirv7zjih2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "modern-uri")))
+ (inputs (list ghc-quickcheck
+ ghc-hashable
+ ghc-megaparsec
+ ghc-profunctors
+ ghc-reflection
+ ghc-tagged))
+ (native-inputs (list ghc-hspec
+ ghc-hspec-megaparsec
+ ghc-hspec-discover))
+ (arguments
+ `(#:cabal-revision ("1"
+ "0c0mr8aqs963nmy7i8yfih24snaijgwkxim2q2khw12capshac0q")))
+ (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-public ghc-html
(package
(name "ghc-html")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 11/25] gnu: Add ghc-aspell-pipe.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-12-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-aspell-pipe): New variable.

Change-Id: I0d31c9c457ce33b45c0fb6589413208796843920
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index fa423ae2ca..3bdc8d6d6b 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -450,6 +450,26 @@ (define-public ghc-appar
style.")
(license license:bsd-3)))
+(define-public ghc-aspell-pipe
+ (package
+ (name "ghc-aspell-pipe")
+ (version "0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "aspell-pipe" version))
+ (sha256
+ (base32 "09dw4v4j5pmqi8pdh3p7kk7f8pph5w33s7vd21fgvhv3arnrj6p8"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "aspell-pipe")))
+ (inputs (list ghc-async))
+ (home-page "http://hackage.haskell.org/package/aspell-pipe")
+ (synopsis "Pipe-based interface to the Aspell program")
+ (description
+ "This package provides a pipe-based interface to the Aspell program (no dynamic
+linking required).")
+ (license license:bsd-3)))
+
(define-public ghc-assoc
(package
(name "ghc-assoc")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 12/25] gnu: Add ghc-bimap.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-13-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-bimap): New variable.

Change-Id: Ib6ffebff5417273afaa3a08005aae3445606d6d2
---
gnu/packages/haskell-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 3bdc8d6d6b..60d25dd4bf 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -972,6 +972,27 @@ (define-public ghc-bifunctors
(description "This package provides bifunctors for Haskell.")
(license license:bsd-3)))
+(define-public ghc-bimap
+ (package
+ (name "ghc-bimap")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "bimap" version))
+ (sha256
+ (base32 "158cdwk9jwklcfgbn62dqq255i40w13ifggsdps87sxc5q7lpd5h"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "bimap")))
+ (native-inputs (list ghc-quickcheck))
+ (home-page "https://github.com/joelwilliamson/bimap")
+ (synopsis "Bidirectional mapping between two key types")
+ (description
+ "This package provides a data structure representing a bidirectional mapping
+between two key types. Each value in the bimap is associated with exactly one
+value of the opposite type.")
+ (license license:bsd-3)))
+
(define-public ghc-bindings-dsl
(package
(name "ghc-bindings-dsl")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 14/25] gnu: Add ghc-monad-parallel.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-15-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-monad-parallel): New variable.

Change-Id: I39a5b5392a50fb4f6e9e15ed107705486362d021
---
gnu/packages/haskell-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index e29e84aa9b..4d00382ea3 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -7563,6 +7563,28 @@ (define-public ghc-monad-par-extras
and other added capabilities layered on top of the @code{Par} monad.")
(license license:bsd-3)))
+(define-public ghc-monad-parallel
+ (package
+ (name "ghc-monad-parallel")
+ (version "0.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "monad-parallel" version))
+ (sha256
+ (base32 "1j905cwc440g7rvbhsdkqf50ag7p2bi6cy2rqsk918rn80fqqra4"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "monad-parallel")))
+ (inputs (list ghc-parallel ghc-transformers-compat))
+ (home-page "https://hub.darcs.net/blamario/SCC.wiki/")
+ (synopsis "Parallel execution of monadic computations")
+ (description
+ "This package defines classes of monads that can perform multiple executions in
+parallel and combine their results. For any monad that's an instance of the
+class, the package re-implements a subset of the Control.Monad interface, but
+with parallel execution.")
+ (license license:bsd-3)))
+
(define-public ghc-monadrandom
(package
(name "ghc-monadrandom")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 13/25] gnu: Add ghc-checkers.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-14-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-checkers): New variable.

Change-Id: I4228398238a169e49e68ead60cbe69ef0437e3e9
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 60d25dd4bf..e29e84aa9b 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -1830,6 +1830,31 @@ (define-public ghc-cheapskate
cross-site scripting (@dfn{XSS}) attacks.")
(license license:bsd-3)))
+(define-public ghc-checkers
+ (package
+ (name "ghc-checkers")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "checkers" version))
+ (sha256
+ (base32 "1r4rsa4k0fy8xig3m530ryflry9viv9v47g4gh7h0ld27rbd6z60"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "checkers")))
+ (inputs (list ghc-random ghc-quickcheck ghc-semigroupoids))
+ (arguments
+ `(#:cabal-revision ("1"
+ "0wkvf57zd7i87z18vj285whjpcl9pscpwxz2cp7v7w6kk0769p0i")))
+ (home-page "https://github.com/haskell-checkers/checkers")
+ (synopsis "Check properties on standard classes and data structures")
+ (description
+ "Checkers wraps up the expected properties associated with various standard type
+classes as @code{QuickCheck} properties. Also some morphism properties. It
+also provides arbitrary instances and generator combinators for common data
+types. . &#169; 2008-2013 by Conal Elliott; BSD3 license.")
+ (license license:bsd-3)))
+
(define-public ghc-chell
(package
(name "ghc-chell")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 16/25] gnu: Add ghc-stm-delay.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-17-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-stm-delay): New variable.

Change-Id: If9e20a2c103549de9b4b7d63158fe34165f6036a
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 67ced12750..6bdff48b6e 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -11757,6 +11757,31 @@ (define-public ghc-stm-conduit
source and a sink.")
(license license:bsd-3)))
+(define-public ghc-stm-delay
+ (package
+ (name "ghc-stm-delay")
+ (version "0.1.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "stm-delay" version))
+ (sha256
+ (base32 "0cla21v89gcvmr1iwzibq13v1yq02xg4h6k9l6kcprj7mhd5hcmi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "stm-delay")))
+ (home-page "https://github.com/joeyadams/haskell-stm-delay")
+ (synopsis "Updatable one-shot timer polled with STM")
+ (description
+ "This library lets you create a one-shot timer, poll it using STM, and update it
+to ring at a different time than initially specified. . It uses GHC event
+manager timeouts when available (GHC 7.2+, @@-threaded@@, non-Windows OS),
+yielding performance similar to @@@code{threadDelay}@@ and
+@@@code{registerDelay}@@. Otherwise, it falls back to forked threads and
+@@@code{threadDelay}@@. . [0.1.1] Add @code{tryWaitDelayIO}, improve performance
+for certain cases of @@@code{newDelay}@@ and @@@code{updateDelay}@@, and improve
+example.")
+ (license license:bsd-3)))
+
(define-public ghc-stmonadtrans
(package
(name "ghc-stmonadtrans")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 15/25] gnu: ghc-text-zipper: Update to 0.13.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-16-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-text-zipper): Update to 0.13.

Change-Id: I0ae9154713d799b48f9f0772a7c7ee2210493095
---
gnu/packages/haskell-xyz.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 4d00382ea3..67ced12750 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -8519,13 +8519,13 @@ (define-public ghc-text-short
(define-public ghc-text-zipper
(package
(name "ghc-text-zipper")
- (version "0.12")
+ (version "0.13")
(source (origin
(method url-fetch)
(uri (hackage-uri "text-zipper" version))
(sha256
(base32
- "00k7d6qfznhp6l2ihw3pppkn580pwd7ac7wx9vidil4y9hjagaw6"))))
+ "1acq583wmgb53viqslbkgl454300fawg5lryxddfiy1mqk3iqlh6"))))
(build-system haskell-build-system)
(properties '((upstream-name . "text-zipper")))
(inputs (list ghc-vector))
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 17/25] gnu: Add ghc-unique.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-18-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-unique): New variable.

Change-Id: Id9876b8018f5f8b3bcb82ab0bb13616ed298c31b
---
gnu/packages/haskell-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 6bdff48b6e..d8d0ddfb98 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13390,6 +13390,30 @@ (define-public ghc-uniplate
work, but is substantially simpler and faster.")
(license license:bsd-3)))
+(define-public ghc-unique
+ (package
+ (name "ghc-unique")
+ (version "0.4.7.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "Unique" version))
+ (sha256
+ (base32 "14f1qnmhdmbam8qis725dhwq1mk9h86fsnzhkwhsx73ny9z29s1l"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "Unique")))
+ (inputs (list ghc-extra ghc-hashable ghc-unordered-containers))
+ (native-inputs (list ghc-hspec ghc-quickcheck))
+ (arguments
+ `(#:tests? #f ;test Data.List.UniqueUnsorted.removeDuplicates fails
+ #:cabal-revision ("1"
+ "10s0npnfkh7naj49afmyrvnilikp6426fbhi49f97pxrgcmy4dvw")))
+ (home-page "http://hackage.haskell.org/package/Unique")
+ (synopsis "It provides the functionality like unix \"uniq\" utility")
+ (description
+ "Library provides the functions to find unique and duplicate elements in the list")
+ (license license:bsd-3)))
+
(define-public ghc-unix-compat
(package
(name "ghc-unix-compat")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 18/25] gnu: Add ghc-unix-compat-7.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-19-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-unix-compat-7): New variable.

Change-Id: I28e8e4924d4f829dd07059aa205d894803409320
---
gnu/packages/haskell-xyz.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (35 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index d8d0ddfb98..7558a677a4 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13437,6 +13437,28 @@ (define-public ghc-unix-compat
isn't available, portable implementations are used.")
(license license:bsd-3)))
+(define-public ghc-unix-compat-7
+ (package
+ (name "ghc-unix-compat")
+ (version "0.7.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "unix-compat" version))
+ (sha256
+ (base32 "0gz30f4g3gyjz60jbcg072ms67pwdn4by6wvdkg63hjshgl0cj60"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "unix-compat")))
+ (native-inputs (list ghc-monad-parallel ghc-hspec ghc-hunit ghc-extra
+ ghc-temporary))
+ (home-page "https://github.com/haskell-pkg-janitors/unix-compat")
+ (synopsis "Portable POSIX-compatibility layer")
+ (description
+ "This package provides portable implementations of parts of the unix package.
+This package re-exports the unix package when available. When it isn't
+available, portable implementations are used.")
+ (license license:bsd-3)))
+
(define-public ghc-unix-time
(package
(name "ghc-unix-time")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 19/25] gnu: Add ghc-vty-crossplatform.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-20-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-vty-crossplatform): New variable.

Change-Id: Icbd33d9bbd7561bdb6178b3431edef6a1db92fcb
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 7558a677a4..baf797a8ca 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14134,6 +14134,26 @@ (define-public ghc-vty
to use and to provide good support for common terminal types.")
(license license:bsd-3)))
+(define-public ghc-vty-crossplatform
+ (package
+ (name "ghc-vty-crossplatform")
+ (version "0.4.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty-crossplatform" version))
+ (sha256
+ (base32 "06iwxgqrqzz05hmic7z5hxd48x0i49sk935vm0xfi0xq28sl7r9m"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty-crossplatform")))
+ (inputs (list ghc-vty-6 ghc-vty-unix ghc-random ghc-string-qq))
+ (home-page "http://hackage.haskell.org/package/vty-crossplatform")
+ (synopsis "Cross-platform support for Vty")
+ (description
+ "This package provides a generic interface for multiple Vty platforms in one
+package so you don't have to conditionally depend on them in your cabal file.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 21/25] gnu: Add ghc-vty-6.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-22-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-vty-6): New variable.

Change-Id: I2e2dbbe0e99d26f38494fb6bdb51bc6d67e5c02c
---
gnu/packages/haskell-xyz.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 787f70b510..9bacacf9fc 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14179,6 +14179,33 @@ (define-public ghc-vty-unix
(description "This package provides Unix terminal support for Vty.")
(license license:bsd-3)))
+(define-public ghc-vty-6
+ (package
+ (name "ghc-vty")
+ (version "6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty" version))
+ (sha256
+ (base32 "0ywqfdngfv5pnsk5pa99yizpbhdq856sy3z70q2hmpmlc2r4h7vg"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty")))
+ (inputs (list ghc-blaze-builder ghc-microlens ghc-microlens-mtl
+ ghc-utf8-string ghc-vector))
+ (home-page "https://github.com/jtdaugherty/vty")
+ (synopsis "A simple terminal UI library")
+ (description
+ "vty is terminal GUI library in the niche of ncurses. It is intended to be easy
+to use and to provide good support for common terminal types. . See the
+@@vty-examples@@ package as well as the program
+@@examples/interactive_terminal_test.hs@@ included in the @@vty@@ repository for
+examples on how to use the library. . Import the @@Graphics.Vty@@ convenience
+module to get access to the core parts of the library. . &#169; 2006-2007 Stefan
+O'Rear; BSD3 license. . &#169; Corey O'Connor; BSD3 license. . &#169; Jonathan
+Daugherty; BSD3 license.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 23/25] gnu: Add ghc-brick.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-24-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-brick): New variable.

Change-Id: I52fbfa27422a6aacca65d0e8ed5ffa3ab335cc67
---
gnu/packages/haskell-xyz.scm | 39 ++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 10618be91a..4ccb9c01ae 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15887,6 +15887,45 @@ (define-public ghc-breakpoint
[README](https://github.com/aaronallen8455/breakpoint#breakpoint) for details.")
(license license:expat)))
+(define-public ghc-brick
+ (package
+ (name "ghc-brick")
+ (version "2.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "brick" version))
+ (sha256
+ (base32 "160np0bz1mcfkp077yc936i026s3zv1czn8lj3k3qr6scldavw35"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "brick")))
+ (inputs (list ghc-vty-6
+ ghc-vty-crossplatform
+ ghc-bimap
+ ghc-data-clist
+ ghc-microlens
+ ghc-microlens-th
+ ghc-microlens-mtl
+ ghc-config-ini
+ ghc-vector
+ ghc-text-zipper
+ ghc-unix-compat-7
+ ghc-word-wrap
+ ghc-random))
+ (native-inputs (list ghc-quickcheck))
+ (home-page "https://github.com/jtdaugherty/brick/")
+ (synopsis "Declarative terminal user interface library")
+ (description
+ "Write terminal user interfaces (TUIs) painlessly with brick'! You write an event
+handler and a drawing function and the library does the rest. . . > module Main
+where > > import Brick > > ui :: Widget () > ui = str \"Hello, world!\" > > main
+:: IO () > main = @code{simpleMain} ui . . To get started, see: . *
+<https://github.com/jtdaugherty/brick/blob/master/README.md The README> . * The
+<https://github.com/jtdaugherty/brick/blob/master/docs/guide.rst Brick user
+guide> . * The demonstration programs in the programs directory . . This
+package deprecates <http://hackage.haskell.org/package/vty-ui vty-ui>.")
+ (license license:bsd-3)))
+
(define-public ghc-githash
(package
(name "ghc-githash")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 22/25] gnu: Add ghc-hclip.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-23-romain.garbage@inria.fr
gnu/packages/haskell-xyz.scm (ghc-hclip): New variable.

Change-Id: I2d1a2d6e1983eb89a5e61eb05204c2e1c0dc3634
---
gnu/packages/haskell-xyz.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 9bacacf9fc..10618be91a 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15153,6 +15153,30 @@ (define-public ghc-commonmark-pandoc
Pandoc types.")
(license license:bsd-3)))
+(define-public ghc-hclip
+ (package
+ (name "ghc-hclip")
+ (version "3.0.0.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "Hclip" version))
+ (sha256
+ (base32 "04ppwm7vfzndrys8x1n8vfb41vzwx59r9xp4dkbiqmrms390pj6q"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "Hclip")))
+ (inputs (list ghc-strict))
+ (home-page "https://github.com/jetho/Hclip")
+ (synopsis
+ "Small cross-platform library for reading and modifying the system clipboard")
+ (description
+ "This package provides a small cross-platform library for reading and modifying
+the system clipboard. . Hclip works on Windows, Mac OS X and Linux (but see the
+requirements below!). . Requirements: . * Windows: No additional requirements.
+. * Mac OS X: Requires the pbcopy and pbpaste commands, which ship with Mac OS
+X. . * Linux: Requires xclip or xsel installed.")
+ (license license:bsd-3)))
+
(define-public ghc-hslua-module-path
(package
(name "ghc-hslua-module-path")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 25/25] gnu: Add matterhorn.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-26-romain.garbage@inria.fr
* gnu/packages/haskell-apps.scm (matterhorn): New variable.

Change-Id: I8f83b39fdc5f94251239129814068000fb492336
---
gnu/packages/haskell-apps.scm | 92 +++++++++++++++++++++++++++++++++++
1 file changed, 92 insertions(+)

Toggle diff (112 lines)
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 3fce4f803c..2fcb1a8c56 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -37,6 +37,7 @@
(define-module (gnu packages haskell-apps)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
@@ -682,6 +683,97 @@ (define-public kmonad
Wayland, and Linux console environments alike.")
(license license:expat))))
+(define-public matterhorn
+ (package
+ (name "matterhorn")
+ (version "90000.0.0")
+ (source
+ (origin
+ ;; use git repo instead of hackage URL because the hackage tarball
+ ;; doesn't contain the sample config file
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/matterhorn-chat/matterhorn")
+ (commit version)))
+ (sha256
+ (base32 "08ng5axranilvfl9j3v0mjgpg76kzacrqj4c8x6pblpc3yxx02i5"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "matterhorn")))
+ (inputs (list ghc-aeson
+ ghc-aspell-pipe
+ ghc-async
+ ghc-base-compat
+ ghc-bimap
+ ghc-brick
+ ghc-brick-skylighting
+ ghc-commonmark
+ ghc-commonmark-extensions
+ ghc-config-ini
+ ghc-crypton-connection
+ ghc-data-clist
+ ghc-gitrev
+ ghc-hashable
+ ghc-hclip
+ ghc-mattermost-api
+ ghc-microlens-platform
+ ghc-network-uri
+ ghc-random
+ ghc-semigroups
+ ghc-skylighting-core
+ ghc-split
+ ghc-stm-delay
+ ghc-strict
+ ghc-temporary
+ ghc-text-zipper
+ ghc-timezone-olson
+ ghc-timezone-series
+ ghc-unix-compat-7
+ ghc-unordered-containers
+ ghc-utf8-string
+ ghc-uuid
+ ghc-vector
+ ghc-vty-6
+ ghc-vty-crossplatform
+ ghc-word-wrap
+ ghc-xdg-basedir))
+ (native-inputs (list ghc-checkers
+ ghc-mattermost-api-qc
+ ghc-tasty
+ ghc-tasty-hunit
+ ghc-tasty-quickcheck
+ ghc-unique))
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-requirements
+ (lambda _
+ (for-each (lambda (dep)
+ (substitute* "matterhorn.cabal"
+ (((string-append "(,\\s" dep
+ "\\s*>=\\s[0-9].[0-9]).*")
+ all pat)
+ pat)))
+ (list "random"
+ "data-clist"
+ "semigroups"
+ "word-wrap"
+ "unix-compat"
+ "skylighting-core"
+ "checkers"
+ "vty"
+ "vty-crossplatform"
+ "brick"))))
+ (add-after 'install 'install-config-file
+ (lambda _
+ (install-file "./docs/sample-config.ini"
+ (string-append #$output "/share/doc/" #$name "-" #$version "/etc/")))))))
+ (home-page "http://hackage.haskell.org/package/matterhorn")
+ (synopsis "Terminal client for the Mattermost chat system")
+ (description
+ "This is a terminal client for the Mattermost chat system. Please see the README
+for a list of features and information on getting started.")
+ (license license:bsd-3)))
+
(define-public nixfmt
(package
(name "nixfmt")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 24/25] gnu: Add ghc-brick-skylighting.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-25-romain.garbage@inria.fr
* gnu/packages/haskell-xyz.scm (ghc-brick-skylighting): New variable.

Change-Id: I634c108edff99b1003c26dbb2f9107ed464a5e84
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (33 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 4ccb9c01ae..4e865483fb 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -15926,6 +15926,26 @@ (define-public ghc-brick
package deprecates <http://hackage.haskell.org/package/vty-ui vty-ui>.")
(license license:bsd-3)))
+(define-public ghc-brick-skylighting
+ (package
+ (name "ghc-brick-skylighting")
+ (version "1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "brick-skylighting" version))
+ (sha256
+ (base32 "1nw2x9zn0jlvykm89v80fh4187bxgn8l4cljgnf4mp4ci7aqjmkr"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "brick-skylighting")))
+ (inputs (list ghc-brick ghc-vty-6 ghc-skylighting-core))
+ (home-page "https://github.com/jtdaugherty/brick-skylighting/")
+ (synopsis "Show syntax-highlighted text in your Brick UI")
+ (description
+ "This package provides a module to use Skylighting to perform syntax highlighting
+and display the results in Brick-based interfaces.")
+ (license license:bsd-3)))
+
(define-public ghc-githash
(package
(name "ghc-githash")
--
2.45.1
R
R
Romain GARBAGE wrote on 22 Jul 13:28 +0200
[PATCH v3 20/25] gnu: Add ghc-vty-unix.
(address . 71938@debbugs.gnu.org)
20240722113008.9057-21-romain.garbage@inria.fr
gnu/packages/haskell-xyz.scm (ghc-vty-unix): New variable.

Change-Id: Idf8e550a5d7b645d19af177dd65c5956ba3ab478
---
gnu/packages/haskell-xyz.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index baf797a8ca..787f70b510 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -14154,6 +14154,31 @@ (define-public ghc-vty-crossplatform
package so you don't have to conditionally depend on them in your cabal file.")
(license license:bsd-3)))
+(define-public ghc-vty-unix
+ (package
+ (name "ghc-vty-unix")
+ (version "0.2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (hackage-uri "vty-unix" version))
+ (sha256
+ (base32 "1hfxc7qw884vlq8qshhyndl3zs10jc2xr6i69vhasjywkvh6gay2"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "vty-unix")))
+ (inputs (list ghc-blaze-builder
+ ghc-vty-6
+ ghc-vector
+ ghc-utf8-string
+ ghc-microlens
+ ghc-microlens-mtl
+ ghc-microlens-th
+ ghc-ansi-terminal))
+ (home-page "http://hackage.haskell.org/package/vty-unix")
+ (synopsis "Unix backend for Vty")
+ (description "This package provides Unix terminal support for Vty.")
+ (license license:bsd-3)))
+
(define-public ghc-wave
(package
(name "ghc-wave")
--
2.45.1
R
R
Ricardo Wurmus wrote on 22 Jul 16:26 +0200
Re: [PATCH v3 00/25] Add matterhorn package.
(name . Romain GARBAGE)(address . romain.garbage@inria.fr)
87ttgh1p00.fsf@elephly.net
Hi Romain,

Toggle quote (4 lines)
> Changes from v2->v3:
> Rebased to commit e5c0b62debc6f48a32a65736d9ba3da0b1e59cb9 and sent
> patch with base-commit to fix QA.

thank you for the patches! This looks good. I'll go through the
descriptions one more time before pushing this tonight.

--
Ricardo
R
R
Ricardo Wurmus wrote on 23 Jul 00:31 +0200
(name . Romain GARBAGE)(address . romain.garbage@inria.fr)
87plr512kj.fsf@elephly.net
I modified some of the descriptions and fixed tests before pushing.

Thanks!

--
Ricardo
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 44518@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 44518
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch