distro: Move bootstrap packages to (distro packages bootstrap).
[jackhill/guix/guix.git] / distro / packages / guile.scm
CommitLineData
1722d680
LC
1;;; Guix --- Nix package management from Guile. -*- coding: utf-8 -*-
2;;; Copyright (C) 2012 Ludovic Courtès <ludo@gnu.org>
3;;;
4;;; This file is part of Guix.
5;;;
6;;; 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.
10;;;
11;;; 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.
15;;;
16;;; You should have received a copy of the GNU General Public License
17;;; along with Guix. If not, see <http://www.gnu.org/licenses/>.
18
19(define-module (distro packages guile)
20 #:use-module (distro packages base)
21 #:use-module (guix packages)
22 #:use-module (guix http)
23 #:use-module (guix utils)
24 #:use-module (guix build-system gnu))
25
26;;; Commentary:
27;;;
28;;; Modules and extensions for GNU Guile.
29;;;
30;;; Code:
31
32(define (guile-reader guile)
33 "Build Guile-Reader against GUILE, a package of some version of Guile 1.8
34or 2.0."
35 (package
36 (name (string-append "guile-reader-for-guile-" (package-version guile)))
37 (version "0.6")
38 (source (origin
39 (method http-fetch)
40 (uri (string-append
41 "http://download-mirror.savannah.gnu.org/releases/guile-reader/guile-reader-"
42 version ".tar.gz"))
43 (sha256
44 (base32
45 "1svlyk5pm4fsdp2g7n6qffdl6fdggxnlicj0jn9s4lxd63gzxy1n"))))
46 (build-system gnu-build-system)
cb0d69ed 47 (native-inputs `(("pkgconfig" ,pkg-config)
e76bdf8b 48 ("gperf" ,(nixpkgs-derivation "gperf"))))
1722d680 49 (inputs `(("guile" ,guile)))
d45122f5 50 (synopsis "Guile-Reader, a simple framework for building readers for
1722d680 51GNU Guile")
d45122f5 52 (description
1722d680
LC
53"Guile-Reader is a simple framework for building readers for GNU Guile.
54
55The idea is to make it easy to build procedures that extend Guile’s read
56procedure. Readers supporting various syntax variants can easily be written,
57possibly by re-using existing “token readers” of a standard Scheme
58readers. For example, it is used to implement Skribilo’s R5RS-derived
59document syntax.
60
61Guile-Reader’s approach is similar to Common Lisp’s “read table”, but
62hopefully more powerful and flexible (for instance, one may instantiate as
63many readers as needed).")
64 (home-page "http://www.nongnu.org/guile-reader/")
65 (license "GPLv3+")))
66
67(define-public guile-reader/guile-1.8
68 ;; Guile-Reader built against Guile 1.8.
69 (guile-reader guile-1.8))
70
71(define-public guile-reader/guile-2.0
72 ;; Guile-Reader built against Guile 2.0.
73 (guile-reader guile-2.0))
74
75;;; guile.scm ends here