1 ;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
2 ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
4 ;;; This file is part of GNU Guix.
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19 (define-module (gnu packages dhall)
20 #:use-module (gnu packages)
21 #:use-module (gnu packages haskell-xyz)
22 #:use-module (gnu packages haskell-check)
23 #:use-module (gnu packages haskell-crypto)
24 #:use-module (gnu packages haskell-web)
25 #:use-module (guix download)
26 #:use-module (guix build-system haskell)
27 #:use-module ((guix licenses) #:prefix license:)
28 #:use-module (guix packages))
37 (uri (string-append "https://hackage.haskell.org/package/dhall/dhall-"
40 (base32 "1by2d84fbckspczddl4npfsf89q6nprmbg0i5g8yr1psp0fpl4ab"))))
41 (build-system haskell-build-system)
46 ghc-atomic-write-0.2.0.7
63 ghc-optparse-applicative
65 ghc-parser-combinators
67 ghc-prettyprinter-ansi-terminal
76 ghc-transformers-compat
77 ghc-unordered-containers
86 ghc-generic-random-1.3.0.1
88 ghc-quickcheck-instances
93 ghc-tasty-expected-failure
102 (modify-phases %standard-phases
103 (add-after 'unpack 'remove-network-tests
105 (with-directory-excursion "dhall-lang/tests"
108 '("import/success/customHeadersA.dhall"
109 "import/success/noHeaderForwardingA.dhall"
110 "import/success/unit/RemoteAsTextA.dhall"
111 "import/success/unit/SimpleRemoteA.dhall"
112 "import/success/unit/asLocation/RemoteChain1A.dhall"
113 "import/success/unit/asLocation/RemoteChain2A.dhall"
114 "import/success/unit/asLocation/RemoteChain3A.dhall"
115 "import/success/unit/asLocation/RemoteChainEnvA.dhall"
116 "import/success/unit/asLocation/RemoteChainMissingA.dhall"
117 "type-inference/success/CacheImportsA.dhall"
118 "type-inference/success/CacheImportsCanonicalizeA.dhall")))
119 (substitute* "src/Dhall/Tutorial.hs"
122 "\"https://raw.githubusercontent.com/dhall-lang"
123 "/dhall-haskell/18e4e9a18dc53271146df3ccf5b4177c3552236b/"
124 "examples/True\" :: IO Bool"))
129 "https://raw.githubusercontent.com/dhall-lang"
130 "/dhall-haskell/18e4e9a18dc53271146df3ccf5b4177c3552236b/"
131 "examples/True\" :: IO Bool"))
134 (home-page "https://dhall-lang.org/")
135 (synopsis "Configuration language guaranteed to terminate")
137 "Dhall is an explicitly typed configuration language that is not Turing
138 complete. Despite being Turing incomplete, Dhall is a real programming
139 language with a type-checker and evaluator.
141 Use this library to parse, type-check, evaluate, and pretty-print the Dhall
142 configuration language. This package also includes an executable which
143 type-checks a Dhall file and reduces the file to a fully evaluated normal
145 (license license:bsd-3)))