130 lines
5.5 KiB
Scheme
130 lines
5.5 KiB
Scheme
;; (C) Copyright Collin J. Doering 2021
|
|
;;
|
|
;; This program is free software: you can redistribute it and/or modify
|
|
;; it under the terms of the GNU General Public License as published by
|
|
;; the Free Software Foundation, either version 3 of the License, or
|
|
;; (at your option) any later version.
|
|
;;
|
|
;; This program is distributed in the hope that it will be useful,
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;; GNU General Public License for more details.
|
|
;;
|
|
;; You should have received a copy of the GNU General Public License
|
|
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
;; File: haskell-web.scm
|
|
;; Author: Collin J. Doering <collin.doering@rekahsoft.ca>
|
|
;; Date: Nov 24, 2021
|
|
|
|
(define-module (rekahsoft-gnu packages haskell-web)
|
|
#:use-module ((guix licenses)
|
|
#:prefix license:)
|
|
#:use-module (gnu packages)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix git-download)
|
|
#:use-module (guix build-system haskell)
|
|
#:use-module (gnu packages linux)
|
|
#:use-module (gnu packages haskell-web)
|
|
#:use-module (gnu packages haskell-apps)
|
|
#:use-module (gnu packages haskell-xyz)
|
|
#:use-module (gnu packages haskell-crypto)
|
|
#:use-module (gnu packages haskell-check))
|
|
|
|
(define-public ghc-lrucache
|
|
(package
|
|
(name "ghc-lrucache")
|
|
(version "1.2.0.1")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append
|
|
"https://hackage.haskell.org/package/lrucache/lrucache-"
|
|
version ".tar.gz"))
|
|
(sha256
|
|
(base32
|
|
"11avhnjnb89rvn2s41jhh5r40zgp7r6kb5c0hcfiibpabqvv46pw"))))
|
|
(build-system haskell-build-system)
|
|
(inputs `(("ghc-contravariant" ,ghc-contravariant)))
|
|
(home-page "http://github.com/chowells79/lrucache")
|
|
(synopsis "a simple, pure LRU cache")
|
|
(description
|
|
"This package contains a simple, pure LRU cache, implemented in terms of \"Data.Map\". . It also contains a mutable IO wrapper providing atomic updates to an LRU cache.")
|
|
(license license:bsd-3)))
|
|
|
|
(define-public ghc-hakyll
|
|
(package
|
|
(name "ghc-hakyll")
|
|
(version "4.15.1.1")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (hackage-uri "hakyll" version))
|
|
(sha256
|
|
(base32
|
|
"0b3bw275q1xbx8qs9a6gzzs3c9z3qdj7skqhpp09jkchi5kdvhvi"))))
|
|
(build-system haskell-build-system)
|
|
(inputs (list ghc-aeson
|
|
ghc-blaze-html
|
|
ghc-blaze-markup
|
|
ghc-data-default
|
|
ghc-file-embed
|
|
ghc-hashable
|
|
ghc-lifted-async
|
|
ghc-lrucache
|
|
ghc-network-uri
|
|
ghc-optparse-applicative
|
|
ghc-random
|
|
ghc-regex-tdfa
|
|
ghc-resourcet
|
|
ghc-scientific
|
|
ghc-tagsoup
|
|
ghc-time-locale-compat
|
|
ghc-unordered-containers
|
|
ghc-vector
|
|
ghc-yaml
|
|
ghc-wai
|
|
ghc-warp
|
|
ghc-wai-app-static
|
|
ghc-http-types
|
|
ghc-fsnotify
|
|
ghc-http-conduit
|
|
ghc-pandoc))
|
|
(native-inputs (list ghc-quickcheck ghc-tasty ghc-tasty-golden
|
|
ghc-tasty-hunit ghc-tasty-quickcheck util-linux))
|
|
(arguments
|
|
`(#:cabal-revision ("9"
|
|
"11zdqxmmykw2nbd8isc638cj03vrz8nkicyv35sn7jdw2p690ybh")))
|
|
(home-page "http://jaspervdj.be/hakyll")
|
|
(synopsis "A 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 DSL and formats such as markdown or RST. You can find more information, including a tutorial, on the website: . * <http://jaspervdj.be/hakyll> . If you seek assistance, there's: . * A google group: <http://groups.google.com/group/hakyll> . * An IRC channel, @#hakyll@ on irc.libera.chat (we *do not* have a channel on Freenode anymore) . Additionally, there's the Haddock documentation in the different modules, meant as a reference.")
|
|
(license license:bsd-3)))
|
|
|
|
(define-public ghc-clay
|
|
;; Temporarily use tip-of-master as 0.14.0 requires older versions of ghc
|
|
(let ((commit "0504045fd7a3e6eb19fec2eac92fb3e81daf84aa")
|
|
(revision "1"))
|
|
(package
|
|
(name "ghc-clay")
|
|
(version (git-version "0.14.0" revision commit))
|
|
(source (origin
|
|
(method git-fetch)
|
|
(uri (git-reference
|
|
(url "https://github.com/sebastiaanvisser/clay")
|
|
(commit commit)))
|
|
(file-name (git-file-name name version))
|
|
(sha256
|
|
(base32
|
|
"0f9kl7iqh70nl0lwvpb1mh4r2i1y8x7waaxfqzl7lma84aivkfzd"))))
|
|
(build-system haskell-build-system)
|
|
(native-inputs (list ghc-hspec ghc-hspec-discover))
|
|
(home-page "http://fvisser.nl/clay")
|
|
(synopsis "CSS preprocessor as embedded Haskell.")
|
|
(description
|
|
"Clay is a CSS preprocessor like LESS and Sass, but implemented as an embedded
|
|
domain specific language (EDSL) in Haskell. This means that all CSS selectors
|
|
and style rules are first class Haskell functions, which makes reuse and
|
|
composability easy. . The project is described on <http://fvisser.nl/clay>. .
|
|
The API documentation can be found in the top level module \"Clay\".")
|
|
(license license:bsd-3))))
|