X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/5015343709c81a95f2713e035df58cf1a288a8ec..71441a3851801a14a3f9d6dedc0a80361c1a7317:/gnu/packages/haskell-xyz.scm diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 9599347d72..418eb7cc46 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -23,6 +23,8 @@ ;;; Copyright © 2019 Kyle Meyer ;;; Copyright © 2019 Alex Griffin ;;; Copyright © 2020 Brett Gilio +;;; Copyright © 2020 JoJo +;;; Copyright © 2020 Nicolas Goaziou ;;; ;;; This file is part of GNU Guix. ;;; @@ -54,6 +56,7 @@ #:use-module (gnu packages haskell-web) #:use-module (gnu packages libffi) #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) #:use-module (gnu packages lua) #:use-module (gnu packages maths) #:use-module (gnu packages ncurses) @@ -787,7 +790,7 @@ pragmas in your code.") (arguments `(#:cabal-revision ("1" "15sn2qc8k0hxbb2nai341kkrci98hlhzcj2ci087m0zxcg5jcdbp"))) - (home-page "http://hackage.haskell.org/package/base-compat-batteries") + (home-page "https://hackage.haskell.org/package/base-compat-batteries") (synopsis "base-compat with extra batteries") (description "This library provides functions available in later versions of @code{base} to a wider range of compilers, without requiring @@ -3574,7 +3577,7 @@ Double.") `(("ghc-quickcheck" ,ghc-quickcheck) ("ghc-hspec" ,ghc-hspec) ("hspec-discover" ,hspec-discover))) - (home-page "http://hackage.haskell.org/package/errorcall-eq-instance") + (home-page "https://hackage.haskell.org/package/errorcall-eq-instance") (synopsis "Orphan Eq instance for ErrorCall") (description "Prior to @code{base-4.7.0.0} there was no @code{Eq} instance for @code{ErrorCall}. @@ -3690,7 +3693,7 @@ generated SQL and optimize it for your backend.") ("ghc-silently" ,ghc-silently) ("ghc-filemanip" ,ghc-filemanip))) (home-page - "http://hackage.haskell.org/package/ghc-exactprint") + "https://hackage.haskell.org/package/ghc-exactprint") (synopsis "ExactPrint for GHC") (description "Using the API Annotations available from GHC 7.10.2, this library @@ -3771,7 +3774,7 @@ versions of GHC (i.e., < 6.10).") (define-public ghc-extra (package (name "ghc-extra") - (version "1.6.18") + (version "1.7.1") (source (origin (method url-fetch) @@ -3781,12 +3784,13 @@ versions of GHC (i.e., < 6.10).") ".tar.gz")) (sha256 (base32 - "0jvd4l0hi8pf5899pxc32yc638y0mrc357w0rph99k3hm277i0cy")))) + "0zshxv9dnd8vksncmb8dj4wvq2wdybzwxyhmy2zp6a81icm4azx4")))) (build-system haskell-build-system) (inputs `(("ghc-clock" ,ghc-clock) ("ghc-semigroups" ,ghc-semigroups) - ("ghc-quickcheck" ,ghc-quickcheck))) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-quickcheck-instances" ,ghc-quickcheck-instances))) (home-page "https://github.com/ndmitchell/extra") (synopsis "Extra Haskell functions") (description "This library provides extra functions for the standard @@ -4015,7 +4019,7 @@ file contents, and more.") (build-system haskell-build-system) (native-inputs `(("ghc-quickcheck" ,ghc-quickcheck))) - (home-page "http://hackage.haskell.org/package/filepath-bytestring") + (home-page "https://hackage.haskell.org/package/filepath-bytestring") (synopsis "Library for manipulating RawFilePaths in a cross-platform way") (description "This package provides a drop-in replacement for the standard @code{filepath} library, operating on @code{RawFilePath} values rather than @@ -5008,7 +5012,7 @@ combine hash values.") `(#:cabal-revision ("2" "006phc5y9rrvsshdcmjmhxzxh8dpgs685mpqbkjm9c40xb1ydjbz"))) (inputs `(("ghc-hashable" ,ghc-hashable))) - (home-page "http://hackage.haskell.org/package/hashable-time") + (home-page "https://hackage.haskell.org/package/hashable-time") (synopsis "Hashable instances for Data.Time") (description "This package provides @code{Hashable} instances for types in @@ -5053,7 +5057,7 @@ a set of wrappers to use the hash tables in the IO monad.") (sha256 (base32 "1wyxd8x33x4v5vxyzkhm610pl86gbkc8y439092fr1735q9g7kfq")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/haskell-lexer") + (home-page "https://hackage.haskell.org/package/haskell-lexer") (synopsis "Fully compliant Haskell 98 lexer") (description "This package provides a fully compliant Haskell 98 lexer.") @@ -5789,7 +5793,7 @@ for general types.") (base32 "1kfx1bwfjczj93a8yqz1n8snqiq5655qgzwv1lrycry8wb1vzlwa")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/IfElse") + (home-page "https://hackage.haskell.org/package/IfElse") (synopsis "Monadic control flow with anaphoric variants") (description "This library provides functions for control flow inside of monads with anaphoric variants on @code{if} and @code{when} and a C-like @@ -5842,7 +5846,7 @@ lines continued at an indented level below.") (native-inputs `(("ghc-hspec" ,ghc-hspec) ("hspec-discover" ,hspec-discover))) - (home-page "http://hackage.haskell.org/package/infer-license") + (home-page "https://hackage.haskell.org/package/infer-license") (synopsis "Infer software license from a given license file") (description "This library provides tools to infer a software license from a given license file.") @@ -5873,7 +5877,7 @@ license from a given license file.") ("ghc-hspec" ,ghc-hspec) ("ghc-raw-strings-qq" ,ghc-raw-strings-qq) ("ghc-regex-posix" ,ghc-regex-posix))) - (home-page "http://hackage.haskell.org/package/inline-c") + (home-page "https://hackage.haskell.org/package/inline-c") (synopsis "Write Haskell source files including C code inline") (description "inline-c lets you seamlessly call C libraries and embed high-performance @@ -6097,7 +6101,7 @@ functors). For more information, see Edward Kmett's article ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) ("ghc-zlib" ,ghc-zlib))) - (home-page "http://hackage.haskell.org/package/io-streams") + (home-page "https://hackage.haskell.org/package/io-streams") (synopsis "Simple and composable stream I/O") (description "This library contains simple and easy-to-use primitives for I/O using streams.") @@ -6338,7 +6342,7 @@ and a large set of GNU extensions.") `(#:tests? #f #:cabal-revision ("1" "10ac9pk4jy75k03j1ns4b5136l4kw8krr2d2nw2fdmpm5jzyghc5"))) - (home-page "http://hackage.haskell.org/package/language-glsl") + (home-page "https://hackage.haskell.org/package/language-glsl") (synopsis "GLSL abstract syntax tree, parser, and pretty-printer") (description "This package is a Haskell library for the representation, parsing, and pretty-printing of GLSL 1.50 code.") @@ -6442,7 +6446,7 @@ indexed variants.") (build-system haskell-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("libffi" ,libffi))) - (home-page "http://hackage.haskell.org/package/libffi") + (home-page "https://hackage.haskell.org/package/libffi") (synopsis "Haskell binding to libffi") (description "A binding to libffi, allowing C functions of types only known at runtime @@ -6704,6 +6708,72 @@ ByteString, for types that support input and output, and for types that can handle infinite lists.") (license license:bsd-3))) +(define-public ghc-llvm-hs-pure + (package + (name "ghc-llvm-hs-pure") + (version "9.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/llvm-hs-pure/" + "llvm-hs-pure-" version ".tar.gz")) + (sha256 + (base32 + "0pxb5ah8r5pzpz2ibqw3g9g1isigb4z7pbzfrwr8kmcjn74ab3kf")))) + (build-system haskell-build-system) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-fail" ,ghc-fail) + ("ghc-unordered-containers" ,ghc-unordered-containers))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) + (home-page "https://github.com/llvm-hs/llvm-hs/") + (synopsis "Pure Haskell LLVM functionality (no FFI)") + (description "llvm-hs-pure is a set of pure Haskell types and functions +for interacting with LLVM. It includes an algebraic datatype (ADT) to represent +LLVM IR. The llvm-hs package builds on this one with FFI bindings to LLVM, but +llvm-hs-pure does not require LLVM to be available.") + (license license:bsd-3))) + +(define-public ghc-llvm-hs + (package + (name "ghc-llvm-hs") + (version "9.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/llvm-hs/llvm-hs-" + version ".tar.gz")) + (sha256 + (base32 + "0723xgh45h9cyxmmjsvxnsp8bpn1ljy4qgh7a7vqq3sj9d6wzq00")))) + (build-system haskell-build-system) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-llvm-hs-pure" ,ghc-llvm-hs-pure) + ("llvm" ,llvm-9))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-temporary" ,ghc-temporary) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-temporary" ,ghc-temporary))) + (home-page "https://github.com/llvm-hs/llvm-hs/") + (synopsis "General purpose LLVM bindings for Haskell") + (description "llvm-hs is a set of Haskell bindings for LLVM. Unlike other +current Haskell bindings, it uses an algebraic datatype (ADT) to represent LLVM +IR, and so offers two advantages: it handles almost all of the stateful +complexities of using the LLVM API to build IR; and it supports moving IR not +only from Haskell into LLVM C++ objects, but the other direction - from LLVM C++ +into Haskell.") + (license license:bsd-3))) + (define-public ghc-logging-facade (package (name "ghc-logging-facade") @@ -6830,7 +6900,7 @@ compression algorithm used in the @code{.xz} file format.") (base32 "10p0gjjjwr1dda7hahwrwn5njbfhl67arq3v3nf1jr3vymlkn75j")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/magic") + (home-page "https://hackage.haskell.org/package/magic") (synopsis "Interface to C file/magic library") (description "This package provides a full-featured binding to the C libmagic library. @@ -7194,7 +7264,7 @@ used both from lens and microlens).") `(("ghc-errorcall-eq-instance" ,ghc-errorcall-eq-instance) ("ghc-quickcheck" ,ghc-quickcheck) ("ghc-hunit" ,ghc-hunit))) - (home-page "http://software.complete.org/missingh") + (home-page "https://software.complete.org/missingh") (synopsis "Large utility library") (description "MissingH is a library of all sorts of utility functions for Haskell @@ -7717,7 +7787,7 @@ network database () API.") (build-system haskell-build-system) (native-inputs `(("ghc-doctest" ,ghc-doctest))) - (home-page "http://hackage.haskell.org/package/network-byte-order") + (home-page "https://hackage.haskell.org/package/network-byte-order") (synopsis "Network byte order utilities") (description "This library provides peek and poke functions for network byte order.") @@ -8097,6 +8167,114 @@ easily work with command-line options.") command line options in Haskell.") (license license:bsd-3))) +(define-public ghc-jira-wiki-markup + (package + (name "ghc-jira-wiki-markup") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/jira-wiki-markup/" + "jira-wiki-markup-" version ".tar.gz")) + (sha256 + (base32 "1sl2jjcsqg61si33mxjwpf8zdn56kbbgcwqqqzbgifx2qbv4wmf8")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "https://github.com/tarleb/jira-wiki-markup") + (synopsis "Handle Jira wiki markup") + (description + "Parse jira wiki text into an abstract syntax tree for easy transformation +to other formats.") + (license license:expat))) + +(define-public ghc-emojis + (package + (name "ghc-emojis") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/emojis/" + "emojis-" version ".tar.gz")) + (sha256 + (base32 "1c6zkj9gmk1y90gbdrn50hyp7mw1mggzhnr2khqd728ryipw60ss")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/jgm/emojis#readme") + (synopsis "Conversion between emoji characters and their names.") + (description + "This package provides functions for converting emoji names to emoji +characters and vice versa. + +How does it differ from the @code{emoji} package? +@itemize +@item It supports a fuller range of emojis, including all those supported by +GitHub +@item It supports lookup of emoji aliases from emoji +@item It uses Text rather than String +@item It has a lighter dependency footprint: in particular, it does not +require aeson +@item It does not require TemplateHaskell +@end itemize") + (license license:bsd-3))) + +(define-public ghc-text-conversions + (package + (name "ghc-text-conversions") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/text-conversions/" + "text-conversions-" version ".tar.gz")) + (sha256 + (base32 "089c56vdj9xysqfr1hnvbnrghlg83q6w10xk02gflpsidcpvwmhp")))) + (build-system haskell-build-system) + (inputs + `(("ghc-base16-bytestring" ,ghc-base16-bytestring) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-errors" ,ghc-errors))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("hspec-discover" ,hspec-discover))) + (home-page "https://github.com/cjdev/text-conversions#readme") + (synopsis "Safe conversions between textual types") + (description "Safe conversions between textual types") + (license license:isc))) + +(define-public ghc-doclayout + (package + (name "ghc-doclayout") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/doclayout/" + "doclayout-" version ".tar.gz")) + (sha256 + (base32 "1wmnwq28jcyd6c80srivsnd5znmyl9sgmwwnlk2crwiiwqadbal7")))) + (build-system haskell-build-system) + (inputs + `(("ghc-safe" ,ghc-safe))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-golden" ,ghc-tasty-golden) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "https://github.com/jgm/doclayout") + (synopsis "Pretty-printing library for laying out text documents") + (description + "doclayout is a pretty-printing library for laying out text documents, +with several features not present in pretty-printing libraries designed for +code. It was designed for use in @code{Pandoc}.") + (license license:bsd-3))) + (define-public ghc-pandoc (package (name "ghc-pandoc") @@ -8391,7 +8569,7 @@ the parsers provided by @code{parsec}, @code{attoparsec} and @code{base}'s ("ghc-hspec" ,ghc-hspec) ("ghc-validity" ,ghc-validity))) (home-page - "http://hackage.haskell.org/package/path") + "https://hackage.haskell.org/package/path") (synopsis "Support for well-typed paths") (description "This package introduces a type for paths upholding useful invariants.") @@ -8674,7 +8852,7 @@ dependencies "16xsrzqql7i4z6a3xy07sqnbyqdmcar1jiacla58y4mvkkwb0g3l")))) (build-system haskell-build-system) (home-page - "http://hackage.haskell.org/package/pointedlist") + "https://hackage.haskell.org/package/pointedlist") (synopsis "Zipper-like comonad which works as a list, tracking a position") (description @@ -8769,7 +8947,7 @@ reduce @code{UndecidableInstances}.") (base32 "11l9ajci7nh1r547hx8hgxrhq8mh5gdq30pdf845wvilg9p48dz5")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/prettyclass") + (home-page "https://hackage.haskell.org/package/prettyclass") (synopsis "Pretty printing class similar to Show") (description "This package provides a pretty printing class similar to @code{Show}, based on the HughesPJ pretty printing library. It @@ -9136,7 +9314,7 @@ containers and a general map/reduce framework for Haskell.") (base32 "0v0zxcx29b8jxs2kgy9csykqcp8kzhdvyylw2xfwmj4pfxr2kl0a")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/refact") + (home-page "https://hackage.haskell.org/package/refact") (synopsis "Specify refactorings to perform with apply-refact") (description "This library provides a datatype which can be interpreted by @@ -9404,7 +9582,7 @@ inspired by libtre.") `(("ghc-regex-base" ,ghc-regex-base) ("ghc-regex-tdfa" ,ghc-regex-tdfa))) (home-page - "http://hackage.haskell.org/package/regex-tdfa-text") + "https://hackage.haskell.org/package/regex-tdfa-text") (synopsis "Text interface for regex-tdfa") (description "This provides an extra text interface for regex-tdfa.") @@ -9890,7 +10068,7 @@ award winning Linux port of \"Civilization: Call To Power.\"") (native-inputs `(("ghc-weigh" ,ghc-weigh) ("pkg-config" ,pkg-config))) - (home-page "http://hackage.haskell.org/package/sdl2") + (home-page "https://hackage.haskell.org/package/sdl2") (synopsis "High- and low-level bindings to the SDL library") (description "This package contains bindings to the SDL 2 library, in both high- and @@ -9921,7 +10099,7 @@ programming.") ("sdl2-image" ,sdl2-image))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://hackage.haskell.org/package/sdl2-image") + (home-page "https://hackage.haskell.org/package/sdl2-image") (synopsis "Bindings to SDL2_image") (description "This package provides Haskell bindings to @code{SDL2_image}.") @@ -9949,7 +10127,7 @@ programming.") ("sdl2-mixer" ,sdl2-mixer))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://hackage.haskell.org/package/sdl2-mixer") + (home-page "https://hackage.haskell.org/package/sdl2-mixer") (synopsis "Bindings to SDL2 mixer") (description "This package provides Haskell bindings to @code{SDL2_mixer}.") @@ -10453,7 +10631,7 @@ automatically by SmallCheck.") (base32 "07ci2mh8cbjvipb576rxsj3iyhkj5c5dnsns4xkdppp2p3pv10d3")))) (build-system haskell-build-system) - (home-page "http://hackage.haskell.org/package/sop-core") + (home-page "https://hackage.haskell.org/package/sop-core") (synopsis "True Sums of Products") (description "This package provides an implementation of @math{n}-ary sums and @math{n}-ary products. The module @code{Data.SOP} @@ -10512,7 +10690,7 @@ mainstream languages.") ("ghc-base-compat-batteries" ,ghc-base-compat-batteries) ("ghc-tf-random" ,ghc-tf-random) ("ghc-vector" ,ghc-vector))) - (home-page "http://hackage.haskell.org/package/splitmix") + (home-page "https://hackage.haskell.org/package/splitmix") (synopsis "Fast and splittable pseudorandom number generator") (description "This package provides a Pure Haskell implementation of the SplitMix pseudorandom number generator. SplitMix is a \"splittable\" @@ -10907,7 +11085,7 @@ literals.") (build-system haskell-build-system) (native-inputs `(("ghc-hunit" ,ghc-hunit))) - (home-page "http://hackage.haskell.org/package/string-qq") + (home-page "https://hackage.haskell.org/package/string-qq") (synopsis "QuasiQuoter for non-interpolated strings, texts and bytestrings.") (description @@ -11674,7 +11852,7 @@ function which generates instances.") ("1" "0k8ph4sydaiqp8dav4if6hpiaq8h1xsr93khmdr7a1mmfwdxr64r"))) (home-page "https://github.com/phadej/time-compat") (synopsis "Compatibility package for time") - (description "This packages tries to compat as many @code{time} + (description "This package tries to compat as many @code{time} features as possible.") (license license:bsd-3))) @@ -12036,7 +12214,7 @@ upon it.") #:cabal-revision ("1" "09pqi867wskwgc5lpn197f895mbn1174ydgllvcppcsmrz2b6yr6"))) - (home-page "http://hackage.haskell.org/package/unagi-chan") + (home-page "https://hackage.haskell.org/package/unagi-chan") (synopsis "Fast concurrent queues with a Chan-like API, and more") (description "This library provides implementations of concurrent FIFO queues (for @@ -13047,7 +13225,7 @@ parts.") (base32 "0g814lj7vaxvib2g3r734221k80k7ap9czv9hinifn8syals3l9j")))) (build-system haskell-build-system) - (home-page "http://code.galois.com") + (home-page "https://github.com/GaloisInc/xml") (synopsis "Simple XML library for Haskell") (description "This package provides a simple XML library for Haskell.") (license license:bsd-3)))