From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul van der Walt Subject: [PATCH 105/105] gnu: Add Idris, the dependently-typed language. Date: Thu, 15 Oct 2015 17:36:18 +0200 Message-ID: <1444923378-10269-15-git-send-email-paul@denknerd.org> References: <1444923378-10269-1-git-send-email-paul@denknerd.org> Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52270) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZmkaB-0005rg-Ph for guix-devel@gnu.org; Thu, 15 Oct 2015 11:36:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZmkaA-0006vA-Eh for guix-devel@gnu.org; Thu, 15 Oct 2015 11:36:43 -0400 Received: from mx01.mykolab.com ([95.128.36.1]:51916 helo=mx-out03.mykolab.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZmkaA-0006ug-4u for guix-devel@gnu.org; Thu, 15 Oct 2015 11:36:42 -0400 Received: from mx08.mykolab.com (unknown [10.20.7.48]) by mx-out03.mykolab.com (Postfix) with ESMTPS id 38A1C23554 for ; Thu, 15 Oct 2015 17:36:40 +0200 (CEST) In-Reply-To: <1444923378-10269-1-git-send-email-paul@denknerd.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org * gnu/packages/haskell.scm (idris): New variable. --- gnu/packages/haskell.scm | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 75d06d8..cf4c03b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages elf) #:use-module (gnu packages bootstrap) #:use-module (gnu packages zip) + #:use-module (gnu packages gcc) #:use-module (gnu packages ghostscript) #:use-module (gnu packages libffi) #:use-module (gnu packages libedit) @@ -4400,4 +4401,65 @@ the father of Jason.)") "Provides basic WAI handler and middleware functionality.") (license expat))) +(define-public idris + (package + (name "idris") + (version "0.9.19.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/idris-" + version "/idris-" version ".tar.gz")) + (sha256 + (base32 + "10641svdsjlxbxmbvylpia04cz5nn9486lpiay8ibqcrc1792qgc")))) + (build-system haskell-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-before 'configure 'patch-cc-command + (lambda _ + (setenv "CC" "gcc") + ;; Package description file has a too-tight + ;; version restriction, rendering it + ;; incompatible with GHC 7.10.2. This is + ;; fixed upstream. + (substitute* "idris.cabal" + (("vector < 0.11") "vector < 0.12"))))))) + (native-inputs + `(("gcc" ,gcc))) + (inputs + `(("gmp" ,gmp) + ("ncurses" ,ncurses) + ("ghc-annotated-wl-pprint" ,ghc-annotated-wl-pprint) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-blaze-markup" ,ghc-blaze-markup) + ("ghc-cheapskate" ,ghc-cheapskate) + ("ghc-fingertree" ,ghc-fingertree) + ("ghc-mtl" ,ghc-mtl) + ("ghc-network" ,ghc-network) + ("ghc-optparse-applicative" ,ghc-optparse-applicative) + ("ghc-parsers" ,ghc-parsers) + ("ghc-safe" ,ghc-safe) + ("ghc-split" ,ghc-split) + ("ghc-text" ,ghc-text) + ("ghc-trifecta" ,ghc-trifecta) + ("ghc-uniplate" ,ghc-uniplate) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-vector-binary-instances" ,ghc-vector-binary-instances) + ("ghc-vector" ,ghc-vector) + ("ghc-zip-archive" ,ghc-zip-archive) + ("ghc-zlib" ,ghc-zlib))) + (home-page "http://www.idris-lang.org") + (synopsis "General purpose language with full dependent types") + (description "Idris is a general purpose language with full dependent +types. It is compiled, with eager evaluation. Dependent types allow types to +be predicated on values, meaning that some aspects of a program's behaviour +can be specified precisely in the type. The language is closely related to +Epigram and Agda.") + (license bsd-3))) + ;;; haskell.scm ends here -- 2.6.1