diff options
Diffstat (limited to 'gnu/packages/haskell.scm')
-rw-r--r-- | gnu/packages/haskell.scm | 1028 |
1 files changed, 1009 insertions, 19 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 87628b559d..3bd3e1476d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -3032,7 +3033,7 @@ variety of traversals.") (define-public ghc-fgl (package (name "ghc-fgl") - (version "5.5.1.0") + (version "5.5.3.0") (outputs '("out" "doc")) (source (origin @@ -3043,9 +3044,12 @@ variety of traversals.") ".tar.gz")) (sha256 (base32 - "0rcmz0xlyr1wj490ffja29z1jgl51gz19ka609da6bx39bwx7nga")))) + "0fbyb6jxy9whgrv6dgnkzz70cmy98arx3q2gnkhgl4a3d7idh36p")))) (build-system haskell-build-system) - (inputs `(("ghc-mtl" ,ghc-mtl))) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-hspec" ,ghc-hspec) + ("ghc-quickcheck" ,ghc-quickcheck))) (home-page "http://web.engr.oregonstate.edu/~erwig/fgl/haskell") (synopsis "Martin Erwig's Functional Graph Library") @@ -4287,7 +4291,7 @@ indexed variants.") (define-public ghc-tagsoup (package (name "ghc-tagsoup") - (version "0.13.3") + (version "0.14") (source (origin (method url-fetch) @@ -4297,7 +4301,7 @@ indexed variants.") ".tar.gz")) (sha256 (base32 - "13b6zy6346r3cxhaivys84fnxarg8wbv7r2znazfjdkqil8n5a1j")))) + "07pax7i0bl79dmqqz58zy09yrgpnyyr2ya0z183hv96kp65jv0lh")))) (build-system haskell-build-system) (inputs `(("ghc-text" ,ghc-text))) (home-page @@ -5112,7 +5116,7 @@ providing an 'rnf' implementation.") (define-public ghc-pandoc-types (package (name "ghc-pandoc-types") - (version "1.12.4.7") + (version "1.16.1.1") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5120,7 +5124,7 @@ providing an 'rnf' implementation.") version ".tar.gz")) (sha256 (base32 - "108n11kbdaj2ii3cyf0xczhsx90p1gjbxwqp1f0wyn2m3cls632n")))) + "094mzgdxva84kcpjf9m8b5n3chm1wm44bzflh5x6xhddz6pb7zpq")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) @@ -5137,14 +5141,14 @@ building up, manipulating and serialising @code{Pandoc} structures.") (define-public ghc-texmath (package (name "ghc-texmath") - (version "0.8.4") + (version "0.8.6.5") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "texmath/texmath-" version ".tar.gz")) (sha256 (base32 - "15821jg64fbr4rwaglp5ksah6q8qqz1vkjxlqp6d3bbb1rj8v2ri")))) + "143c8k7dyhwa9blpa8svy23ybx7i4xzb9jnfcimj8iigizbw7y1k")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) @@ -5212,7 +5216,7 @@ and utilities for pretty printing.") (define-public ghc-highlighting-kate (package (name "ghc-highlighting-kate") - (version "0.6") + (version "0.6.3") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5220,7 +5224,7 @@ and utilities for pretty printing.") version ".tar.gz")) (sha256 (base32 - "16334fbiyq6017zbgc59qc00h0bk24xh4dcrbqx63dvf72ac37dk")))) + "03c4flh4h1jd48bx0qmplax3q8w6wj1dhbh6j0xhaf5h95fbinki")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-diff" ,ghc-diff) @@ -5244,14 +5248,14 @@ descriptions.") (define-public ghc-cmark (package (name "ghc-cmark") - (version "0.4.1") + (version "0.5.3.1") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "cmark/cmark-" version ".tar.gz")) (sha256 (base32 - "0c134qh65viaq4q6pv7bnnr5wchzivg94nv0dj8pc1326sx0dw12")))) + "09515h9b26az9c2mbl6l7azimaixa6yff8w359k0ml8jwykjvqaa")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-text" ,ghc-text))) @@ -5979,7 +5983,7 @@ tasty.") (define-public ghc-cryptonite (package (name "ghc-cryptonite") - (version "0.9") + (version "0.19") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5987,7 +5991,7 @@ tasty.") version ".tar.gz")) (sha256 (base32 - "1h22x22lq2m8h456v5j50xm0l25bcm3h1pchsk83br909hjxql4z")))) + "1rw5k34vpn4134yrzdhf0rsshsrkixfbv9ap18di2n00z2cw1shw")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-memory" ,ghc-memory) @@ -6149,14 +6153,14 @@ for X.509 certificates.") (define-public ghc-tls (package (name "ghc-tls") - (version "1.3.3") + (version "1.3.8") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "tls/tls-" version ".tar.gz")) (sha256 (base32 - "096ay54bwy6qi9z8ypncww3ls853zj37yaficvcg7qcqj42zn0wz")))) + "1rdidf18i781c0vdvy9yn79yh08hmcacf6fp3sgghyiy3h0wyh5l")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-mtl" ,ghc-mtl) @@ -6276,7 +6280,7 @@ libraries, such as http-conduit.") (define-public ghc-pandoc (package (name "ghc-pandoc") - (version "1.15.2.1") + (version "1.17.2") (source (origin (method url-fetch) @@ -6284,7 +6288,7 @@ libraries, such as http-conduit.") version ".tar.gz")) (sha256 (base32 - "0nfzwsdvrvg9zypgyqk0246p10yzlpqsqnkds8yraqybbvkb1g30")))) + "1v78zq12p71gq0pc24h08inxcq5gxd0xb7m5ds0xw9pv9l2pswl1")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) @@ -6432,4 +6436,990 @@ can be specified precisely in the type. The language is closely related to Epigram and Agda.") (license license:bsd-3))) +(define-public ghc-base16-bytestring + (package + (name "ghc-base16-bytestring") + (version "0.1.1.6") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/base16-bytestring/" + "base16-bytestring-" version ".tar.gz")) + (sha256 + (base32 + "0jf40m3yijqw6wd1rwwvviww46fasphaay9m9rgqyhf5aahnbzjs")))) + (build-system haskell-build-system) + (home-page "http://github.com/bos/base16-bytestring") + (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings") + (description + "This package provides a Haskell library for working with base16-encoded +data quickly and efficiently, using the ByteString type.") + (license license:bsd-3))) + +(define-public ghc-binary + (package + (name "ghc-binary") + (version "0.8.4.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/binary/binary-" + version ".tar.gz")) + (sha256 + (base32 + "1fp7wxnf57cjzhbb7rgqs6fgws4690zh0dxgl924dj4nzq0cf4wd")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/kolmodin/binary") + (synopsis + "Binary serialisation for Haskell values using lazy ByteStrings") + (description + "Efficient, pure binary serialisation using lazy ByteStrings. Haskell values +may be encoded to and from binary formats, written to disk as binary, or sent over +the network. The format used can be automatically generated, or you can choose to +implement a custom format if needed. Serialisation speeds of over 1 G\\/sec have +been observed, so this library should be suitable for high performance scenarios.") + (license license:bsd-3))) + +(define-public ghc-cryptohash + (package + (name "ghc-cryptohash") + (version "0.11.9") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/cryptohash/cryptohash-" + version ".tar.gz")) + (sha256 + (base32 + "1yr2iyb779znj79j3fq4ky8l1y8a600a2x1fx9p5pmpwq5zq93y2")))) + (build-system haskell-build-system) + (inputs + `(("ghc-byteable" ,ghc-byteable) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-memory" ,ghc-memory) + ("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "http://github.com/vincenthz/hs-cryptohash") + (synopsis "Collection of cryptographic hashes in Haskell") + (description + "A collection of crypto hashes, with a practical incremental and one-pass, +pure APIs, with performance close to the fastest implementations available in +other languages. The implementations are made in C with a haskell FFI wrapper +that hides the C implementation.") + (license license:bsd-3))) + +(define-public ghc-data-ordlist + (package + (name "ghc-data-ordlist") + (version "0.4.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/data-ordlist/data-ordlist-" + version ".tar.gz")) + (sha256 + (base32 + "03a9ix1fcx08viwv2jg5ndw1qbkydyyrmjvqr9wasmcik9x1wv3g")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/data-ordlist") + (synopsis "Set and bag operations on ordered lists") + (description + "This module provides set and multiset operations on ordered lists.") + (license license:bsd-3))) + +(define-public ghc-haskeline + (package + (name "ghc-haskeline") + (version "0.7.2.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/haskeline/haskeline-" + version ".tar.gz")) + (sha256 + (base32 + "09wd6sxgn65xxpk7dhy1cg3ywlbk0ccqq7xylycwk4zazy3gjgkd")))) + (build-system haskell-build-system) + (inputs + `(("ncurses" ,ncurses))) + (arguments + `(#:configure-flags (list "-fterminfo"))) + (home-page "https://github.com/judah/haskeline") + (synopsis "Command-line interface for user input") + (description + "Haskeline provides a user interface for line input in command-line +programs. This library is similar in purpose to readline, but since it +is written in Haskell it is (hopefully) more easily used in other Haskell +programs.") + (license license:bsd-3))) + +(define-public ghc-regex-applicative + (package + (name "ghc-regex-applicative") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-applicative/" + "regex-applicative-" version ".tar.gz")) + (sha256 + (base32 + "1riv7jqf26lbv4rm54sd6mrx8xdh4dvh4xbzymzdfdw13k6a4nb6")))) + (build-system haskell-build-system) + (inputs + `(("ghc-smallcheck" ,ghc-smallcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-smallcheck" ,ghc-tasty-smallcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "https://github.com/feuerbach/regex-applicative") + (synopsis "Regex-based parsing with applicative interface") + (description + "@code{regex-applicative} is a Haskell library for parsing using +regular expressions. Parsers can be built using Applicative interface.") + (license license:expat))) + +(define-public ghc-regex-tdfa + (package + (name "ghc-regex-tdfa") + (version "1.2.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-tdfa/regex-tdfa-" + version ".tar.gz")) + (sha256 + (base32 + "0f8x8wyr6m21g8dnxvnvalz5bsq37l125l6qhs0fscbvprsxc4nb")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-parsec" ,ghc-parsec) + ("ghc-regex-base" ,ghc-regex-base))) + (home-page "https://github.com/ChrisKuklewicz/regex-tdfa") + (synopsis "POSIX extended regular expressions in Haskell.") + (description + "Regex-tdfa is a pure Haskell regular expression library implementing POSIX +extended regular expressions. It is a \"tagged\" DFA regex engine. It is +inspired by libtre.") + (license license:bsd-3))) + +(define-public ghc-regex-compat-tdfa + (package + (name "ghc-regex-compat-tdfa") + (version "0.95.1.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-compat-tdfa/regex-compat-tdfa-" + version ".tar.gz")) + (sha256 + (base32 + "1p90fn90yhp7fvljjdqjp41cszidcfz4pw7fwvzyx4739b98x8sg")))) + (build-system haskell-build-system) + (inputs + `(("ghc-regex-base" ,ghc-regex-base) + ("ghc-regex-tdfa" ,ghc-regex-tdfa))) + (home-page "http://hub.darcs.net/shelarcy/regex-compat-tdfa") + (synopsis "Unicode Support version of Text.Regex, using regex-tdfa") + (description + "One module layer over @code{regex-tdfa} to replace @code{Text.Regex}. +@code{regex-compat} can't use Unicode characters correctly because of using regex-posix. +This is not good for Unicode users. This modified regex-compat uses regex-tdfa to solve +this problem.") + (license license:bsd-3))) + +(define-public ghc-tasty-th + (package + (name "ghc-tasty-th") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/tasty-th/tasty-th-" + version ".tar.gz")) + (sha256 + (base32 + "0dff9si8i1qp0s7p4hlk0l29vq7wxfglw6mvlgmld43h7rllv88q")))) + (build-system haskell-build-system) + (inputs + `(("ghc-tasty" ,ghc-tasty))) + (home-page "http://github.com/bennofs/tasty-th") + (synopsis "Automatically generate tasty TestTrees") + (description + "Tasty-th automatically generates tasty TestTrees from functions of the +current module, using TemplateHaskell. This is a fork the original +test-framework-th package, modified to work with tasty instead of +test-framework.") + (license license:bsd-3))) + +(define-public ghc-sandi + (package + (name "ghc-sandi") + (version "0.4.0") ; darcs-2.12.4 needs == 0.4.* + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/sandi/sandi-" + version ".tar.gz")) + (sha256 + (base32 + "1smf3bq44qni4zbgxpw7cy7b9g95fbrr73j8njjf6139naj9bj20")))) + (build-system haskell-build-system) + (inputs + `(("ghc-stringsearch" ,ghc-stringsearch) + ("ghc-conduit" ,ghc-conduit) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-hunit" ,ghc-hunit) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-th" ,ghc-tasty-th))) + (home-page "http://hackage.haskell.org/package/sandi") + (synopsis "Data encoding library") + (description "Reasonably fast data encoding library.") + (license license:bsd-3))) + +(define-public ghc-bytestring-handle + (package + (name "ghc-bytestring-handle") + (version "0.1.0.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/bytestring-handle/bytestring-handle-" + version ".tar.gz")) + (sha256 + (base32 + "0q5yzx90ad9w7qvaix05bynxwlsbqjrgfc4hqb355ibf991wd0rh")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework" ,ghc-test-framework))) + (home-page "http://hub.darcs.net/ganesh/bytestring-handle") + (synopsis "ByteString-backed Handles") + (description "ByteString-backed Handles") ; There is no description + (license license:bsd-3))) + +(define-public ghc-tar + (package + (name "ghc-tar") + (version "0.5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/tar/tar-" + version ".tar.gz")) + (sha256 + (base32 + "18qq94j9bm91iswnxq2dm5dws5c7wm4k01q2rpf8py35cf3svnfq")))) + (build-system haskell-build-system) + (inputs + `(("ghc-bytestring-handle" ,ghc-bytestring-handle) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-array" ,ghc-array))) + (home-page "http://hackage.haskell.org/package/tar") + (synopsis "Reading, writing and manipulating \".tar\" archive files") + (description + "This library is for working with \\\"@.tar@\\\" archive files. +It can read and write a range of common variations of the tar archive format +including V7, POSIX USTAR and GNU formats. It provides support for packing and +unpacking portable archives. This makes it suitable for distribution but not +backup because details like file ownership and exact permissions are not +preserved. It also provides features for random access to archive content using +an index.") + (license license:bsd-3))) + +(define-public ghc-transformers + (package + (name "ghc-transformers") + (version "0.5.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/transformers/transformers-" + version ".tar.gz")) + (sha256 + (base32 + "1qkhi8ssf8c4jnmrw9dzym3igqbzq7h48iisaykdfzdsm09qfh3c")))) + (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. This package contains the monad transformer class and IO monad class, +concrete functor and monad transformers, each with associated operations and functions +to lift operations associated with other transformers. The package can be used on +its own in portable Haskell code, in which case operations need to be manually lifted +through transformer stacks. Alternatively, it can be used with the +non-portable monad classes in the @code{mtl} or @code{monads-tf} packages, +which automatically lift operations introduced by monad transformers through +other transformers.") + (license license:bsd-3))) + +;; darcs-2.12.0 requires transformers-0.4.2.0 +(define-public ghc-transformers-0.4.2.0 + (package + (inherit ghc-transformers) + (version "0.4.2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/transformers/" + "transformers-" version ".tar.gz")) + (sha256 + (base32 + "0a364zfcm17mhpy0c4ms2j88sys4yvgd6071qsgk93la2wjm8mkr")))))) + +(define-public ghc-findbin + (package + (name "ghc-findbin") + (version "0.0.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/FindBin/FindBin-" + version ".tar.gz")) + (sha256 + (base32 + "197xvn05yysmibm1p5wzxfa256lvpbknr5d1l2ws6g40w1kpk717")))) + (build-system haskell-build-system) + (home-page "https://github.com/audreyt/findbin") + (synopsis "Get the absolute path of the running program") + (description + "This module locates the full directory of the running program, to allow +the use of paths relative to it. FindBin supports invocation of Haskell +programs via \"ghci\", via \"runhaskell/runghc\", as well as compiled as +an executable.") + (license license:bsd-3))) + +(define-public ghc-patience + (package + (name "ghc-patience") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/patience/patience-" + version ".tar.gz")) + (sha256 + (base32 + "0qyv20gqy9pb1acy700ahv70lc6vprcwb26cc7fcpcs4scsc7irm")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/patience") + (synopsis "Patience diff and longest increasing subsequence") + (description + "This library implements the 'patience diff' algorithm, as well as the +patience algorithm for the longest increasing subsequence problem. +Patience diff computes the difference between two lists, for example the lines +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-monads-tf + (package + (name "ghc-monads-tf") + (version "0.1.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/monads-tf/monads-tf-" + version ".tar.gz")) + (sha256 + (base32 + "1wdhskwa6dw8qljbvwpyxj8ca6y95q2np7z4y4q6bpf4anmd5794")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/monads-tf") + (synopsis "Monad classes, using type families") + (description + "Monad classes using type families, with instances for various monad transformers, +inspired by the paper 'Functional Programming with Overloading and Higher-Order +Polymorphism', by Mark P Jones. This package is almost a compatible replacement for +the @code{mtl-tf} package.") + (license license:bsd-3))) + +(define-public ghc-bytestring + (package + (name "ghc-bytestring") + (version "0.10.8.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/bytestring/bytestring-" + version ".tar.gz")) + (sha256 + (base32 + "16zwb1p83z7vc5wlhvknpy80b5a2jxc5awx67rk52qnp9idmyq9d")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-hunit" ,ghc-hunit) + ("ghc-byteorder" ,ghc-byteorder) + ("ghc-dlist" ,ghc-dlist) + ("ghc-mtl" ,ghc-mtl))) + (arguments + `(#:tests? #f)) ; Test number two becomes non-responsive for 20+ minutes + (home-page "https://github.com/haskell/bytestring") + (synopsis "Fast, compact, strict and lazy byte strings with a list interface") + (description + "An efficient compact, immutable byte string type (both strict and lazy) +suitable for binary or 8-bit character data. The 'ByteString' type represents +sequences of bytes or 8-bit characters. It is suitable for high performance use, +both in terms of large data quantities, or high speed requirements. The 'ByteString' +functions follow the same style as ordinary lists, so it is easy to convert code +from using 'String' to 'ByteString'.") + (license license:bsd-3))) + +(define-public ghc-colour +(package + (name "ghc-colour") + (version "2.3.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/colour/colour-" + version ".tar.gz")) + (sha256 + (base32 + "1qmn1778xzg07jg9nx4k1spdz2llivpblf6wwrps1qpqjhsac5cd")))) + (build-system haskell-build-system) + (home-page "http://www.haskell.org/haskellwiki/Colour") + (synopsis "Model for human colour perception") + (description + "This package provides a data type for colours and transparency. +Colours can be blended and composed. Various colour spaces are +supported. A module of colour names (\"Data.Colour.Names\") is provided.") + (license license:expat))) + +(define-public ghc-directory + (package + (name "ghc-directory") + (version "1.2.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/directory/directory-" + version ".tar.gz")) + (sha256 + (base32 + "0h3hrqskadmbigaxbz2k5xxjjjlmfaq2zdn2g7jh1wv9k6yrxraa")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/directory") + (synopsis "Platform-agnostic library for filesystem operations") + (description + "This library provides a basic set of operations for manipulating +files and directories in a portable way.") + (license license:bsd-3))) + +(define-public ghc-process + (package + (name "ghc-process") + (version "1.4.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/process/process-" + version ".tar.gz")) + (sha256 + (base32 + "1v1bav5isqxq9fc4lw714x94qbfsjbm2nn12kjp69r1ql8jaaaqw")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/process") + (synopsis "System process libraries") + (description + "This package contains libraries for dealing with system processes.") + (license license:bsd-3))) + +(define-public ghc-wl-pprint-text + (package + (name "ghc-wl-pprint-text") + (version "1.1.0.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/wl-pprint-text/wl-pprint-text-" + version ".tar.gz")) + (sha256 + (base32 + "1xgizzimfw17mpmw2afvmnvyag976j8ggn7k5r564rkw9f0m6bgz")))) + (build-system haskell-build-system) + (inputs + `(("ghc-text" ,ghc-text))) + (home-page "http://hackage.haskell.org/package/wl-pprint-text") + (synopsis "Wadler/Leijen Pretty Printer for Text values") + (description + "A clone of wl-pprint for use with the text library.") + (license license:bsd-3))) + +(define-public ghc-fgl-arbitrary + (package + (name "ghc-fgl-arbitrary") + (version "0.2.0.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/fgl-arbitrary/fgl-arbitrary-" + version ".tar.gz")) + (sha256 + (base32 + "12qbsla4vivffris6y3gj29vrafkpyazqdbdy2m55nggypqpf7ah")))) + (build-system haskell-build-system) + (inputs + `(("ghc-fgl" ,ghc-fgl) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hspec" ,ghc-hspec))) + (home-page "http://hackage.haskell.org/package/fgl-arbitrary") + (synopsis "QuickCheck support for fgl") + (description + "Provides Arbitrary instances for fgl graphs to avoid adding a +QuickCheck dependency for fgl whilst still making the instances +available to others. Also available are non-fgl-specific functions +for generating graph-like data structures.") + (license license:bsd-3))) + +(define-public ghc-graphviz + (package + (name "ghc-graphviz") + (version "2999.18.1.2") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "graphviz/graphviz-" version ".tar.gz")) + (sha256 + (base32 + "1z453is01v0rnxlv6xx4iyaqv5vrp3bpz829mpv1a341sck2135h")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-colour" ,ghc-colour) + ("ghc-dlist" ,ghc-dlist) + ("ghc-fgl" ,ghc-fgl) + ("ghc-fgl-arbitrary" ,ghc-fgl-arbitrary) + ("ghc-polyparse" ,ghc-polyparse) + ("ghc-temporary" ,ghc-temporary) + ("ghc-text" ,ghc-text) + ("ghc-wl-pprint-text" ,ghc-wl-pprint-text))) + (home-page "https://hackage.haskell.org/package/graphviz") + (synopsis "Bindings to Graphviz for graph visualisation") + (description + "This library provides bindings for the Dot language used by +the @uref{http://graphviz.org/, Graphviz} suite of programs for +visualising graphs, as well as functions to call those programs. +Main features of the graphviz library include: + +@enumerate +@item Almost complete coverage of all Graphviz attributes and syntax +@item Support for specifying clusters +@item The ability to use a custom node type +@item Functions for running a Graphviz layout tool with all specified output types +@item Generate and parse Dot code with two options: strict and liberal +@item Functions to convert FGL graphs and other graph-like data structures +@item Round-trip support for passing an FGL graph through Graphviz to augment node +and edge labels with positional information, etc. +@end enumerate\n") + (license license:bsd-3))) + +(define-public ghc-array + (package + (name "ghc-array") + (version "0.5.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/array/array-" + version ".tar.gz")) + (sha256 + (base32 + "08r2rq4blvc737mrg3xhlwiw13jmsz5dlf2fd0ghb9cdaxc6kjc9")))) + (build-system haskell-build-system) + (home-page + "http://hackage.haskell.org/package/array") + (synopsis "Mutable and immutable arrays") + (description + "In addition to providing the @code{Data.Array} module, this package also defines +the classes @code{IArray} of immutable arrays and @code{MArray} of arrays mutable +within appropriate monads, as well as some instances of these classes.") + (license license:bsd-3))) + +(define-public ghc-constraints + (package + (name "ghc-constraints") + (version "0.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/constraints/constraints-" + version ".tar.gz")) + (sha256 + (base32 + "120mmv9rwbahslisc1z8zx9lw7v6hl5fzid4l0hiy5as6ijqgl2c")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hashable" ,ghc-hashable) + ("ghc-mtl" ,ghc-mtl) + ("ghc-transformers-compat" ,ghc-transformers-compat))) + (home-page "http://github.com/ekmett/constraints/") + (synopsis "Constraint manipulation") + (description + "GHC 7.4 gave us the ability to talk about @code{ConstraintKinds}. +They stopped crashing the compiler in GHC 7.6. This package provides +a vocabulary for working with them.") + (license license:bsd-3))) + +(define-public ghc-lifted-async + (package + (name "ghc-lifted-async") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/lifted-async/lifted-async-" + version ".tar.gz")) + (sha256 + (base32 + "00fnwfcnc6niq9jbbb9rap9rkdgv5qhcglwanzc5fi8834j94c1r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-lifted-base" ,ghc-lifted-base) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-constraints" ,ghc-constraints) + ("ghc-hunit" ,ghc-hunit) + ("ghc-mtl" ,ghc-mtl) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-th" ,ghc-tasty-th))) + (home-page "https://github.com/maoe/lifted-async") + (synopsis "Run lifted IO operations asynchronously and wait for their results") + (description + "This package provides IO operations from @code{async} package lifted to any +instance of @code{MonadBase} or @code{MonadBaseControl}.") + (license license:bsd-3))) + +;; Ghc-shelly depends on ghc-system-filepath and ghc-system-fileio, who in turn depend on +;; ghc-chell and ghc-chell-quickcheck for the test phase. Ghc-chell depends on ghc-options +;; which depends on ghc-chell and ghc-chell-quickcheck. +;; Therefore we bootstrap it with tests disabled. +(define ghc-system-filepath-bootstrap + (package + (name "ghc-system-filepath-bootstrap") + (version "0.4.13.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-filepath/system-filepath-" + version ".tar.gz")) + (sha256 + (base32 + "1yy5zsmmimhg6iaw9fmpwrxvxrgi5s6bfyqfihdsnx4bjvn7sp9l")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-text" ,ghc-text) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "High-level, byte-based file and directory path manipulations") + (description + "Provides a FilePath datatype and utility functions for operating on it. +Unlike the filepath package, this package does not simply reuse String, +increasing type safety.") + (license license:expat))) + +;; See ghc-system-filepath-bootstrap. In addition this package depends on +;; ghc-system-filepath. +(define ghc-system-fileio-bootstrap + (package + (name "ghc-system-fileio-bootstrap") + (version "0.3.16.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-fileio/system-fileio-" + version ".tar.gz")) + (sha256 + (base32 + "1484hcl27s2qcby8ws5djj11q9bz68bspcifz9h5gii2ndy70x9i")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-system-filepath-bootstrap" ,ghc-system-filepath-bootstrap) + ("ghc-text" ,ghc-text) + ("ghc-temporary" ,ghc-temporary))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "Consistent filesystem interaction across GHC versions") + (description + "This is a small wrapper around the directory, unix, and Win32 packages, +for use with system-filepath. It provides a consistent API to the various +versions of these packages distributed with different versions of GHC. +In particular, this library supports working with POSIX files that have paths +which can't be decoded in the current locale encoding.") + (license license:expat))) + +(define-public ghc-shelly + (package + (name "ghc-shelly") + (version "1.6.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/shelly/shelly-" + version ".tar.gz")) + (sha256 + (base32 + "0bg1pj5bhswfgwfgz66xr82i8cmjgrnx5ljvjy37052zxb82imnk")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-system-filepath-bootstrap" ,ghc-system-filepath-bootstrap) + ("ghc-system-fileio-bootstrap" ,ghc-system-fileio-bootstrap) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-lifted-base" ,ghc-lifted-base) + ("ghc-lifted-async" ,ghc-lifted-async) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-enclosed-exceptions" ,ghc-enclosed-exceptions) + ("ghc-text" ,ghc-text) + ("ghc-async" ,ghc-async) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-hunit" ,ghc-hunit) + ("ghc-hspec" ,ghc-hspec))) + (home-page "https://github.com/yesodweb/Shelly.hs") + (synopsis "Shell-like (systems) programming in Haskell") + (description + "Shelly provides convenient systems programming in Haskell, similar in +spirit to POSIX shells. Shelly is originally forked from the Shellish package.") + (license license:bsd-3))) + +;; See ghc-system-filepath-bootstrap, chell and chell-quickcheck are required for tests. +(define ghc-options-bootstrap + (package + (name "ghc-options-bootstrap") + (version "1.2.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/options/options-" + version ".tar.gz")) + (sha256 + (base32 + "0qjs0v1ny52w51n5582d4z8wy9h6n0zw1xb5dh686ff5wadflgi8")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-monads-tf" ,ghc-monads-tf))) + (home-page "https://john-millikin.com/software/haskell-options/") + (synopsis "Powerful and easy-to-use command-line option parser") + (description + "The @code{options} package lets library and application developers +easily work with command-line options.") + (license license:expat))) + +(define-public ghc-chell + (package + (name "ghc-chell") + (version "0.4.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell/chell-" + version ".tar.gz")) + (sha256 + (base32 + "0lb95abzxl4a87nfqxsxpb3a39pd52cci43hcvj8615hyhqvs2jz")))) + (build-system haskell-build-system) + (inputs + `(("ghc-options-bootstrap" ,ghc-options-bootstrap) + ("ghc-patience" ,ghc-patience) + ("ghc-random" ,ghc-random) + ("ghc-text" ,ghc-text) + ("ghc-ansi-terminal" ,ghc-ansi-terminal))) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "Simple and intuitive library for automated testing") + (description + "Chell is a simple and intuitive library for automated testing. +It natively supports assertion-based testing, and can use companion +libraries such as @code{chell-quickcheck} to support more complex +testing strategies.") + (license license:expat))) + +(define ghc-chell-quickcheck-bootstrap + (package + (name "ghc-chell-quickcheck-bootstrap") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell-quickcheck/chell-quickcheck-" + version ".tar.gz")) + (sha256 + (base32 + "02bkcnx5k6r5csdnnkvk4wfd0l36nxb87i1463ynw17n7ym9s4cs")))) + (build-system haskell-build-system) + (inputs + `(("ghc-chell" ,ghc-chell) + ("ghc-random" ,ghc-random) + ("ghc-quickcheck" ,ghc-quickcheck))) + (arguments + `(#:tests? #f)) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "QuickCheck support for the Chell testing library") + (description "More complex tests for @code{chell}.") + (license license:expat))) + +(define-public ghc-chell-quickcheck + (package + (name "ghc-chell-quickcheck") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell-quickcheck/chell-quickcheck-" + version ".tar.gz")) + (sha256 + (base32 + "02bkcnx5k6r5csdnnkvk4wfd0l36nxb87i1463ynw17n7ym9s4cs")))) + (build-system haskell-build-system) + (inputs + `(("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck-bootstrap" ,ghc-chell-quickcheck-bootstrap) + ("ghc-random" ,ghc-random) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "QuickCheck support for the Chell testing library") + (description "More complex tests for @code{chell}.") + (license license:expat))) + +(define-public ghc-options + (package + (name "ghc-options") + (version "1.2.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/options/options-" + version ".tar.gz")) + (sha256 + (base32 + "0qjs0v1ny52w51n5582d4z8wy9h6n0zw1xb5dh686ff5wadflgi8")))) + (build-system haskell-build-system) + (inputs + `(("ghc-monads-tf" ,ghc-monads-tf) + ("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck" ,ghc-chell-quickcheck))) + (home-page "https://john-millikin.com/software/haskell-options/") + (synopsis "Powerful and easy-to-use command-line option parser") + (description + "The @code{options} package lets library and application developers +easily work with command-line options.") + (license license:expat))) + +(define-public ghc-system-filepath + (package + (name "ghc-system-filepath") + (version "0.4.13.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-filepath/system-filepath-" + version ".tar.gz")) + (sha256 + (base32 + "1yy5zsmmimhg6iaw9fmpwrxvxrgi5s6bfyqfihdsnx4bjvn7sp9l")))) + (build-system haskell-build-system) + (inputs + `(("ghc-text" ,ghc-text) + ("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck" ,ghc-chell-quickcheck) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "High-level, byte-based file and directory path manipulations") + (description + "Provides a FilePath datatype and utility functions for operating on it. +Unlike the filepath package, this package does not simply reuse String, +increasing type safety.") + (license license:expat))) + +(define-public ghc-system-fileio + (package + (name "ghc-system-fileio") + (version "0.3.16.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-fileio/system-fileio-" + version ".tar.gz")) + (sha256 + (base32 + "1484hcl27s2qcby8ws5djj11q9bz68bspcifz9h5gii2ndy70x9i")))) + (build-system haskell-build-system) + (inputs + `(("ghc-system-filepath" ,ghc-system-filepath) + ("ghc-text" ,ghc-text) + ("ghc-chell" ,ghc-chell) + ("ghc-temporary" ,ghc-temporary))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "Consistent filesystem interaction across GHC versions") + (description + "This is a small wrapper around the directory, unix, and Win32 packages, +for use with system-filepath. It provides a consistent API to the various +versions of these packages distributed with different versions of GHC. +In particular, this library supports working with POSIX files that have paths +which can't be decoded in the current locale encoding.") + (license license:expat))) ;;; haskell.scm ends here |