summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <ricardo.wurmus@mdc-berlin.de>2018-10-02 18:38:12 +0200
committerRicardo Wurmus <rekado@elephly.net>2018-10-05 23:59:27 +0200
commitb1f9cc88c4e371e39aae4a6dee8fcc775c2ac9a5 (patch)
tree6831597d98a8223489e0b5298a711ab33f67b336 /gnu
parentea202046fa66028463df9cf23399d4adc39f5c36 (diff)
downloadguix-b1f9cc88c4e371e39aae4a6dee8fcc775c2ac9a5.tar.gz
gnu: Add ghc-safeio.
* gnu/packages/haskell.scm (ghc-safeio): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/haskell.scm30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 28f5bdffe6..0a90ac523c 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -11334,4 +11334,34 @@ the files in a directory, and turn them into @code{(path, bytestring)} pairs
 embedded in your Haskell code.")
     (license license:bsd-3)))
 
+(define-public ghc-safeio
+  (package
+    (name "ghc-safeio")
+    (version "0.0.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://hackage.haskell.org/package/safeio/"
+                           "safeio-" version ".tar.gz"))
+       (sha256
+        (base32
+         "04g3070cbjdqj0h9l9ii6470xcbn40xfv4fr89a8yvnkdim9nyfm"))))
+    (build-system haskell-build-system)
+    (inputs
+     `(("ghc-conduit" ,ghc-conduit)
+       ("ghc-conduit-combinators" ,ghc-conduit-combinators)
+       ("ghc-exceptions" ,ghc-exceptions)
+       ("ghc-resourcet" ,ghc-resourcet)))
+    (native-inputs
+     `(("ghc-hunit" ,ghc-hunit)
+       ("ghc-test-framework" ,ghc-test-framework)
+       ("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
+       ("ghc-test-framework-th" ,ghc-test-framework-th)))
+    (home-page "https://github.com/luispedro/safeio")
+    (synopsis "Write output to disk atomically")
+    (description
+     "This package implements utilities to perform atomic output so as to
+avoid the problem of partial intermediate files.")
+    (license license:expat)))
+
 ;;; haskell.scm ends here