aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/haskell.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/haskell.scm')
-rw-r--r--gnu/packages/haskell.scm172
1 files changed, 65 insertions, 107 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index b59553f501..8787f10789 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -73,6 +73,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
+ #:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module ((srfi srfi-1) #:select (alist-delete)))
@@ -440,7 +441,7 @@ interactive environment for the functional language Haskell.")
interactive environment for the functional language Haskell.")
(license license:bsd-3)))
-(define-public ghc-8
+(define-public ghc-8.4
(package (inherit ghc-8.0)
(name "ghc")
(version "8.4.3")
@@ -572,6 +573,53 @@ interactive environment for the functional language Haskell.")
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory))))))
+(define-public ghc-8.6
+ (package (inherit ghc-8.4)
+ (name "ghc")
+ (version "8.6.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haskell.org/ghc/dist/"
+ version "/" name "-" version "-src.tar.xz"))
+ (sha256
+ (base32 "0qg3zsmbk4rkwkc3jpas3zs74qaxmw4sp4v1mhsbj0a0dzls2jjd"))))
+ (native-inputs
+ `(;; GHC 8.6.5 must be built with GHC >= 8.2.
+ ("ghc-bootstrap" ,ghc-8.4)
+ ("ghc-testsuite"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://www.haskell.org/ghc/dist/"
+ version "/" name "-" version "-testsuite.tar.xz"))
+ (sha256
+ (base32
+ "0pw9r91g2np3i806g2f4f8z4jfdd7mx226cmdizk4swa7av1qf91"))))
+ ,@(filter (match-lambda
+ (("ghc-bootstrap" . _) #f)
+ (("ghc-testsuite" . _) #f)
+ (_ #t))
+ (package-native-inputs ghc-8.4))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments ghc-8.4)
+ ((#:make-flags make-flags ''())
+ `(cons "EXTRA_RUNTEST_OPTS=--skip-perf-tests"
+ ,make-flags))
+ ((#:phases phases '%standard-phases)
+ `(modify-phases ,phases
+ ;; These two tests refer to the root user, which doesn't exist
+ ;; (see <https://bugs.gnu.org/36692>).
+ (add-after 'unpack-testsuite 'skip-tests
+ (lambda _
+ (substitute* "libraries/unix/tests/all.T"
+ (("^test\\('T8108'") "# guix skipped: test('T8108'"))
+ (substitute* "libraries/unix/tests/libposix/all.T"
+ (("^test\\('posix010'") "# guix skipped: test('posix010'"))
+ #t))))))))
+
+(define-public ghc-8 ghc-8.4)
+
(define-public ghc ghc-8)
(define-public ghc-hostname
@@ -1054,28 +1102,6 @@ the ‘haddock’ package.")
documentation-generation tool for Haskell libraries.")
(license license:bsd-3)))
-(define-public ghc-haddock-test
- (package
- (name "ghc-haddock-test")
- (version "0.0.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://hackage.haskell.org/package/"
- "haddock-test/haddock-test-"
- version ".tar.gz"))
- (sha256
- (base32
- "1ax8fnfrwx66csj952f3virxzapipan9da7z5l1zc12nqkifbs7w"))))
- (build-system haskell-build-system)
- (inputs
- `(("ghc-xml" ,ghc-xml)
- ("ghc-syb" ,ghc-syb)))
- (home-page "http://www.haskell.org/haddock/")
- (synopsis "Test utilities for Haddock")
- (description "This package provides test utilities for Haddock.")
- (license license:bsd-3)))
-
(define-public ghc-haddock
(package
(name "ghc-haddock")
@@ -2903,30 +2929,6 @@ Haskell library @code{regex-base}.")
@code{regex-posix} to replace @code{Text.Regex}.")
(license license:bsd-3)))
-(define-public ghc-regex-tdfa-rc
- (package
- (name "ghc-regex-tdfa-rc")
- (version "1.1.8.3")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "https://hackage.haskell.org/package/regex-tdfa-rc/regex-tdfa-rc-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "1vi11i23gkkjg6193ak90g55akj69bhahy542frkwb68haky4pp3"))))
- (build-system haskell-build-system)
- (inputs
- `(("ghc-regex-base" ,ghc-regex-base)))
- (home-page
- "https://hackage.haskell.org/package/regex-tdfa")
- (synopsis "Tagged DFA regex engine for Haskell")
- (description "A new all-Haskell \"tagged\" DFA regex engine, inspired by
-@code{libtre} (fork by Roman Cheplyaka).")
- (license license:bsd-3)))
-
(define-public ghc-regex-tdfa-text
(package
(name "ghc-regex-tdfa-text")
@@ -3041,6 +3043,7 @@ the parsers provided by @code{parsec}, @code{attoparsec} and @code{base}'s
(base32
"0hznd8i65s81xy13i2qc7cvipw3lfb2yhkv53apbdsh6sbljz5sk"))))
(build-system haskell-build-system)
+ (arguments `(#:tests? #f)) ; doctest suite fails to build on i686
(inputs
`(("ghc-reducers" ,ghc-reducers)
("ghc-semigroups" ,ghc-semigroups)
@@ -3990,7 +3993,7 @@ instances of the @code{Pretty} class.")
"0gnb4mkqryv08vncxnj0bzwcnd749613yw3cxfzw6y3nsldp4c56"))))
(build-system haskell-build-system)
(inputs
- `(("ghc-ansi-terminal" ,ghc-ansi-terminal-0.8)))
+ `(("ghc-ansi-terminal" ,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
@@ -4235,7 +4238,7 @@ interface.")
(define-public ghc-ansi-terminal
(package
(name "ghc-ansi-terminal")
- (version "0.9.1")
+ (version "0.8.0.4")
(source
(origin
(method url-fetch)
@@ -4245,7 +4248,7 @@ interface.")
".tar.gz"))
(sha256
(base32
- "1yr0ld0kqns3w3j9gl62bdwshvyazidx4dv1qkvq19ivnf08w23l"))))
+ "0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b"))))
(build-system haskell-build-system)
(inputs
`(("ghc-colour" ,ghc-colour)))
@@ -4256,21 +4259,6 @@ allows cursor movement, screen clearing, color output showing or hiding the
cursor, and changing the title.")
(license license:bsd-3)))
-(define-public ghc-ansi-terminal-0.8
- (package (inherit ghc-ansi-terminal)
- (name "ghc-ansi-terminal")
- (version "0.8.0.4")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "https://hackage.haskell.org/package/ansi-terminal/ansi-terminal-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "0428gq8m3fdnb7ldcsyk97qcch76hcxbgh2666p6f76fs2qbhg7b"))))))
-
(define-public ghc-vault
(package
(name "ghc-vault")
@@ -5909,35 +5897,6 @@ within an enclosed computation, while remaining responsive to (external)
asynchronous exceptions.")
(license license:expat)))
-(define-public ghc-packedstring
- (package
- (name "ghc-packedstring")
- (version "0.1.0.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://hackage.haskell.org/package/"
- "packedstring/packedstring-"
- version ".tar.gz"))
- (sha256
- (base32
- "1x78pzzdlnpcmh9p37rlf8m5cxf3yqm2alf3whl4zpr9w25r0qj8"))))
- (build-system haskell-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'enable-extension
- (lambda _
- ;; This package won't compile without the StandaloneDeriving
- ;; extension.
- (substitute* "packedstring.cabal"
- (("CPP") "CPP, StandaloneDeriving"))
- #t)))))
- (home-page "https://hackage.haskell.org/package/packedstring")
- (synopsis "Library for packed strings")
- (description
- "This deprecated library provides an implementation of packed strings.")
- (license license:bsd-3)))
-
(define-public ghc-th-abstraction
(package
(name "ghc-th-abstraction")
@@ -6252,6 +6211,9 @@ back-ends.")
(base32
"0cbsyh4ilvjzq1q7pxls43k6pdqxg1l85xzibcwpbvmlvrizh86w"))))
(build-system haskell-build-system)
+ ;; The tests are broken on i686. They are fixed in 0.10.3.0.
+ ;; See https://github.com/snoyberg/yaml/issues/158
+ (arguments `(#:tests? #f))
(inputs
`(("ghc-conduit" ,ghc-conduit)
("ghc-resourcet" ,ghc-resourcet)
@@ -11278,6 +11240,9 @@ imported with the correct Haskell types.")
(base32
"1931m23iqb4wddpdidm4ph746zpaw41kkjzmb074j7yyfpk7x1jv"))))
(build-system haskell-build-system)
+ ;; Tests fail on i686.
+ ;; See https://github.com/vimus/libmpd-haskell/issues/112
+ (arguments `(#:tests? #f))
(inputs
`(("ghc-attoparsec" ,ghc-attoparsec)
("ghc-old-locale" ,ghc-old-locale)
@@ -11821,7 +11786,7 @@ default)
(define-public ghc-validation
(package
(name "ghc-validation")
- (version "1.1")
+ (version "1")
(source
(origin
(method url-fetch)
@@ -11831,18 +11796,11 @@ default)
".tar.gz"))
(sha256
(base32
- "1acj7mh3581ks405xswxw6667z7y1y0slisg6jvp6chc191ji9l5"))))
+ "08drmdvyzg2frbb26icy1mlz52xv0l6gi3v8gb7xp0vrcci5libh"))))
(build-system haskell-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'add-setup-script
- (lambda _
- ;; The usual "Setup.hs" script is missing from the source.
- (with-output-to-file "Setup.hs"
- (lambda ()
- (format #t "import Distribution.Simple~%")
- (format #t "main = defaultMain~%"))))))))
+ `(#:cabal-revision
+ ("1" "1x1g4nannz81j1h64l1m3ancc96zc57d1bjhj1wk7bwn1xxbi5h3")))
(inputs
`(("ghc-semigroups" ,ghc-semigroups)
("ghc-semigroupoids" ,ghc-semigroupoids)
@@ -11875,7 +11833,7 @@ example of, \"An applicative functor that is not a monad.\"")
(define-public ghc-concurrent-output
(package
(name "ghc-concurrent-output")
- (version "1.10.10")
+ (version "1.10.9")
(source
(origin
(method url-fetch)
@@ -11885,7 +11843,7 @@ example of, \"An applicative functor that is not a monad.\"")
".tar.gz"))
(sha256
(base32
- "1wnjxnwbc3l853kiiijagzjyb6fmhz3lmkwls24plbximl1qrr22"))))
+ "0mwf155w89nbbkjln7hhbn8k3f8p0ylcvgrg31cm7ijpx4499i4c"))))
(build-system haskell-build-system)
(inputs
`(("ghc-async" ,ghc-async)