aboutsummaryrefslogtreecommitdiff
path: root/distro/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-09-26 22:17:41 +0200
committerLudovic Courtès <ludo@gnu.org>2012-09-26 23:00:36 +0200
commit1722d6800fb769804600f91a442e07903f8af00a (patch)
treeebc5d6a920145ef47d8f56df797a02b47b5a2a70 /distro/packages/base.scm
parent1f455fdca60c90710322d99ac529a31d71764a0d (diff)
downloadguix-1722d6800fb769804600f91a442e07903f8af00a.tar
guix-1722d6800fb769804600f91a442e07903f8af00a.tar.gz
distro: Add the `guile', `typesetting', and `databases' package modules.
* distro.scm (package-files): Adjust PREFIX-LEN to use the top-level directory, not %DISTRO-MODULE-DIRECTORY. * distro/packages/base.scm (guile-reader, guile-reader/guile-1.8, guile-reader/guile-2.0, lout, recutils): Move to... * distro/packages/guile.scm, distro/packages/typesetting.scm, distro/packages/databases.scm: ... here. New files. * Makefile.am (MODULES): Add them. (EXTRA_DIST): Add `.dir-locals.el'. * .dir-locals.el: New file, with settings formerly in `base.scm'.
Diffstat (limited to 'distro/packages/base.scm')
-rw-r--r--distro/packages/base.scm192
1 files changed, 2 insertions, 190 deletions
diff --git a/distro/packages/base.scm b/distro/packages/base.scm
index 67b8b1c602..cbe53999e5 100644
--- a/distro/packages/base.scm
+++ b/distro/packages/base.scm
@@ -30,7 +30,7 @@
;;; Commentary:
;;;
-;;; A Guix-based distribution.
+;;; Base packages of the Guix-based GNU user-land software distribution.
;;;
;;; Code:
@@ -1049,34 +1049,6 @@ internal in-memory representation.")
(home-page "http://www.gnu.org/software/libunistring/")
(license "LGPLv3+")))
-(define-public recutils
- (package
- (name "recutils")
- (version "1.5")
- (source (origin
- (method http-fetch)
- (uri (string-append "http://ftp.gnu.org/gnu/recutils/recutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "1v2xzwwwhc5j5kmvg4sv6baxjpsfqh8ln7ilv4mgb1408rs7xmky"))))
- (build-system gnu-build-system)
- (inputs `(("curl" ,(nixpkgs-derivation* "curl"))
- ("emacs" ,(nixpkgs-derivation* "emacs"))
- ("check" ,(nixpkgs-derivation* "check"))
- ("bc" ,(nixpkgs-derivation* "bc"))
- ("patch/gets"
- ,(search-patch "diffutils-gets-undeclared.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))
- (description "GNU recutils, tools and libraries to access human-editable,
-text-based databases")
- (long-description
- "GNU recutils is a set of tools and libraries to access human-editable,
-text-based databases called recfiles. The data is stored as a sequence of
-records, each record containing an arbitrary number of named fields.")
- (license "GPLv3+")
- (home-page "http://www.gnu.org/software/recutils/")))
-
(define-public guile-1.8
(package
(name "guile")
@@ -1763,164 +1735,4 @@ store.")
("gcc" ,gcc-final)
("libc" ,glibc-final))))
-
-;;;
-;;; Apps & libs --- TODO: move to separate module.
-;;;
-
-(define (guile-reader guile)
- "Build Guile-Reader against GUILE, a package of some version of Guile 1.8
-or 2.0."
- (package
- (name (string-append "guile-reader-for-guile-" (package-version guile)))
- (version "0.6")
- (source (origin
- (method http-fetch)
- (uri (string-append
- "http://download-mirror.savannah.gnu.org/releases/guile-reader/guile-reader-"
- version ".tar.gz"))
- (sha256
- (base32
- "1svlyk5pm4fsdp2g7n6qffdl6fdggxnlicj0jn9s4lxd63gzxy1n"))))
- (build-system gnu-build-system)
- (native-inputs `(("pkgconfig" ,(nixpkgs-derivation* "pkgconfig"))
- ("gperf" ,(nixpkgs-derivation* "gperf"))))
- (inputs `(("guile" ,guile)))
- (description "Guile-Reader, a simple framework for building readers for
-GNU Guile")
- (long-description
-"Guile-Reader is a simple framework for building readers for GNU Guile.
-
-The idea is to make it easy to build procedures that extend Guile’s read
-procedure. Readers supporting various syntax variants can easily be written,
-possibly by re-using existing “token readers” of a standard Scheme
-readers. For example, it is used to implement Skribilo’s R5RS-derived
-document syntax.
-
-Guile-Reader’s approach is similar to Common Lisp’s “read table”, but
-hopefully more powerful and flexible (for instance, one may instantiate as
-many readers as needed).")
- (home-page "http://www.nongnu.org/guile-reader/")
- (license "GPLv3+")))
-
-(define-public guile-reader/guile-1.8
- ;; Guile-Reader built against Guile 1.8.
- (guile-reader guile-1.8))
-
-(define-public guile-reader/guile-2.0
- ;; Guile-Reader built against Guile 2.0.
- (guile-reader guile-2.0))
-
-(define-public lout
- ;; This one is a bit tricky, because it doesn't follow the GNU Build System
- ;; rules. Instead, it has a makefile that has to be patched to set the
- ;; prefix, etc., and it has no makefile rules to build its doc.
- (let ((configure-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (doc (assoc-ref outputs "doc")))
- (substitute* "makefile"
- (("^PREFIX[[:blank:]]*=.*$")
- (string-append "PREFIX = " out "\n"))
- (("^LOUTLIBDIR[[:blank:]]*=.*$")
- (string-append "LOUTLIBDIR = " out "/lib/lout\n"))
- (("^LOUTDOCDIR[[:blank:]]*=.*$")
- (string-append "LOUTDOCDIR = " doc "/doc/lout\n"))
- (("^MANDIR[[:blank:]]*=.*$")
- (string-append "MANDIR = " out "/man\n")))
- (mkdir out)
- (mkdir (string-append out "/bin")) ; TODO: use `mkdir-p'
- (mkdir (string-append out "/lib"))
- (mkdir (string-append out "/man"))
- (mkdir doc)
- (mkdir (string-append doc "/doc"))
- (mkdir (string-append doc "/doc/lout")))))
- (install-man-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- (zero? (system* "make" "installman"))))
- (doc-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- (define out
- (assoc-ref outputs "doc"))
-
- (setenv "PATH"
- (string-append (assoc-ref outputs "out")
- "/bin:" (getenv "PATH")))
- (chdir "doc")
- (every (lambda (doc)
- (format #t "doc: building `~a'...~%" doc)
- (with-directory-excursion doc
- (let ((file (string-append out "/doc/lout/"
- doc ".ps")))
- (and (or (file-exists? "outfile.ps")
- (zero? (system* "lout" "-r4" "-o"
- "outfile.ps" "all")))
- (begin
- (copy-file "outfile.ps" file)
- #t)
- (zero? (system* "ps2pdf"
- "-dPDFSETTINGS=/prepress"
- "-sPAPERSIZE=a4"
- file
- (string-append out "/doc/lout/"
- doc ".pdf")))))))
- '("design" "expert" "slides" "user")))))
- (package
- (name "lout")
- (version "3.39")
- (source (origin
- (method http-fetch)
- ;; FIXME: `http-get' doesn't follow redirects, hence the URL.
- (uri (string-append
- "http://download-mirror.savannah.gnu.org/releases/lout/lout-"
- version ".tar.gz"))
- (sha256
- (base32
- "12gkyqrn0kaa8xq7sc7v3wm407pz2fxg9ngc75aybhi5z825b9vq"))))
- (build-system gnu-build-system) ; actually, just a makefile
- (outputs '("out" "doc"))
- (inputs `(("ghostscript" ,(nixpkgs-derivation* "ghostscript"))))
- (arguments `(#:modules ((guix build utils)
- (guix build gnu-build-system)
- (srfi srfi-1)) ; we need SRFI-1
- #:tests? #f ; no "check" target
-
- ;; Customize the build phases.
- #:phases (alist-replace
- 'configure ,configure-phase
-
- (alist-cons-after
- 'install 'install-man-pages
- ,install-man-phase
-
- (alist-cons-after
- 'install 'install-doc
- ,doc-phase
- %standard-phases)))))
- (description "Lout, a document layout system similar in style to LaTeX")
- (long-description
-"The Lout document formatting system is now reads a high-level description of
-a document similar in style to LaTeX and produces a PostScript or plain text
-output file.
-
-Lout offers an unprecedented range of advanced features, including optimal
-paragraph and page breaking, automatic hyphenation, PostScript EPS file
-inclusion and generation, equation formatting, tables, diagrams, rotation and
-scaling, sorted indexes, bibliographic databases, running headers and
-odd-even pages, automatic cross referencing, multilingual documents including
-hyphenation (most European languages are supported), formatting of computer
-programs, and much more, all ready to use. Furthermore, Lout is easily
-extended with definitions which are very much easier to write than troff of
-TeX macros because Lout is a high-level, purely functional language, the
-outcome of an eight-year research project that went back to the
-beginning.")
- (license "GPLv3+")
- (home-page "http://savannah.nongnu.org/projects/lout/"))))
-
-;;; Local Variables:
-;;; eval: (put 'lambda* 'scheme-indent-function 1)
-;;; eval: (put 'substitute* 'scheme-indent-function 1)
-;;; eval: (put 'with-directory-excursion 'scheme-indent-function 1)
-;;; eval: (put 'package 'scheme-indent-function 1)
-;;; eval: (put 'substitute-keyword-arguments 'scheme-indent-function 1)
-;;; End:
+;;; base.scm ends here