From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:45501) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jNMV2-0004Xg-EV for guix-patches@gnu.org; Sat, 11 Apr 2020 16:13:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jNMUx-0007Rj-Jg for guix-patches@gnu.org; Sat, 11 Apr 2020 16:13:08 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:45581) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jNMUw-0007RZ-Ja for guix-patches@gnu.org; Sat, 11 Apr 2020 16:13:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jNMUw-0004PV-FA for guix-patches@gnu.org; Sat, 11 Apr 2020 16:13:02 -0400 Subject: [bug#38596] [PATCH] gnu: Add PureScript. References: In-Reply-To: Resent-Message-ID: From: John Soo Date: Sat, 11 Apr 2020 13:12:08 -0700 Message-ID: <87k12lrdd3.fsf@asu.edu> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 38596@debbugs.gnu.org --=-=-= Content-Type: text/plain Hi Guix, I rebased these patches on master. Thanks! John --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-gnu-Add-ghc-utf8-light.patch >From fddfd4fa488f9e02ca2bfcafedbb1c068c9243fc Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:00:31 -0800 Subject: [PATCH 01/22] gnu: Add ghc-utf8-light. * gnu/packages/haskell-xyz.scm (ghc-utf8-light): 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 d22a08e7fb..0eb43b70e1 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -12671,6 +12671,27 @@ a style ready for qualification, that is, you should import them by parser that uses ByteStrings for parsing and representing the URI data.") (license license:bsd-3))) +(define-public ghc-utf8-light + (package + (name "ghc-utf8-light") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/utf8-light/utf8-light-" + version + ".tar.gz")) + (sha256 + (base32 + "0rwyc5z331yfnm4hpx0sph6i1zvkd1z10vvglhnp0vc9wy644k0q")))) + (build-system haskell-build-system) + (home-page + "http://hackage.haskell.org/package/utf8-light") + (synopsis "Lightweight unicode support for Haskell") + (description "Lightweight UTF8 handling.") + (license license:bsd-3))) + (define-public ghc-utf8-string (package (name "ghc-utf8-string") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0002-gnu-Add-ghc-transformers.patch >From 59e7c0ba775f114b5e58ee3f1cdf0c337c85a6fb Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:04:13 -0800 Subject: [PATCH 02/22] gnu: Add ghc-transformers. * gnu/packages/haskell-xyz.scm (ghc-transformers): New variable. --- gnu/packages/haskell-xyz.scm | 43 ++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 0eb43b70e1..ca6d0d53c6 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -12127,6 +12127,49 @@ from a shell. The @code{tldr} pages are a community effort to simplify the man pages with practical examples.") (license license:bsd-3))) +(define-public ghc-transformers + (package + (name "ghc-transformers") + (version "0.5.6.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/transformers/transformers-" + version + ".tar.gz")) + (sha256 + (base32 + "0v66j5k0xqk51pmca55wq192qyw2p43s2mgxlz4f95q2c1fpjs5n")))) + (build-system haskell-build-system) + (home-page + "http://hackage.haskell.org/package/transformers") + (synopsis "Concrete functor and monad transformers") + (description + "A portable library of functor and monad transformers, inspired +by the paper \"Functional Programming with Overloading and +Higher-Order Polymorphism\", by Mark P Jones, in Advanced School of +Functional Programming, 1995 +http://web.cecs.pdx.edu/~mpj/pubs/springschool.html. + +This package contains: +@itemize +@item +the monad transformer class (in \"Control.Monad.Trans.Class\") +@item +concrete functor and monad +transformers, each with associated operations and functions to lift +operations associated with other transformers. +@end itemize +The package can be used on its own in portable Haskell code, in which +case operations need to be manually lifted through transformer +stacks (see \"Control.Monad.Trans.Class\" for some +examples). Alternatively, it can be used with the non-portable monad +classes in the mtl or monads-tf packages, which automatically lift +operations introduced by monad transformers through other +transformers.") + (license license:bsd-3))) + (define-public ghc-transformers-base (package (name "ghc-transformers-base") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0003-gnu-Add-ghc-tasty-hspec.patch >From 0d95c7ff4d04ecc0157f52ab280b5e866e41f28c Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:06:52 -0800 Subject: [PATCH 03/22] gnu: Add ghc-tasty-hspec. * gnu/packages/haskell-check.scm (ghc-tasty-hspec): New variable. --- gnu/packages/haskell-check.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index c6e89460ea..7942f2019a 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -215,6 +215,39 @@ with the @url{https://hackage.haskell.org/package/tasty, tasty testing framework}.") (license license:bsd-3))) +(define-public ghc-tasty-hspec + (package + (name "ghc-tasty-hspec") + (version "1.1.5.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/tasty-hspec/tasty-hspec-" + version + ".tar.gz")) + (sha256 + (base32 + "0i9kdzjpk750sa078jj3iyhp72k0177zk7vxl131r6dkyz09x27y")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-hspec-core" ,ghc-hspec-core) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-smallcheck" ,ghc-tasty-smallcheck) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) + (arguments + `(#:cabal-revision + ("4" "1yppwhs2r2rlwrzli9ccv5ldgl95h5p7pqhsr898r3das6daf6sk"))) + (home-page + "https://github.com/mitchellwrosen/tasty-hspec") + (synopsis + "Hspec support for the Tasty test framework") + (description + "This package provides a Tasty provider for Hspec test suites.") + (license license:bsd-3))) + (define-public ghc-tasty-hunit (package (name "ghc-tasty-hunit") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0004-gnu-Add-ghc-websockets.patch >From 71b6172cc7c4aa75ee9d3a2a18a6f1b67367a0d8 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:12:42 -0800 Subject: [PATCH 04/22] gnu: Add ghc-websockets. * gnu/packages/haskell-web.scm (ghc-websockets): New variable. --- gnu/packages/haskell-web.scm | 53 ++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 05be862a85..67fc68cf3a 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -655,6 +655,59 @@ limitation, automatic pruning, energy saving and replay resistance.") a WAI handler, via the native Haskell TLS implementation.") (license license:expat))) +(define-public ghc-websockets + (package + (name "ghc-websockets") + (version "0.12.6.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/websockets/websockets-" + version + ".tar.gz")) + (sha256 + (base32 + "1vp3790w3hmr6v96314vdx74f7sg2c7hvnc93gafq0xhbxnr7nvx")))) + (build-system haskell-build-system) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-bytestring-builder" ,ghc-bytestring-builder) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-network" ,ghc-network) + ("ghc-random" ,ghc-random) + ("ghc-sha" ,ghc-sha) + ("ghc-streaming-commons" ,ghc-streaming-commons) + ("ghc-entropy" ,ghc-entropy))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://jaspervdj.be/websockets/") + (synopsis + "Way to write WebSocket-capable servers in Haskell") + (description + "This library allows you to write WebSocket-capable servers. + +An example server: +https://github.com/jaspervdj/websockets/blob/master/example/server.lhs +An example client: +https://github.com/jaspervdj/websockets/blob/master/example/client.hs + +See also: +@itemize +@item +The specification of the WebSocket protocol: +http://www.whatwg.org/specs/web-socket-protocol/. +@item +The JavaScript API for dealing with WebSockets: +http://www.w3.org/TR/websockets/ +@end itemize") + (license license:bsd-3))) + (define-public ghc-xss-sanitize (package (name "ghc-xss-sanitize") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0005-gnu-Add-ghc-wai-websockets.patch >From db43579260f7fd52d722039dc833e00d5c4f29b8 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:37:29 -0800 Subject: [PATCH 05/22] gnu: Add ghc-wai-websockets. * gnu/packages/haskell-web.scm (ghc-wai-websockets): New variable. --- gnu/packages/haskell-web.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 67fc68cf3a..55cad25085 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -708,6 +708,36 @@ http://www.w3.org/TR/websockets/ @end itemize") (license license:bsd-3))) +(define-public ghc-wai-websockets + (package + (name "ghc-wai-websockets") + (version "3.0.1.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/wai-websockets/wai-websockets-" + version + ".tar.gz")) + (sha256 + (base32 + "0b2xmdsrsqpssyib53wbr6r8hf75789ndyyanv37sv99iyqcwz4i")))) + (build-system haskell-build-system) + (inputs + `(("ghc-wai" ,ghc-wai) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-network" ,ghc-network) + ("ghc-websockets" ,ghc-websockets) + ("ghc-http-types" ,ghc-http-types))) + (arguments + `(#:configure-flags '("--flags=-example"))) + (home-page "https://github.com/yesodweb/wai") + (synopsis + "Provide a bridge between WAI and the websockets package") + (description + "Use websockets with WAI applications, primarily those hosted via Warp.") + (license license:expat))) + (define-public ghc-xss-sanitize (package (name "ghc-xss-sanitize") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0006-gnu-Add-ghc-sourcemap.patch >From f5ecef8e10997597a37982a63ec365fe793d9e7b Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:39:09 -0800 Subject: [PATCH 06/22] gnu: Add ghc-sourcemap. gnu/pacakges/haskell-web.scm (ghc-sourcemap): New variable. --- gnu/packages/haskell-web.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 55cad25085..55407bb729 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -1776,3 +1776,36 @@ non-Haskell dependencies.") and Perl's @code{Web::Scraper}. Scalpel builds on top of TagSoup to provide a declarative and monadic interface.") (license license:asl2.0))) + +(define-public ghc-sourcemap + (package + (name "ghc-sourcemap") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/sourcemap/sourcemap-" + version + ".tar.gz")) + (sha256 + (base32 + "0ynfm44ym8y592wnzdwa0d05dbkffyyg5sm26y5ylzpynk64r85r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-utf8-string" ,ghc-utf8-string))) + (arguments + `(#:tests? #f)) + (home-page + "http://hackage.haskell.org/package/sourcemap") + (synopsis + "Implementation of source maps as proposed by Google and Mozilla") + (description + "Implementation of source maps, revision 3, proposed by Google +and Mozilla here https://wiki.mozilla.org/DevTools/Features/SourceMap +and here +https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit") + (license license:bsd-3))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0007-gnu-Add-ghc-mtl-compat.patch >From 4219d46e224b2901d37e47da8a0cc08c48662386 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 09:32:28 -0800 Subject: [PATCH 07/22] gnu: Add ghc-mtl-compat. * gnu/packages/haskell-xyz.scm (ghc-mtl-compat): New variable. --- gnu/packages/haskell-xyz.scm | 39 ++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index ca6d0d53c6..dd0c1206dd 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -7631,6 +7631,45 @@ semi-direct products, \"deletable\" monoids, \"split\" monoids, and \"cut\" monoids.") (license license:bsd-3))) +(define-public ghc-mtl-compat + (package + (name "ghc-mtl-compat") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/mtl-compat/mtl-compat-" + version + ".tar.gz")) + (sha256 + (base32 + "17iszr5yb4f17g8mq6i74hsamii8z6m2qfsmgzs78mhiwa7kjm8r")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f + #:haddock? #f)) + (home-page + "https://github.com/haskell-compat/mtl-compat") + (synopsis + "Backported Control.Monad.Except module from mtl") + (description + "This package backports the \"Control.Monad.Except\" module from +mtl (if using mtl-2.2.0.1 or earlier), which reexports the ExceptT +monad transformer and the MonadError class. + +This package should only be used if there is a need to use the +Control.Monad.Except module specifically. If you just want the mtl +class instances for ExceptT, use transformers-compat instead, since +mtl-compat does nothing but reexport the instances from that package. + +Note that unlike how mtl-2.2 or later works, the +\"Control.Monad.Except\" module defined in this package exports all of +ExceptT's monad class instances. Therefore, you may have to declare +import Control.Monad.Except () at the top of your file to get all of +the ExceptT instances in scope.") + (license license:bsd-3))) + (define-public ghc-murmur-hash (package (name "ghc-murmur-hash") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0008-gnu-Add-ghc-protolude.patch >From 1021eee12c0f48adb4cd4560201cb8c348648361 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:40:38 -0800 Subject: [PATCH 08/22] gnu: Add ghc-protolude. * gnu/packages/haskell-xyz.scm (ghc-protolude): 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 dd0c1206dd..3e383b8231 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -9285,6 +9285,32 @@ project-template tries to provide a canonical Haskell library for implementing the ideal templating system.") (license license:bsd-3))) +(define-public ghc-protolude + (package + (name "ghc-protolude") + (version "0.2.3") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/protolude/protolude-" + version + ".tar.gz")) + (sha256 + (base32 + "0zzkyxz0vmcbncpid7gp72fpjj0fla3gqhlfkij5c5lg12skjgfj")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-hashable" ,ghc-hashable) + ("ghc-mtl-compat" ,ghc-mtl-compat) + ("ghc-transformers-compat" ,ghc-transformers-compat))) + (home-page "https://github.com/sdiehl/protolude") + (synopsis "Small prelude") + (description + "A sensible set of defaults for writing custom Preludes.") + (license license:expat))) + (define-public ghc-psqueues (package (name "ghc-psqueues") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0009-gnu-Add-ghc-pattern-arrows.patch >From d1879a186303fb5b5e3ff28a0b312f3aad56baaa Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:41:40 -0800 Subject: [PATCH 09/22] gnu: Add ghc-pattern-arrows. * gnu/packages/haskell-xyz.scm (ghc-pattern-arrows): 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 3e383b8231..e98df13b58 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -8763,6 +8763,29 @@ of two versions of a source file. It provides a good balance between performance, nice output for humans, and simplicity of implementation.") (license license:bsd-3))) +(define-public ghc-pattern-arrows + (package + (name "ghc-pattern-arrows") + (version "0.0.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/pattern-arrows/pattern-arrows-" + version + ".tar.gz")) + (sha256 + (base32 + "13q7bj19hd60rnjfc05wxlyck8llxy11z3mns8kxg197wxrdkhkg")))) + (build-system haskell-build-system) + (home-page + "https://blog.functorial.com/posts/2013-10-27-Pretty-Printing-Arrows.html") + (synopsis "Arrows for Pretty Printing") + (description + "A library for generating concise pretty printers based on precedence +rules.") + (license license:expat))) + (define-public ghc-pcre-light (package (name "ghc-pcre-light") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0010-gnu-Add-ghc-language-javascript.patch >From 62c221e3e1fda6e72ff2464c4faa31760523090c Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:43:44 -0800 Subject: [PATCH 10/22] gnu: Add ghc-language-javascript. * gnu/packages/haskell-web.scm (ghc-language-javascript): New variable. --- gnu/packages/haskell-web.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 55407bb729..a72e7ede60 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -1809,3 +1809,35 @@ and Mozilla here https://wiki.mozilla.org/DevTools/Features/SourceMap and here https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit") (license license:bsd-3))) + +(define-public ghc-language-javascript + (package + (name "ghc-language-javascript") + (version "0.7.0.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/language-javascript/language-javascript-" + version + ".tar.gz")) + (sha256 + (base32 + "15bpqpkjf2y3fk8wff9zlnkpsjc63bnbvhlkxrs9alj0bikq17nk")))) + (build-system haskell-build-system) + (inputs + `(("ghc-blaze-builder" ,ghc-blaze-builder) + ("ghc-utf8-string" ,ghc-utf8-string))) + (native-inputs + `(("ghc-alex" ,ghc-alex) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-happy" ,ghc-happy) + ("ghc-hspec" ,ghc-hspec) + ("ghc-utf8-light" ,ghc-utf8-light))) + (home-page + "https://github.com/erikd/language-javascript") + (synopsis "Parser for JavaScript") + (description + "Parses Javascript into an Abstract Syntax Tree (AST). Initially intended +as frontend to hjsmin.") + (license license:bsd-3))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0011-gnu-Add-ghc-bower-json.patch >From 02f6a0f0a0398f9244ca80bc33dfdda1bc403c99 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:44:47 -0800 Subject: [PATCH 11/22] gnu: Add ghc-bower-json. * gnu/packages/haskell-web.scm (ghc-bower-json): New variable. --- gnu/packages/haskell-web.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index a72e7ede60..50abfb04db 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -1841,3 +1841,35 @@ https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/ "Parses Javascript into an Abstract Syntax Tree (AST). Initially intended as frontend to hjsmin.") (license license:bsd-3))) + +(define-public ghc-bower-json + (package + (name "ghc-bower-json") + (version "1.0.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/bower-json/bower-json-" + version + ".tar.gz")) + (sha256 + (base32 + "0wvygg3rdbxzrmr61a9w6ddv9pfric85ih8hnxyk0ydzn7i59abs")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-aeson-better-errors" ,ghc-aeson-better-errors) + ("ghc-scientific" ,ghc-scientific) + ("ghc-transformers" ,ghc-transformers) + ("ghc-unordered-containers" ,ghc-unordered-containers))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "https://github.com/hdgarrood/bower-json") + (synopsis "Read bower.json from Haskell") + (description + "Bower is a package manager for the web (see http://bower.io). This +package provides a data type and ToJSON/FromJSON instances for Bower's package +manifest file,bower.json.") + (license license:expat))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0012-gnu-Add-ghc-aeson-better-errors.patch >From 97df0ddc596744c54ca6ecf1995301096a32559e Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 07:45:59 -0800 Subject: [PATCH 12/22] gnu: Add ghc-aeson-better-errors. * gnu/packages/haskell-web.scm (ghc-aeson-better-errors): New variable. --- gnu/packages/haskell-web.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 50abfb04db..5b7089a02e 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -1007,6 +1007,39 @@ the function @code{aesonQQ} that compile-time converts a string representation of a JSON value into a @code{Data.Aeson.Value}.") (license license:expat))) +(define-public ghc-aeson-better-errors + (package + (name "ghc-aeson-better-errors") + (version "0.9.1.0") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/aeson-better-errors/aeson-better-errors-" + version + ".tar.gz")) + (sha256 + (base32 + "09vkyrhwak3bmpfsqcd2az8hfqqkxyhg468hv5avgisy0nzh3w38")))) + (build-system haskell-build-system) + (inputs + `(("ghc-aeson" ,ghc-aeson) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-dlist" ,ghc-dlist) + ("ghc-scientific" ,ghc-scientific) + ("ghc-vector" ,ghc-vector) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-void" ,ghc-void))) + (home-page + "https://github.com/hdgarrood/aeson-better-errors") + (synopsis + "Better error messages when decoding JSON values in Haskell") + (description + "A small package which gives you the tools to build parsers to decode +JSON values, and gives good error messages when parsing fails. See also +http://harry.garrood.me/blog/aeson-better-errors/.") + (license license:expat))) + (define-public ghc-multipart (package (name "ghc-multipart") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0013-gnu-Add-ghc-assoc.patch >From 313086be95f69a9a95de28724f9218d664ad921c Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:44:49 -0800 Subject: [PATCH 13/22] gnu: Add ghc-assoc. * gnu/packages/haskell-xyz.scm (ghc-assoc): New variable. --- gnu/packages/haskell-xyz.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index e98df13b58..2ab8bff2b2 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -456,6 +456,34 @@ colored output using the ansi-terminal package.") style.") (license license:bsd-3))) +(define-public ghc-assoc + (package + (name "ghc-assoc") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/assoc/assoc-" + version + ".tar.gz")) + (sha256 + (base32 + "1m9n4vp190bvn2wcrd4ggfwa9pi93jp0zgx02mdgywn2zfidw020")))) + (build-system haskell-build-system) + (inputs + `(("ghc-bifunctors" ,ghc-bifunctors) + ("ghc-tagged" ,ghc-tagged))) + (home-page + "http://hackage.haskell.org/package/assoc") + (synopsis + "Swap and assoc: Symmetric and Semigroupy Bifunctors") + (description + "Provides generalisations of @code{swap :: (a,b) -> (b,a)} and +@code{assoc :: ((a,b),c) -> (a,(b,c))} to @code{Bifunctor}s supporting +similar operations (e.g. @code{Either}, @code{These}).") + (license license:bsd-3))) + (define-public ghc-async (package (name "ghc-async") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0014-gnu-Add-ghc-these.patch >From 76ec0c36f634cfc0776bdae06a5adae9a823fca9 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:45:42 -0800 Subject: [PATCH 14/22] gnu: Add ghc-these. * gnu/packages/haskell-xyz.scm (ghc-these): New variable. --- gnu/packages/haskell-xyz.scm | 57 ++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 2ab8bff2b2..5c65f7b83e 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -12003,6 +12003,63 @@ and @code{Eq} instances. These instances used to live in the haskell-src-meta package, and that's where the version number started.") (license license:bsd-3))) +(define-public ghc-these + (package + (name "ghc-these") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/these/these-" + version + ".tar.gz")) + (sha256 + (base32 + "1k0pi65g7cm9hzdw6my6bzz2zvddkmj1qs45ymqmi316bpiixk3r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-base-compat" ,ghc-base-compat) + ("ghc-hashable" ,ghc-hashable) + ("ghc-aeson" ,ghc-aeson) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-assoc" ,ghc-assoc) + ("ghc-semigroupoids" ,ghc-semigroupoids) + ("ghc-quickcheck" ,ghc-quickcheck))) + (arguments + `(#:cabal-revision + ("1" + "0923r86fnmgpx0msm68aszirh2n19nn5bccgjxfh2146jw4z7w3z"))) + (home-page + "https://github.com/isomorphism/these") + (synopsis "Either-or-both data type") + (description + "This package provides a data type @code{These a b} which can +hold a value of either type or values of each type. This is usually +thought of as an \"inclusive or\" type (contrasting @code{Either a b} as +\"exclusive or\") or as an \"outer join\" type (contrasting @code{(a, b)} +as \"inner join\"). + +@code{data These a b = This a | That b | These a b} + +Since version 1, this package was split into parts: + +@itemize +@item +https://hackage.haskell.org/package/semialign For @code{Align} and +@code{Zip} type-classes. +@item +https://hackage.haskell.org/package/semialign-indexed For +@code{SemialignWithIndex} class, providing @code{ialignWith} and +@code{izipWith} +@item +https://hackage.haskell.org/package/these-lens For lens combinators. +@item +http://hackage.haskell.org/package/monad-chronicle For transformers +variant of @code{These}. +@end itemize") + (license license:bsd-3))) + (define-public ghc-threads (package (name "ghc-threads") -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0015-gnu-Add-ghc-semialign.patch >From 26fd6f56f08fe41f3ef43f8e0f38d7a8e5c886eb Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:48:25 -0800 Subject: [PATCH 15/22] gnu: Add ghc-semialign. * gnu/packages/haskell-xyz.scm (ghc-semialign): New variable. --- gnu/packages/haskell-xyz.scm | 40 ++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 5c65f7b83e..d0dd0fe8ba 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -10522,6 +10522,46 @@ Haskell") a memory chunk that will be auto-scrubbed after it run out of scope.") (license license:bsd-3))) +(define-public ghc-semialign + (package + (name "ghc-semialign") + (version "1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/semialign/semialign-" + version + ".tar.gz")) + (sha256 + (base32 + "004x0a80sqqdgvsyk4z0nasxpi6z3g1d8kgwj804bj9ka8dlc75m")))) + (build-system haskell-build-system) + (inputs + `(("ghc-these" ,ghc-these) + ("ghc-base-compat" ,ghc-base-compat) + ("ghc-hashable" ,ghc-hashable) + ("ghc-tagged" ,ghc-tagged) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-vector" ,ghc-vector) + ("ghc-semigroupoids" ,ghc-semigroupoids))) + (arguments + `(#:cabal-revision + ("1" + "0qnqnyfng4kwy2h2anrcy5id2ijnawava3zcc5h5b8ri1y6ks6zi"))) + (home-page + "https://github.com/isomorphism/these") + (synopsis + "Align and Zip type-classes from the common Semialign ancestor ") + (description + "The major use of @code{These} of this is provided by the +@code{align} member of @code{Semialign} class, representing a +generalized notion of \"zipping with padding\" that combines +structures without truncating to the size of the smaller input. It +turns out that @code{zip} operation fits well the @code{Semialign} +class, forming lattice-like structure.") + (license license:bsd-3))) + (define-public ghc-semigroupoids (package (name "ghc-semigroupoids") -- 2.26.0 --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: attachment; filename=0016-gnu-Add-ghc-happy-1.19.9.patch Content-Transfer-Encoding: quoted-printable >From d578f00c1dd07d8e4f9992463ad13532b9292811 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:52:48 -0800 Subject: [PATCH 16/22] gnu: Add ghc-happy@1.19.9 * gnu/packages/purescript.scm (ghc-happy-1.19.9): New file, New variable. * gnu/local.mk (GNU_SYSTEM_MODULES): Add purescript.scm. --- gnu/local.mk | 1 + gnu/packages/purescript.scm | 44 +++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 gnu/packages/purescript.scm diff --git a/gnu/local.mk b/gnu/local.mk index ac5fb0cfd1..ffed5525b0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -423,6 +423,7 @@ GNU_SYSTEM_MODULES =3D \ %D%/packages/pretty-print.scm \ %D%/packages/protobuf.scm \ %D%/packages/pure.scm \ + %D%/packages/purescript.scm \ %D%/packages/pv.scm \ %D%/packages/python.scm \ %D%/packages/python-check.scm \ diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm new file mode 100644 index 0000000000..ba90f9c23b --- /dev/null +++ b/gnu/packages/purescript.scm @@ -0,0 +1,44 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright =C2=A9 2019 John Soo +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages purescript) + #:use-module (gnu packages haskell-xyz) + #:use-module (gnu packages haskell-check) + #:use-module (gnu packages haskell-crypto) + #:use-module (gnu packages haskell-web) + #:use-module ((gnu packages python) #:select (python)) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (guix build-system haskell) + #:use-module ((guix licenses) #:prefix license:)) + +(define ghc-happy-1.19.9 + (package + (inherit ghc-happy) + (version "1.19.9") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/happy/happy-" + version + ".tar.gz")) + (sha256 + (base32 + "138xpxdb7x62lpmgmb6b3v3vgdqqvqn4273jaap3mjmc2gla709y")))))) --=20 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0017-gnu-Add-ghc-clock-0.7.2.patch >From d9e4b5885f6c42c8caec593bfe9ac9f69e4e1a9d Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:53:33 -0800 Subject: [PATCH 17/22] gnu: Add ghc-clock@0.7.2. * gnu/packages/purescript.scm (ghc-clock-0.7.2): New variable. --- gnu/packages/purescript.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index ba90f9c23b..d430e62fcd 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -42,3 +42,18 @@ (sha256 (base32 "138xpxdb7x62lpmgmb6b3v3vgdqqvqn4273jaap3mjmc2gla709y")))))) + +(define ghc-clock-0.7.2 + (package + (inherit ghc-clock) + (version "0.7.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/" + "clock/" + "clock-" version ".tar.gz")) + (sha256 + (base32 + "07v91s20halsqjmziqb1sqjp2sjpckl9by7y28aaklwqi2bh2rl8")))))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0018-gnu-Add-ghc-glob-0.9.3.patch >From de4fd8982ee44f449bd76635ce54371478309095 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:54:12 -0800 Subject: [PATCH 18/22] gnu: Add ghc-glob@0.9.3. * gnu/packages/purescript.scm (ghc-glob-0.9.3): New variable. --- gnu/packages/purescript.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index d430e62fcd..8bfbf5411d 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -57,3 +57,17 @@ (sha256 (base32 "07v91s20halsqjmziqb1sqjp2sjpckl9by7y28aaklwqi2bh2rl8")))))) + +(define ghc-glob-0.9.3 + (package + (inherit ghc-glob) + (version "0.9.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "Glob-" version "/" + "Glob-" version ".tar.gz")) + (sha256 + (base32 + "1s69lk3ic6zlkikhvb78ly9wl3g70a1h1m6ndhsca01pp8z8axrs")))))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0019-gnu-Add-ghc-ansi-terminal-0.8.2.patch >From 77b30a8446b5c3cb66a247a53f1c91d636c2501f Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:54:51 -0800 Subject: [PATCH 19/22] gnu: Add ghc-ansi-terminal@0.8.2. * gnu/packages/purescript.scm (ghc-ansi-terminal-0.8.2): New variable. --- gnu/packages/purescript.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index 8bfbf5411d..30abc05c2e 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -71,3 +71,18 @@ (sha256 (base32 "1s69lk3ic6zlkikhvb78ly9wl3g70a1h1m6ndhsca01pp8z8axrs")))))) + +(define ghc-ansi-terminal-0.8.2 + (package + (inherit ghc-ansi-terminal) + (version "0.8.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/ansi-terminal/ansi-terminal-" + version + ".tar.gz")) + (sha256 + (base32 + "147ss9wz03ww6ypbv6yh5vi1wfrfcaqm8r6nxh50vnp7254359wh")))))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0020-gnu-Add-ghc-lifted-async-0.10.0.4.patch >From f9320e9085af68790928ef688e799730651cdb3f Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:55:24 -0800 Subject: [PATCH 20/22] gnu: Add ghc-lifted-async@0.10.0.4 * gnu/packages/purescript.scm (ghc-lifted-async-0.10.0.4): New variable. --- gnu/packages/purescript.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index 30abc05c2e..10e69151df 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -86,3 +86,18 @@ (sha256 (base32 "147ss9wz03ww6ypbv6yh5vi1wfrfcaqm8r6nxh50vnp7254359wh")))))) + +(define ghc-lifted-async-0.10.0.4 + (package + (inherit ghc-lifted-async) + (version "0.10.0.4") + (source + (origin + (inherit (package-source ghc-lifted-async)) + (uri (string-append + "mirror://hackage/package/lifted-async/lifted-async-" + version + ".tar.gz")) + (sha256 + (base32 + "0cwl1d0wjpdk0v1l1qxiqiksmak950c8gx169c1q77cg0z18ijf9")))))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0021-gnu-Add-ghc-network-3.0.1.1.patch >From dee0bc412c9da37eda1224eccbf3bedbb1bba1dc Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 08:56:13 -0800 Subject: [PATCH 21/22] gnu: Add ghc-network@3.0.1.1 * gnu/packages/purescript.scm (ghc-network-3.0.1.1): New variable. --- gnu/packages/purescript.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index 10e69151df..8936e1bb87 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -101,3 +101,18 @@ (sha256 (base32 "0cwl1d0wjpdk0v1l1qxiqiksmak950c8gx169c1q77cg0z18ijf9")))))) + +(define ghc-network-3.0.1.1 + (package + (inherit ghc-network) + (version "3.0.1.1") + (source + (origin + (inherit (package-source ghc-network)) + (uri (string-append + "mirror://hackage/package/network/network-" + version + ".tar.gz")) + (sha256 + (base32 + "1xacvl5wf47cz61igb94zf961b9ks0yhr02myxgjf53clm70dg6j")))))) -- 2.26.0 --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0022-gnu-Add-purescript.patch >From 842a0b9c45e2a3c126c8636ce8f126392775b099 Mon Sep 17 00:00:00 2001 From: John Soo Date: Fri, 13 Dec 2019 09:21:50 -0800 Subject: [PATCH 22/22] gnu: Add purescript. * gnu/packages/purescript.scm (purescript): New variable. --- gnu/packages/purescript.scm | 89 +++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) diff --git a/gnu/packages/purescript.scm b/gnu/packages/purescript.scm index 8936e1bb87..7b60aae097 100644 --- a/gnu/packages/purescript.scm +++ b/gnu/packages/purescript.scm @@ -116,3 +116,92 @@ (sha256 (base32 "1xacvl5wf47cz61igb94zf961b9ks0yhr02myxgjf53clm70dg6j")))))) + +(define-public purescript + (package + (name "purescript") + (version "0.13.5") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://hackage/package/purescript/purescript-" + version + ".tar.gz")) + (sha256 + (base32 + "0plqzlcfaw2ik2im7aq8yy1b1y88cnc8qd7wwaayndbdz060s9j4")))) + (build-system haskell-build-system) + (inputs + `(("ghc-glob" ,ghc-glob-0.9.3) + ("ghc-aeson" ,ghc-aeson) + ("ghc-aeson-better-errors" ,ghc-aeson-better-errors) + ("ghc-aeson-pretty" ,ghc-aeson-pretty) + ("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8.2) + ("ghc-base-compat" ,ghc-base-compat) + ("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-bower-json" ,ghc-bower-json) + ("ghc-boxes" ,ghc-boxes) + ("ghc-cheapskate" ,ghc-cheapskate) + ("ghc-clock" ,ghc-clock-0.7.2) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-data-ordlist" ,ghc-data-ordlist) + ("ghc-dlist" ,ghc-dlist) + ("ghc-edit-distance" ,ghc-edit-distance) + ("ghc-file-embed" ,ghc-file-embed) + ("ghc-fsnotify" ,ghc-fsnotify) + ("ghc-happy" ,ghc-happy) + ("ghc-language-javascript" ,ghc-language-javascript) + ("ghc-lifted-async" ,ghc-lifted-async-0.10.0.4) + ("ghc-lifted-base" ,ghc-lifted-base) + ("ghc-memory" ,ghc-memory) + ("ghc-microlens-platform" ,ghc-microlens-platform) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-monad-logger" ,ghc-monad-logger) + ("ghc-network" ,ghc-network-3.0.1.1) + ("ghc-parallel" ,ghc-parallel) + ("ghc-pattern-arrows" ,ghc-pattern-arrows) + ("ghc-protolude" ,ghc-protolude) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-safe" ,ghc-safe) + ("ghc-scientific" ,ghc-scientific) + ("ghc-semialign" ,ghc-semialign) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-sourcemap" ,ghc-sourcemap) + ("ghc-split" ,ghc-split) + ("ghc-stringsearch" ,ghc-stringsearch) + ("ghc-syb" ,ghc-syb) + ("ghc-these" ,ghc-these) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-vector" ,ghc-vector) + ("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint) + ("ghc-http-types" ,ghc-http-types) + ("ghc-network" ,ghc-network) + ("ghc-optparse-applicative" ,ghc-optparse-applicative) + ("ghc-wai" ,ghc-wai) + ("ghc-wai-websockets" ,ghc-wai-websockets) + ("ghc-warp" ,ghc-warp) + ("ghc-websockets" ,ghc-websockets) + ("ghc-gitrev" ,ghc-gitrev))) + (native-inputs + `(("ghc-happy" ,ghc-happy-1.19.9) + ("ghc-hunit" ,ghc-hunit) + ("ghc-hspec" ,ghc-hspec) + ("hspec-discover" ,hspec-discover) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hspec" ,ghc-tasty-hspec))) + (arguments + `(;; Tests require npm + #:tests? #f + ;; Haddock fails + #:haddock? #f + #:configure-flags '("--flags=release"))) + (home-page "http://www.purescript.org/") + (synopsis "Haskell inspired programming language compiling to JavaScript") + (description + "A small strongly, statically typed programming language with +expressive types, inspired by Haskell and compiling to JavaScript.") + (license license:bsd-3))) -- 2.26.0 --=-=-=--