Subject: [PATCH] gnu: Add ghc-hakyll.

From: Daniel Meißner<[email-masked]>
Date: Fri, 12 Nov 2021 12:23:21 +0100

* gnu/packages/haskell-web.scm (ghc-hakyll): New variable.
---
 gnu/packages/haskell-web.scm | 60 ++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 6a6389d5dd..5809dd53d1 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2020 Kyle Meyer <[email-masked]>
 ;;; Copyright © 2020 Alexandru-Sergiu Marton <[email-masked]>
 ;;; Copyright © 2020 Giacomo Leidi <[email-masked]>
+;;; Copyright © 2021 Daniel Meißner <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,6 +36,7 @@ (define-module (gnu packages haskell-web)
   #:use-module (gnu packages haskell-check)
   #:use-module (gnu packages haskell-crypto)
   #:use-module (gnu packages haskell-xyz)
+  #:use-module (gnu packages linux)
   #:use-module (guix build-system haskell)
   #:use-module (guix download)
   #:use-module ((guix licenses) #:prefix license:)
@@ -2314,3 +2316,61 @@ (define-public ghc-network-run
      "This package provides a simple network runner library in Haskell.")
     (license license:bsd-3)))
 
+(define-public ghc-hakyll
+  (package
+    (name "ghc-hakyll")
+    (version "4.15.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://hackage.haskell.org/package/hakyll/hakyll-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32 "18nhpnhi63xvmb14khw1ad8rwj2lxdyhpc58gnmr9vb5zz2db6bh"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-aeson" ,ghc-aeson)
+       ("ghc-blaze-html" ,ghc-blaze-html)
+       ("ghc-blaze-markup" ,ghc-blaze-markup)
+       ("ghc-data-default" ,ghc-data-default)
+       ("ghc-file-embed" ,ghc-file-embed)
+       ("ghc-hashable" ,ghc-hashable)
+       ("ghc-lifted-async" ,ghc-lifted-async)
+       ("ghc-lrucache" ,ghc-lrucache)
+       ("ghc-network-uri" ,ghc-network-uri)
+       ("ghc-optparse-applicative" ,ghc-optparse-applicative)
+       ("ghc-random" ,ghc-random)
+       ("ghc-regex-tdfa" ,ghc-regex-tdfa)
+       ("ghc-resourcet" ,ghc-resourcet)
+       ("ghc-scientific" ,ghc-scientific)
+       ("ghc-tagsoup" ,ghc-tagsoup)
+       ("ghc-time-locale-compat" ,ghc-time-locale-compat)
+       ("ghc-unordered-containers" ,ghc-unordered-containers)
+       ("ghc-vector" ,ghc-vector)
+       ("ghc-yaml" ,ghc-yaml)
+       ("ghc-wai" ,ghc-wai)
+       ("ghc-warp" ,ghc-warp)
+       ("ghc-wai-app-static" ,ghc-wai-app-static)
+       ("ghc-http-types" ,ghc-http-types)
+       ("ghc-fsnotify" ,ghc-fsnotify)
+       ("ghc-http-conduit" ,ghc-http-conduit)
+       ("ghc-pandoc" ,ghc-pandoc)))
+    (native-inputs
+     `(("ghc-quickcheck" ,ghc-quickcheck)
+       ("ghc-tasty" ,ghc-tasty)
+       ("ghc-tasty-golden" ,ghc-tasty-golden)
+       ("ghc-tasty-hunit" ,ghc-tasty-hunit)
+       ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
+       ;; The testsuite invokes the rev utility
+       ("util-linux" ,util-linux)))
+    (arguments
+     `(#:cabal-revision
+       ("1" "1kxdvh7250nvfdz5wnchyqhghhp05i06sfnjg9ar17p0wyqzv46z")))
+    (home-page "https://jaspervdj.be/hakyll/")
+    (synopsis "Static website compiler library")
+    (description "Hakyll is a static website compiler library.  It provides
+you with the tools to create a simple or advanced static website using a
+Haskell domain-specific language (DSL) and formats such as markdown or RST.")
+    (license license:bsd-3)))
-- 
2.33.1