summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohn Soo <jsoo1@asu.edu>2019-07-07 17:27:42 -0700
committerTimothy Sample <samplet@ngyro.com>2019-09-02 23:09:37 -0400
commita52f4c5740ea7ad7776cb399eef0eccabe85127c (patch)
tree4e423efd73b1a25ab3daba1aca09dee168895400
parent68668e97dca8a0b987952d474beeed08ecfb8fda (diff)
downloadguix-a52f4c5740ea7ad7776cb399eef0eccabe85127c.tar.gz
gnu: Add ghc-unsafe.
* gnu/packages/haskell-xyz.scm (ghc-unsafe): New variable.

Signed-off-by: Timothy Sample <samplet@ngyro.com>
-rw-r--r--gnu/packages/haskell-xyz.scm28
1 files changed, 28 insertions, 0 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 91d009dc22..8d7614240e 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -19,6 +19,7 @@
 ;;; Copyright © 2018, 2019 Gabriel Hondet <gabrielhondet@gmail.com>
 ;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
 ;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
+;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -10547,6 +10548,33 @@ and high speed.")
      `(("ghc-hashable" ,ghc-hashable-bootstrap)))
     (properties '(hidden? #t))))
 
+(define-public ghc-unsafe
+  (package
+    (name "ghc-unsafe")
+    (version "0.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri
+        (string-append
+         "https://hackage.haskell.org/package/unsafe/unsafe-"
+         version ".tar.gz"))
+       (sha256
+        (base32
+         "0hc6xr1i3hkz25gdgfx1jqgpsc9mwa05bkfynp0mcfdlyz6782nz"))))
+    (build-system haskell-build-system)
+    (home-page "https://hackage.haskell.org/package/unsafe")
+    (synopsis "Unified interface to unsafe functions")
+    (description "Safe Haskell introduced the notion of safe and unsafe
+modules.  In order to make as many as possible modules ``safe'', the
+well-known unsafe functions were moved to distinguished modules.  This
+makes it hard to write packages that work with both old and new versions
+of GHC.  This package provides a single module System.Unsafe that
+exports the unsafe functions from the base package.  It provides them in
+a style ready for qualification, that is, you should import them by
+@code{import qualified System.Unsafe as Unsafe}.")
+    (license license:bsd-3)))
+
 (define-public ghc-uri-bytestring
   (package
     (name "ghc-uri-bytestring")