* [bug#64840] [PATCH 02/12] gnu: Add ghc-generically.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 03/12] gnu: Add ghc-aeson-2.1 Distopico
` (9 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-web.scm (ghc-generically): New variable.
---
gnu/packages/haskell-web.scm | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 75b84b10a7..6c6122299d 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
+;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1067,6 +1068,28 @@ (define-public ghc-aeson-better-errors
@url{http://harry.garrood.me/blog/aeson-better-errors/}.")
(license license:expat)))
+(define-public ghc-generically
+ (package
+ (name "ghc-generically")
+ (version "0.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "generically" version))
+ (sha256
+ (base32
+ "1ks3pi6mpma83xffplz8vmimyhvzpnhmcgvk3bvl3c64pqva9i84"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "generically")))
+ (arguments
+ `(#:cabal-revision ("1"
+ "0pkyhym7q9v03pplpfjg80vmpk0cbgc56panfx9vcbzadvxmx6rb")))
+ (home-page "https://hackage.haskell.org/package/generically")
+ (synopsis "Generically newtype to use with DerivingVia in Haskell")
+ (description
+ "This is a compatibility package as @code{Generically} and @code{Generically1}
+newtypes are available since base-4.17 in @code{GHC.Generics}.")
+ (license license:bsd-3)))
+
(define-public ghc-multipart
(package
(name "ghc-multipart")
@@ -2171,4 +2194,3 @@ (define-public ghc-network-run
(description
"This package provides a simple network runner library in Haskell.")
(license license:bsd-3)))
-
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 03/12] gnu: Add ghc-aeson-2.1.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 02/12] gnu: Add ghc-generically Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 04/12] gnu: Add ghc-data-array-byte Distopico
` (8 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-web.scm (ghc-aeson-2.1): New variable.
---
gnu/packages/haskell-web.scm | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 6c6122299d..967ff77eec 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -977,6 +977,22 @@ (define-public ghc-aeson
naming: in Greek mythology, Aeson was the father of Jason.)")
(license license:bsd-3)))
+(define-public ghc-aeson-2.1
+ (package
+ (inherit ghc-aeson)
+ (version "2.1.2.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "aeson" version))
+ (sha256
+ (base32
+ "1ii26lz9czxqhck11pzhqlhfhm9zgbrhiydv4gh1w66f0fwl4h2x"))))
+ (inputs (modify-inputs (package-inputs ghc-aeson)
+ (prepend ghc-generically)))
+ (arguments
+ `(#:cabal-revision ("1"
+ "1yiib3ay9961pzs1bb09waw40qkk8w74553bwjp5gkym3dk3q3zi")))))
+
(define-public ghc-aeson-pretty
(package
(name "ghc-aeson-pretty")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 04/12] gnu: Add ghc-data-array-byte.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 02/12] gnu: Add ghc-generically Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 03/12] gnu: Add ghc-aeson-2.1 Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 05/12] gnu: Add ghc-pooled-io Distopico
` (7 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-data-array-byte): New variable.
---
gnu/packages/haskell-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 71df4192dc..4be7bd970c 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -33,6 +33,7 @@
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2023 zamfofex <zamfofex@twdb.moe>
+;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2612,6 +2613,28 @@ (define-public ghc-csv
lingua franca for spreadsheets, and for certain web services.")
(license license:expat)))
+(define-public ghc-data-array-byte
+ (package
+ (name "ghc-data-array-byte")
+ (version "0.1.0.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "data-array-byte" version))
+ (sha256
+ (base32
+ "002n0af7q08q3fmgsc5b47s1clirxy0lrqglwxzhabg0nfhfrdhv"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "data-array-byte")))
+ (native-inputs (list ghc-tasty ghc-tasty-quickcheck
+ ghc-quickcheck-classes-base))
+ (home-page "https://hackage.haskell.org/package/data-array-byte")
+ (synopsis "Haskell compatibility layer for Data.Array.Byte")
+ (description
+ "This package provides Haskell compatibility layer for @code{Data.Array.Byte},
+providing boxed wrappers for @code{ByteArray} and @code{MutableByteArray} and relevant
+instances for GHC < 9.4.")
+ (license license:bsd-3)))
+
(define-public ghc-data-accessor
(package
(name "ghc-data-accessor")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 05/12] gnu: Add ghc-pooled-io.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (2 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 04/12] gnu: Add ghc-data-array-byte Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 06/12] gnu: Add ghc-text Distopico
` (6 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-pooled-io): New variable.
---
gnu/packages/haskell-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 4be7bd970c..879d662da6 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -8987,6 +8987,29 @@ (define-public ghc-pipes
@end itemize")
(license license:bsd-3)))
+(define-public ghc-pooled-io
+ (package
+ (name "ghc-pooled-io")
+ (version "0.0.2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "pooled-io" version))
+ (sha256
+ (base32
+ "0ysgfwlppilj21sqhbcq7xbyc5hnc26mzb58y7mm9rd5piw3v7mc"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "pooled-io")))
+ (inputs (list ghc-utility-ht ghc-unsafe ghc-concurrent-split))
+ (home-page "https://hub.darcs.net/thielema/pooled-io")
+ (synopsis
+ "Run jobs on a limited number of threads and support data dependencies")
+ (description
+ "This package provide run computations on multiple cores that need to write
+intermediate results to disk. The functions restrict the number of simultaneously
+running jobs to a user given number or to the number of capabilities the Haskell
+program.")
+ (license license:bsd-3)))
+
(define-public ghc-pointedlist
(package
(name "ghc-pointedlist")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 06/12] gnu: Add ghc-text.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (3 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 05/12] gnu: Add ghc-pooled-io Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 07/12] gnu: Add ghc-relude Distopico
` (5 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-text): New variable.
---
gnu/packages/haskell-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 879d662da6..f25fb89950 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -12098,6 +12098,32 @@ (define-public ghc-tar-conduit
interface for extracting and creating tar files.")
(license license:expat)))
+(define-public ghc-text
+ (package
+ (name "ghc-text")
+ (version "2.0.2")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "text" version))
+ (sha256
+ (base32
+ "1bggb4gq15r7z685w7c7hbm3w4n6day451ickz70d1l919jvwdf7"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "text")))
+ (arguments
+ ;; Disable otherwise crate a circular
+ ;; dependency with tasty
+ (list #:tests? #f))
+ (home-page "https://hackage.haskell.org/package/text")
+ (synopsis "Haskell library for immutable Unicode text type")
+ (description
+ "This package provides a library for immutable Unicode text type
+(both strict and lazy). The Text type represents Unicode character
+strings, in a time and space-efficient manner. Also provides text
+processing capabilities that are optimized for performance critical
+use, both in terms of large data quantities and high speed.")
+ (license license:bsd-2)))
+
(define-public ghc-temporary
(package
(name "ghc-temporary")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 07/12] gnu: Add ghc-relude.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (4 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 06/12] gnu: Add ghc-text Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 08/12] gnu: Add ghc-concurrent-split Distopico
` (4 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-relude): New variable.
---
gnu/packages/haskell-xyz.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index f25fb89950..837c8ade16 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -10052,6 +10052,29 @@ (define-public ghc-regex-tdfa
inspired by libtre.")
(license license:bsd-3)))
+(define-public ghc-relude
+ (package
+ (name "ghc-relude")
+ (version "1.1.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "relude" version))
+ (sha256
+ (base32
+ "02dn99v2qmykj0l1qmn15k36hyxccy71b7iqavfk24zgjf5g07dm"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "relude")))
+ (arguments
+ (list #:tests? #f))
+ (native-inputs (list ghc-doctest ghc-glob))
+ (inputs (list ghc-text ghc-hashable ghc-unordered-containers))
+ (home-page "https://hackage.haskell.org/package/relude")
+ (synopsis "Haskell standard library alternative for prelude library")
+ (description
+ "This package provide an haskell standard library alternative for
+the default haskell prelude library.")
+ (license license:expat)))
+
(define-public ghc-repline
(package
(name "ghc-repline")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 08/12] gnu: Add ghc-concurrent-split.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (5 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 07/12] gnu: Add ghc-relude Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 09/12] gnu: Add ghc-hspec-golden Distopico
` (3 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-concurrent-split): New variable.
---
gnu/packages/haskell-xyz.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 837c8ade16..34a1a32cc7 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13345,6 +13345,26 @@ (define-public ghc-unordered-containers-bootstrap
(native-inputs '())
(properties '((hidden? #t)))))
+(define-public ghc-concurrent-split
+ (package
+ (name "ghc-concurrent-split")
+ (version "0.0.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "concurrent-split" version))
+ (sha256
+ (base32
+ "0i9gak7q3ay8g1kzq7dg0bs36bg88n7kwy3h1r6jrni7mz7jh05f"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "concurrent-split")))
+ (home-page "https://hub.darcs.net/thielema/concurrent-split")
+ (synopsis "MVars and Channels with distinguished input and output side")
+ (description
+ "This package provides MVars and Channels with distinguished input and
+output side around the standard concurrency communication channels that make
+the distinction clear and type safe.")
+ (license license:bsd-3)))
+
(define-public ghc-commutative-semigroups
(package
(name "ghc-commutative-semigroups")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 09/12] gnu: Add ghc-hspec-golden.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (6 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 08/12] gnu: Add ghc-concurrent-split Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 10/12] gnu: Add ghc-bimap Distopico
` (2 subsequent siblings)
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-hspec-golden): New variable.
---
gnu/packages/haskell-xyz.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 34a1a32cc7..e3c5d525b1 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -16606,6 +16606,32 @@ (define-public ghc-newtype
such as ala'.")
(license license:bsd-3)))
+(define-public ghc-hspec-golden
+ (package
+ (name "ghc-hspec-golden")
+ (version "0.2.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (hackage-uri "hspec-golden" version))
+ (sha256
+ (base32
+ "07bfwj10n75l5zskwx4yzi86xxp5b4f692bjjkqs5b970h6gw33y"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "hspec-golden")))
+ (inputs (list ghc-hspec
+ ghc-hspec-core
+ ghc-silently
+ ghc-optparse-applicative
+ hspec-discover))
+ (home-page "https://hackage.haskell.org/package/hspec-golden")
+ (synopsis "Haskell golden tests for hspec")
+ (description
+ "This package provides golden tests store the expected output in a
+separated file.
+Each time a golden test is executed the output of the subject
+under test (SUT) is compared with the expected output.")
+ (license license:expat)))
+
(define-public ghc-hspec-hedgehog
(package
(name "ghc-hspec-hedgehog")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 10/12] gnu: Add ghc-bimap.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (7 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 09/12] gnu: Add ghc-hspec-golden Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 11/12] gnu: Fix missing required ghc-text dependency Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 12/12] gnu: Add elm-format Distopico
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/haskell-xyz.scm (ghc-bimap): New variable.
---
gnu/packages/haskell-xyz.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index e3c5d525b1..337dcac4d8 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -936,6 +936,27 @@ (define-public ghc-bencode
storing and transmitting loosely structured data.")
(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://hackage.haskell.org/package/bimap")
+ (synopsis "Bidirectional mapping between two key types for Haskell")
+ (description
+ "This pckage provides 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-bifunctors
(package
(name "ghc-bifunctors")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 11/12] gnu: Fix missing required ghc-text dependency.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (8 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 10/12] gnu: Add ghc-bimap Distopico
@ 2023-07-24 20:23 ` Distopico
2023-07-24 20:23 ` [bug#64840] [PATCH 12/12] gnu: Add elm-format Distopico
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
Several package require `text` haskell library as dependency but those are
using the internal haskell type creation a mismatch of types
An example of this is
https://hackage.haskell.org/package/pretty-show-1.10/dependencies
* gnu/packages/haskell-xyz.scm.
---
gnu/packages/haskell-xyz.scm | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 337dcac4d8..f1955dd1c2 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -425,7 +425,7 @@ (define-public ghc-ansi-wl-pprint
`(#:cabal-revision
("2" "1xrv66v5hqchjhj8a0g3awy1qpsswk2jqb4w4yh3mm1py5s0dlr0")))
(inputs
- (list ghc-ansi-terminal))
+ (list ghc-text ghc-ansi-terminal))
(home-page "https://github.com/ekmett/ansi-wl-pprint")
(synopsis "Wadler/Leijen Pretty Printer for colored ANSI terminal output")
(description "This is a pretty printing library based on Wadler's paper
@@ -1494,7 +1494,7 @@ (define-public ghc-cassava
@item
Customizable record-conversion instance derivation via GHC generics
@item
-Low-level @url{https://hackage.haskell.org/package/bytestring), bytestring}
+Low-level @url{https://hackage.haskell.org/package/bytestring, bytestring}
builders (see @url{https://hackage.haskell.org/package/cassava-0.5.2.0/docs/
Data-Csv-Builder.html, Data.Csv.Builder})
@item
@@ -4904,6 +4904,7 @@ (define-public ghc-hashable
(build-system haskell-build-system)
(properties '((upstream-name . "hashable")))
(native-inputs (list ghc-hunit
+ ghc-text
ghc-quickcheck
ghc-random
ghc-test-framework
@@ -8207,7 +8208,7 @@ (define-public ghc-optparse-applicative
"097p1bkvw9r3rvcr65w53yw14drb0s46ldkkl1jbmq5g7m6jwnw2"))))
(build-system haskell-build-system)
(properties '((upstream-name . "optparse-applicative")))
- (inputs (list ghc-transformers-compat ghc-ansi-wl-pprint))
+ (inputs (list ghc-text ghc-transformers-compat ghc-ansi-wl-pprint))
(native-inputs (list ghc-quickcheck))
(home-page "https://github.com/pcapriotti/optparse-applicative")
(synopsis "Utilities and combinators for parsing command line options")
@@ -9232,7 +9233,7 @@ (define-public ghc-pretty-show
(build-system haskell-build-system)
(properties '((upstream-name . "pretty-show")))
(inputs
- (list ghc-haskell-lexer ghc-happy))
+ (list ghc-text ghc-haskell-lexer ghc-happy))
(home-page "https://wiki.github.com/yav/pretty-show")
(synopsis "Tools for working with derived `Show` instances")
(description
@@ -9947,6 +9948,7 @@ (define-public ghc-regex-base
"1w9fxad1dwi040r3db9i2cjhhrl86p3hngj13ixbcnqgb27l16bv"))))
(build-system haskell-build-system)
(properties '((upstream-name . "regex-base")))
+ (inputs (list ghc-text))
(arguments
`(#:cabal-revision ("1"
"1k2gzjm7xz69f7zr08wh2wzb5dhb659cvimsvx0g9p8cf5f45x2g")))
@@ -10816,7 +10818,7 @@ (define-public ghc-semigroups
"1qbk6scp1rzb69dy8mz26p6az5vi16g2lzwmwnfshh3br4rjwbch"))))
(build-system haskell-build-system)
(properties '((upstream-name . "semigroups")))
- (inputs (list ghc-nats ghc-tagged ghc-hashable ghc-unordered-containers
+ (inputs (list ghc-text ghc-nats ghc-tagged ghc-hashable ghc-unordered-containers
ghc-transformers-compat))
(home-page "http://github.com/ekmett/semigroups/")
(synopsis "Semigroup operations for Haskell")
@@ -14053,6 +14055,7 @@ (define-public ghc-wl-pprint-annotated
"1br7qyf27iza213inwhf9bm2k6in0zbmfw6w4clqlc9f9cj2nrkb"))))
(build-system haskell-build-system)
(properties '((upstream-name . "wl-pprint-annotated")))
+ (inputs (list ghc-text))
(native-inputs
(list ghc-tasty ghc-tasty-hunit))
(home-page
@@ -14224,6 +14227,7 @@ (define-public ghc-xml
"0g814lj7vaxvib2g3r734221k80k7ap9czv9hinifn8syals3l9j"))))
(build-system haskell-build-system)
(properties '((upstream-name . "xml")))
+ (inputs (list ghc-text))
(home-page "https://github.com/GaloisInc/xml")
(synopsis "Simple XML library for Haskell")
(description "This package provides a simple XML library for Haskell.")
@@ -16909,4 +16913,3 @@ (define-public ghc-ref-tf
;;; of a merge conflict, place them above by existing packages with similar
;;; functionality or similar names.
;;;
-
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [bug#64840] [PATCH 12/12] gnu: Add elm-format.
2023-07-24 20:23 ` [bug#64840] [PATCH 01/12] gnu: ghc-quickcheck-instances: Update to 0.3.29 Distopico
` (9 preceding siblings ...)
2023-07-24 20:23 ` [bug#64840] [PATCH 11/12] gnu: Fix missing required ghc-text dependency Distopico
@ 2023-07-24 20:23 ` Distopico
10 siblings, 0 replies; 14+ messages in thread
From: Distopico @ 2023-07-24 20:23 UTC (permalink / raw)
To: 64840; +Cc: Distopico
* gnu/packages/elm.scm (elm-format): New variable.
---
gnu/packages/elm.scm | 197 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 197 insertions(+)
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm
index a74d294ae5..5361634abb 100644
--- a/gnu/packages/elm.scm
+++ b/gnu/packages/elm.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2022 jgart <jgart@dismail.de>
+;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -384,6 +385,202 @@ (define-public elm-bytes
and @code{DataView}.")
(license license:bsd-3)))
+(define elm-format-avh4-lib
+ (let ((commit "b5cca4c26b473dab06e5d73b98148637e4770d45"))
+ (package
+ (name "elm-format-avh4-lib")
+ (version "0.0.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avh4/elm-format")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04l1bn4w8q3ifd6mc4mfrqxfbihmqnpfjdn6gr0x2jqcasjbk0bi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "avh4-lib") (hidden? #t)))
+ (arguments
+ ;; Require and use ghc-text but ghc doesn't detect it
+ `(#:configure-flags (list "--ghc-option=-Wno-error=unused-packages")
+ #:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'enter-lib-subdirectory
+ (lambda _
+ (chdir "avh4-lib"))))))
+ (inputs (list ghc-pooled-io ghc-text ghc-relude))
+ (native-inputs (list ghc-tasty ghc-tasty-hunit ghc-tasty-hspec))
+ (home-page "https://github.com/avh4/elm-format/tree/main/avh4-lib")
+ (synopsis "Common code for elm-format packages")
+ (description
+ "This packages provides common code for @command{elm-format} haskell projects.")
+ (license license:bsd-3))))
+
+(define elm-format-test-lib
+ (let ((commit "b5cca4c26b473dab06e5d73b98148637e4770d45"))
+ (package
+ (name "elm-format-test-lib")
+ (version "0.0.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avh4/elm-format")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04l1bn4w8q3ifd6mc4mfrqxfbihmqnpfjdn6gr0x2jqcasjbk0bi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "elm-format-test-lib") (hidden? #t)))
+ (arguments
+ `(#:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'enter-lib-subdirectory
+ (lambda _
+ (chdir "elm-format-test-lib"))))))
+ (inputs (list elm-format-avh4-lib ghc-split ghc-text))
+ (native-inputs (list ghc-hspec-golden ghc-hspec ghc-tasty-hspec
+ ghc-tasty-hunit))
+ (home-page
+ "https://github.com/avh4/elm-format/tree/main/elm-format-test-lib")
+ (synopsis "Test helpers used by elm-format")
+ (description "This package provides elf-format helpers for test used by
+@command{elm-format}, elm-format-tests and elm-refactor-tests.")
+ (license license:bsd-3))))
+
+(define elm-format-markdown
+ (let ((commit "b5cca4c26b473dab06e5d73b98148637e4770d45"))
+ (package
+ (name "elm-format-markdown")
+ (version "0.0.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avh4/elm-format")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04l1bn4w8q3ifd6mc4mfrqxfbihmqnpfjdn6gr0x2jqcasjbk0bi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "elm-format-markdown") (hidden? #t)))
+ (arguments
+ `(#:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'enter-lib-subdirectory
+ (lambda _
+ (chdir "elm-format-markdown"))))))
+ (inputs (list elm-format-avh4-lib ghc-split ghc-text))
+ (native-inputs (list ghc-hspec-golden ghc-tasty ghc-tasty-hunit
+ ghc-tasty-hspec))
+ (home-page
+ "https://github.com/avh4/elm-format/blob/main/elm-format-markdown")
+ (synopsis "Markdown parsing for Elm documentation comments")
+ (description "This package provides an markdown parsing for Elm
+documentation comments used by @command{elm-format}.")
+ (license license:bsd-3))))
+
+(define elm-format-lib
+ (let ((commit "b5cca4c26b473dab06e5d73b98148637e4770d45"))
+ (package
+ (name "elm-format-lib")
+ (version "0.0.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/avh4/elm-format")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04l1bn4w8q3ifd6mc4mfrqxfbihmqnpfjdn6gr0x2jqcasjbk0bi"))))
+ (build-system haskell-build-system)
+ (properties '((upstream-name . "elm-format-lib") (hidden? #t)))
+ (arguments
+ `(#:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'enter-lib-subdirectory
+ (lambda _
+ (chdir "elm-format-lib"))))))
+ (inputs
+ (list elm-format-avh4-lib
+ elm-format-markdown
+ ghc-optparse-applicative
+ ghc-aeson-2.1
+ ghc-bimap
+ ghc-relude
+ ghc-text))
+ (native-inputs
+ (list elm-format-test-lib
+ ghc-split
+ ghc-hspec
+ ghc-tasty
+ ghc-tasty-hspec
+ ghc-tasty-hunit))
+ (home-page "https://github.com/avh4/elm-format/blob/main/elm-format-lib")
+ (synopsis "Common code used by elm-format")
+ (description "This package provides elm-format library with common code
+used by @command{elm-format} and elm-refactor.")
+ (license license:bsd-3))))
+
+(define-public elm-format
+ (package
+ (name "elm-format")
+ (version "0.8.7")
+ (source (origin
+ (method git-fetch)
+ (file-name (git-file-name name version))
+ (uri (git-reference
+ (url "https://github.com/avh4/elm-format")
+ (commit version)))
+ (sha256
+ (base32
+ "04l1bn4w8q3ifd6mc4mfrqxfbihmqnpfjdn6gr0x2jqcasjbk0bi"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; We don't build these library in this packages.
+ (delete-file-recursively "avh4-lib")
+ (delete-file-recursively "elm-format-lib")
+ (delete-file-recursively "elm-format-test-lib")
+ (delete-file-recursively "elm-format-markdown")))))
+ (build-system haskell-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-before 'configure 'ganerate-build-file
+ (lambda _
+ ;; We need crate manually this build file
+ ;; because elm-format use `hpack`.
+ (mkdir "generated")
+ (let ((f (open-file "generated/Build_elm_format.hs" "a")))
+ (display "module Build_elm_format where\n" f)
+ (display "gitDescribe :: String\n" f)
+ (display (string-append "gitDescribe = \""
+ ,(package-version elm-format)
+ "\"") f)
+ (close-port f)))))))
+ (inputs
+ (list elm-format-avh4-lib
+ elm-format-lib
+ ghc-aeson
+ ghc-text
+ ghc-relude
+ ghc-aeson-2.1
+ ghc-ansi-wl-pprint
+ ghc-quickcheck
+ ghc-hspec))
+ (native-inputs
+ (list elm-format-test-lib ghc-tasty ghc-tasty-quickcheck
+ ghc-tasty-hunit ghc-tasty-hspec))
+ (home-page "https://github.com/avh4/elm-format")
+ (synopsis "Source code formatter for Elm programming language")
+ (description
+ "Formats @url{https://elm-lang.org/, Elm} programming language
+source code according to a standard set of rules based on the
+@url{https://elm-lang.org/docs/style-guide, official Elm Style Guide}.")
+ (license license:bsd-3)))
+
(define-public elm-file
(package
(name "elm-file")
--
2.41.0
^ permalink raw reply related [flat|nested] 14+ messages in thread