summary refs log tree commit diff
path: root/gnu/packages/haskell-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/haskell-xyz.scm')
-rw-r--r--gnu/packages/haskell-xyz.scm58
1 files changed, 37 insertions, 21 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index e34acca909..5d9e5757a0 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -781,7 +781,8 @@ than @code{base-compat}, which has no dependencies.")
               (uri (hackage-uri "basement" version))
               (sha256
                (base32
-                "1d2xj5dmjps7nc7rwp5s0kyjcg9v8xfql6ik4yk1d3affnvazhjn"))))
+                "1d2xj5dmjps7nc7rwp5s0kyjcg9v8xfql6ik4yk1d3affnvazhjn"))
+              (patches (search-patches "ghc-basement-fix-32bit.patch"))))
     (build-system haskell-build-system)
     (properties '((upstream-name . "basement")))
     (home-page "https://github.com/haskell-foundation/foundation#readme")
@@ -1062,31 +1063,26 @@ library for Haskell.")
 (define-public ghc-bloomfilter
   (package
     (name "ghc-bloomfilter")
-    (version "2.0.1.0")
+    (version "2.0.1.2")
     (source
      (origin
        (method url-fetch)
        (uri (hackage-uri "bloomfilter" version))
        (sha256
         (base32
-         "03vrmncg1c10a2wcg5skq30m1yiknn7nwxz2gblyyfaxglshspkc"))
-       (patches (search-patches "ghc-bloomfilter-ghc9.2.patch"))))
+         "0klb26ldkw32axv3927w489j71r2rc9pangsvznqjbljib9970hp"))
+       (snippet
+        #~(begin (use-modules (guix build utils))
+                 ;; https://github.com/bos/bloomfilter/issues/7
+                 (substitute* "Data/BloomFilter/Easy.hs"
+                   ((" in if roundedBits <= 0 \\|\\| maxbitstoolarge roundedBits")
+                    " in if roundedBits <= 0"))))))
     (build-system haskell-build-system)
     (properties '((upstream-name . "bloomfilter")))
     (native-inputs
      (list ghc-quickcheck ghc-random ghc-test-framework
            ghc-test-framework-quickcheck2))
-    (arguments
-     `(#:cabal-revision ("2"
-                         "1hi6hwvhv7lxqv0l6hv2854g1rvc52zcmr3ldvnaan1l1b666867")
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'update-constraints
-           (lambda _
-             (substitute* "bloomfilter.cabal"
-               (("\\b(base)\\s+[^,]+" all dep)
-                dep)))))))
-    (home-page "https://github.com/bos/bloomfilter")
+    (home-page "https://github.com/haskell-pkg-janitors/bloomfilter")
     (synopsis "Pure and impure Bloom filter implementations")
     (description "This package provides both mutable and immutable Bloom
 filter data types, along with a family of hash functions and an easy-to-use
@@ -7080,7 +7076,8 @@ speed, flexibility, and quality of parse errors.")
               (uri (hackage-uri "memory" version))
               (sha256
                (base32
-                "0yl3ivvn7i9wbx910b7bzj9c3g0jjjk91j05wj74qb5zx2yyf9rk"))))
+                "0yl3ivvn7i9wbx910b7bzj9c3g0jjjk91j05wj74qb5zx2yyf9rk"))
+              (patches (search-patches "ghc-memory-fix-32bit.patch"))))
     (build-system haskell-build-system)
     (properties '((upstream-name . "memory")))
     (inputs (list ghc-basement))
@@ -8512,7 +8509,12 @@ code.  It was designed for use in @code{Pandoc}.")
                '(begin
                   ;; Fix test case.
                   (substitute* "test/writer.ms"
-                    (("\\\\\\[u2212\\]") "-"))))))
+                    (("\\\\\\[u2212\\]") "-"))
+                  (substitute* "test/Tests/Old.hs"
+                    ;; There is no indication why these tests are failing on
+                    ;; i686-linux.
+                    ((".*fb2WriterTest' \"images.*") "")
+                    ((".*fb2WriterTest' \"testsuite.*") ""))))))
     (build-system haskell-build-system)
     (properties '((upstream-name . "pandoc")))
     (inputs (list ghc-glob
@@ -8608,6 +8610,17 @@ provided for those who need a drop-in replacement for Markdown.pl.")
        #:configure-flags #~(list "-fembed_data_files")
        #:phases
        #~(modify-phases %standard-phases
+           (add-after 'install 'install-more
+             (lambda _
+               (let ((bash (string-append #$output "/etc/bash_completion.d/pandoc"))
+                     (man1 (string-append #$output "/share/man/man1")))
+                 (mkdir-p (dirname bash))
+                 (with-output-to-file bash
+                   (lambda _
+                     (invoke (string-append #$output "/bin/pandoc")
+                             "--bash-completion")))
+                 (mkdir-p man1)
+                 (install-file "man/pandoc.1" man1))))
            (add-after 'register 'remove-libraries
              (lambda* (#:key outputs #:allow-other-keys)
                (delete-file-recursively (string-append (assoc-ref outputs "out") "/lib")))))
@@ -8919,7 +8932,8 @@ numbers")
               (uri (hackage-uri "persistent" version))
               (sha256
                (base32
-                "0z69yvk0rd29dp5qdhi4p587b891y90azrzzpa3g10cxp3gyywvm"))))
+                "0z69yvk0rd29dp5qdhi4p587b891y90azrzzpa3g10cxp3gyywvm"))
+              (patches (search-patches "ghc-persistent-fix-32bit.patch"))))
     (build-system haskell-build-system)
     (properties '((upstream-name . "persistent")))
     (inputs (list ghc-conduit
@@ -16006,10 +16020,12 @@ benchmarks](https://hackage.haskell.org/package/random-bytestring-0.1.3.2/src/be
                          ghc-tasty-hunit
                          ghc-tasty-quickcheck))
     (arguments
-     `(#:cabal-revision ("2"
-                         "0cz3zzz9k490w9nfn4hpgdw4zx4w70fwqrwsfx8svcwqssqibqw3")))
+     `(#:cabal-revision ("4"
+                         "1lc32d5nxk0ry1pfn3ss55hi4cv6qj5nkkdn3j4y3lrdwyv7kbw2")
+       #:tests? ,(not (or (%current-target-system)
+                          (target-x86-32?)))))
     (home-page "https://github.com/emilypi/base64")
-    (synopsis "A modern RFC 4648-compliant Base64 library")
+    (synopsis "Modern RFC 4648-compliant Base64 library")
     (description
      "RFC 4648-compliant Base64 with an eye towards performance and modernity
 (additional support for RFC 7049 standards)")