diff options
Diffstat (limited to 'distro')
-rw-r--r-- | distro/packages/algebra.scm | 27 | ||||
-rw-r--r-- | distro/packages/aspell.scm | 54 | ||||
-rw-r--r-- | distro/packages/dejagnu.scm | 87 | ||||
-rw-r--r-- | distro/packages/global.scm | 58 | ||||
-rw-r--r-- | distro/packages/tcl.scm | 96 |
5 files changed, 322 insertions, 0 deletions
diff --git a/distro/packages/algebra.scm b/distro/packages/algebra.scm index f348955094..0cbc5c4597 100644 --- a/distro/packages/algebra.scm +++ b/distro/packages/algebra.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,3 +75,29 @@ multiplication routines such as Toom–Cook and the FFT. ") solve the shortest vector problem.") (license lgpl2.1+) (home-page "http://perso.ens-lyon.fr/damien.stehle/fplll/"))) + +(define-public gsl + (package + (name "gsl") + (version "1.15") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gsl/gsl-" + version ".tar.gz")) + (sha256 + (base32 + "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5")))) + (build-system gnu-build-system) + (home-page "http://www.gnu.org/software/gsl/") + (synopsis "The GNU Scientific Library, a large numerical library") + (description + "The GNU Scientific Library (GSL) is a numerical library for C +and C++ programmers. It is free software under the GNU General +Public License. + +The library provides a wide range of mathematical routines such +as random number generators, special functions and least-squares +fitting. There are over 1000 functions in total with an +extensive test suite.") + (license gpl3+))) diff --git a/distro/packages/aspell.scm b/distro/packages/aspell.scm new file mode 100644 index 0000000000..a4c14c092c --- /dev/null +++ b/distro/packages/aspell.scm @@ -0,0 +1,54 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (distro packages aspell) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (distro packages perl)) + +(define-public aspell + (package + (name "aspell") + (version "0.60.6.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/aspell/aspell-" + version ".tar.gz")) + (sha256 + (base32 + "1qgn5psfyhbrnap275xjfrzppf5a83fb67gpql0kfqv37al869gm")))) + (build-system gnu-build-system) + (inputs `(("perl" ,perl))) + (home-page "http://aspell.net/") + (synopsis + "GNU Aspell, A spell checker for many languages") + (description + "GNU Aspell is a free spell checker designed to eventually replace +Ispell. It can either be used as a library or as an independent spell +checker. Its main feature is that it does a superior job of suggesting +possible replacements for a misspelled word than just about any other +spell checker out there for the English language. Unlike Ispell, Aspell +can also easily check documents in UTF-8 without having to use a special +dictionary. Aspell will also do its best to respect the current locale +setting. Other advantages over Ispell include support for using +multiple dictionaries at once and intelligently handling personal +dictionaries when more than one Aspell process is open at once.") + (license lgpl2.1+))) diff --git a/distro/packages/dejagnu.scm b/distro/packages/dejagnu.scm new file mode 100644 index 0000000000..bb735bfe37 --- /dev/null +++ b/distro/packages/dejagnu.scm @@ -0,0 +1,87 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (distro packages dejagnu) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (distro packages tcl)) + +(define-public dejagnu + (package + (name "dejagnu") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/dejagnu/dejagnu-" + version ".tar.gz")) + (sha256 + (base32 + "1nx3x3h96a82q92q108q71giv2nz9xmbbn2nrlr3wvvs6l45id68")))) + (build-system gnu-build-system) + (inputs `(("expect" ,expect))) + (arguments + '(#:phases (alist-replace + 'check + (lambda _ + ;; Note: The test-suite *requires* /dev/pts among the + ;; `build-chroot-dirs' of the build daemon when + ;; building in a chroot. See + ;; <http://thread.gmane.org/gmane.linux.distributions.nixos/1036> + ;; for details. + (if (and (directory-exists? "/dev/pts") + (directory-exists? "/proc")) + (begin + ;; Provide `runtest' with a log name, otherwise + ;; it tries to run `whoami', which fails when in + ;; a chroot. + (setenv "LOGNAME" "guix-builder") + + ;; The test-suite needs to have a non-empty stdin: + ;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>. + (zero? + (system "make check < /dev/zero"))) + (begin + (display "test suite cannot be run, skipping\n") + #t))) + (alist-cons-after + 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Use the right `expect' binary. + (let ((out (assoc-ref outputs "out")) + (expect (assoc-ref inputs "expect"))) + (substitute* (string-append out "/bin/runtest") + (("expectbin=expect") + (string-append "expectbin=" + expect "/bin/expect"))))) + %standard-phases)))) + (home-page + "http://www.gnu.org/software/dejagnu/") + (synopsis "The DejaGNU testing framework") + (description + "DejaGnu is a framework for testing other programs. Its purpose +is to provide a single front end for all tests. Think of it as a +custom library of Tcl procedures crafted to support writing a +test harness. A test harness is the testing infrastructure that +is created to support a specific program or tool. Each program +can have multiple testsuites, all supported by a single test +harness. DejaGnu is written in Expect, which in turn uses Tcl -- +Tool command language.") + (license gpl2+))) diff --git a/distro/packages/global.scm b/distro/packages/global.scm new file mode 100644 index 0000000000..ddd28c2887 --- /dev/null +++ b/distro/packages/global.scm @@ -0,0 +1,58 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (distro packages global) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (distro packages ncurses) + #:use-module (distro packages autotools) + #:use-module (distro)) + +(define-public global ; a global variable + (package + (name "global") + (version "6.2.7") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/global/global-" + version ".tar.gz")) + (sha256 + (base32 + "1dr250kz65wqpbms4lhz857mzmvmpmiaxgyqxvxkb4b0s840i14i")))) + (build-system gnu-build-system) + (inputs `(("ncurses" ,ncurses) + ("libtool" ,libtool))) + (arguments + `(#:configure-flags + (list (string-append "--with-ncurses=" + (assoc-ref %build-inputs "ncurses"))))) + (home-page "http://www.gnu.org/software/global/") + (synopsis "GNU GLOBAL source code tag system") + (description + "GNU GLOBAL is a source code tagging system that works the same way +across diverse environments (Emacs, vi, less, Bash, web browser, etc). +You can locate specified objects in source files and move there easily. +It is useful for hacking a large project containing many +subdirectories, many #ifdef and many main() functions. It is similar +to ctags or etags but is different from them at the point of +independence of any editor. It runs on a UNIX (POSIX) compatible +operating system like GNU and BSD.") + (license "GPLv3+"))) diff --git a/distro/packages/tcl.scm b/distro/packages/tcl.scm new file mode 100644 index 0000000000..369c986ffb --- /dev/null +++ b/distro/packages/tcl.scm @@ -0,0 +1,96 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (distro packages tcl) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses)) + +(define-public tcl + (package + (name "tcl") + (version "8.6.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/tcl/Tcl/" + version "/tcl" version "-src.tar.gz")) + (sha256 + (base32 + "1pnabp3xsja4rc8c01l9q1avb65a3zhdzci3j54qa5krqjwj4i1m")))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-cons-before + 'configure 'pre-configure + (lambda _ + (chdir "unix")) + (alist-cons-after + 'install 'install-private-headers + (lambda _ + ;; Private headers are needed by Expect. + (zero? (system* "make" "install-private-headers"))) + %standard-phases)) + #:tests? #f)) ; FIXME: use #:test-target "test" + (home-page "http://www.tcl.tk/") + (synopsis "The Tcl scripting language") + (description "The Tcl (Tool Command Language) scripting language.") + (license (bsd-style "http://www.tcl.tk/software/tcltk/license.html" + "Tcl/Tk license")))) + + +(define-public expect + (package + (name "expect") + (version "5.45") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/expect/Expect/" + version "/expect" version ".tar.gz")) + (sha256 + (base32 + "0h60bifxj876afz4im35rmnbnxjx4lbdqp2ja3k30fwa8a8cm3dj")))) + (build-system gnu-build-system) + (inputs + `(;; TODO: Add these optional dependencies. + ;; ("libX11" ,libX11) + ;; ("xproto" ,xproto) + ;; ("tk" ,tk) + ("tcl" ,tcl))) + (arguments + '(#:configure-flags + (list (string-append "--with-tcl=" + (assoc-ref %build-inputs "tcl") + "/lib") + (string-append "--with-tclinclude=" + (assoc-ref %build-inputs "tcl") + "/include") + (string-append "--exec-prefix=" + (assoc-ref %outputs "out"))) + #:tests? #f)) ; FIXME: use #:test-target "test" + (home-page "http://expect.nist.gov/") + (synopsis + "A tool for automating interactive applications") + (description + "Expect is a tool for automating interactive applications such as +telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this +stuff trivial. Expect is also useful for testing these same +applications. And by adding Tk, you can wrap interactive applications in +X11 GUIs.") + (license public-domain))) ; as written in `license.terms' |