summaryrefslogtreecommitdiff
path: root/distro/packages
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-01-18 01:06:24 +0100
committerLudovic Courtès <ludo@gnu.org>2013-01-18 01:07:31 +0100
commit1ffa7090b99dfd2f54fa883929c5e78d7852657a (patch)
tree1c8bd191e31212e172b3e9158408cccd571a5020 /distro/packages
parent08ba7ff318720d926215de83daed0da628908ca3 (diff)
downloadguix-patches-1ffa7090b99dfd2f54fa883929c5e78d7852657a.tar
guix-patches-1ffa7090b99dfd2f54fa883929c5e78d7852657a.tar.gz
distro: Change the module name space to (gnu ...).
* distro: Rename to... * gnu: ... this. Update module names accordingly. * Makefile.am: Adjust accordingly. * po/POTFILES.in: Likewise. * distro.scm: Search for files under /gnu/packages instead of /distro/packages. * gnu/packages/base.scm (ld-wrapper-boot3): Likewise.
Diffstat (limited to 'distro/packages')
-rw-r--r--distro/packages/acl.scm66
-rw-r--r--distro/packages/algebra.scm193
-rw-r--r--distro/packages/aspell.scm54
-rw-r--r--distro/packages/attr.scm77
-rw-r--r--distro/packages/autotools.scm144
-rw-r--r--distro/packages/base.scm1082
-rw-r--r--distro/packages/bash.scm110
-rw-r--r--distro/packages/bdb.scm57
-rw-r--r--distro/packages/bdw-gc.scm60
-rw-r--r--distro/packages/bison.scm57
-rw-r--r--distro/packages/bootstrap.scm378
-rwxr-xr-xdistro/packages/bootstrap/i686-linux/bashbin1331220 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/i686-linux/mkdirbin725756 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/i686-linux/tarbin1140196 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/i686-linux/xzbin865372 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/x86_64-linux/bashbin1419928 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/x86_64-linux/mkdirbin799312 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/x86_64-linux/tarbin1229888 -> 0 bytes
-rwxr-xr-xdistro/packages/bootstrap/x86_64-linux/xzbin926000 -> 0 bytes
-rw-r--r--distro/packages/check.scm48
-rw-r--r--distro/packages/compression.scm200
-rw-r--r--distro/packages/cpio.scm58
-rw-r--r--distro/packages/cyrus-sasl.scm57
-rw-r--r--distro/packages/ddrescue.scm60
-rw-r--r--distro/packages/dejagnu.scm88
-rw-r--r--distro/packages/ed.scm53
-rw-r--r--distro/packages/emacs.scm93
-rw-r--r--distro/packages/file.scm44
-rw-r--r--distro/packages/flex.scm63
-rw-r--r--distro/packages/gawk.scm71
-rw-r--r--distro/packages/gdb.scm65
-rw-r--r--distro/packages/gdbm.scm56
-rw-r--r--distro/packages/gettext.scm78
-rw-r--r--distro/packages/global.scm58
-rw-r--r--distro/packages/gnupg.scm168
-rw-r--r--distro/packages/gnutls.scm98
-rw-r--r--distro/packages/gperf.scm55
-rw-r--r--distro/packages/gsasl.scm113
-rw-r--r--distro/packages/guile.scm197
-rw-r--r--distro/packages/help2man.scm52
-rw-r--r--distro/packages/icu4c.scm66
-rw-r--r--distro/packages/idutils.scm65
-rw-r--r--distro/packages/indent.scm44
-rw-r--r--distro/packages/ld-wrapper.scm147
-rw-r--r--distro/packages/less.scm51
-rw-r--r--distro/packages/libffi.scm73
-rw-r--r--distro/packages/libidn.scm51
-rw-r--r--distro/packages/libjpeg.scm57
-rw-r--r--distro/packages/libsigsegv.scm47
-rw-r--r--distro/packages/libtiff.scm65
-rw-r--r--distro/packages/libunistring.scm58
-rw-r--r--distro/packages/libusb.scm44
-rw-r--r--distro/packages/linux.scm259
-rw-r--r--distro/packages/lout.scm132
-rw-r--r--distro/packages/lsh.scm126
-rw-r--r--distro/packages/m4.scm87
-rw-r--r--distro/packages/mailutils.scm106
-rw-r--r--distro/packages/make-bootstrap.scm562
-rw-r--r--distro/packages/mit-krb5.scm69
-rw-r--r--distro/packages/multiprecision.scm124
-rw-r--r--distro/packages/mysql.scm87
-rw-r--r--distro/packages/nano.scm52
-rw-r--r--distro/packages/ncurses.scm128
-rw-r--r--distro/packages/nettle.scm60
-rw-r--r--distro/packages/openssl.scm68
-rw-r--r--distro/packages/patches/bigloo-gc-shebangs.patch17
-rw-r--r--distro/packages/patches/binutils-ld-new-dtags.patch16
-rw-r--r--distro/packages/patches/cpio-gets-undeclared.patch45
-rw-r--r--distro/packages/patches/diffutils-gets-undeclared.patch71
-rw-r--r--distro/packages/patches/emacs-configure-sh.patch14
-rw-r--r--distro/packages/patches/findutils-absolute-paths.patch29
-rw-r--r--distro/packages/patches/flex-bison-tests.patch24
-rw-r--r--distro/packages/patches/gawk-shell.patch34
-rw-r--r--distro/packages/patches/gettext-gets-undeclared.patch77
-rw-r--r--distro/packages/patches/glibc-bootstrap-system.patch28
-rw-r--r--distro/packages/patches/glibc-no-ld-so-cache.patch53
-rw-r--r--distro/packages/patches/guile-1.8-cpp-4.5.patch24
-rw-r--r--distro/packages/patches/guile-default-utf8.patch111
-rw-r--r--distro/packages/patches/guile-relocatable.patch70
-rw-r--r--distro/packages/patches/libtool-skip-tests.patch37
-rw-r--r--distro/packages/patches/lsh-guile-compat.patch9
-rw-r--r--distro/packages/patches/lsh-no-root-login.patch16
-rw-r--r--distro/packages/patches/lsh-pam-service-name.patch14
-rw-r--r--distro/packages/patches/m4-gets-undeclared.patch45
-rw-r--r--distro/packages/patches/m4-readlink-EINVAL.patch18
-rw-r--r--distro/packages/patches/m4-s_isdir.patch14
-rw-r--r--distro/packages/patches/make-impure-dirs.patch40
-rw-r--r--distro/packages/patches/perl-no-sys-dirs.patch156
-rw-r--r--distro/packages/patches/procps-make-3.82.patch14
-rw-r--r--distro/packages/patches/readline-link-ncurses.patch18
-rw-r--r--distro/packages/patches/shishi-gets-undeclared.patch71
-rw-r--r--distro/packages/patches/tar-gets-undeclared.patch26
-rw-r--r--distro/packages/perl.scm73
-rw-r--r--distro/packages/pkg-config.scm51
-rw-r--r--distro/packages/pth.scm61
-rw-r--r--distro/packages/python.scm58
-rw-r--r--distro/packages/readline.scm79
-rw-r--r--distro/packages/recutils.scm57
-rw-r--r--distro/packages/rsync.scm51
-rw-r--r--distro/packages/scheme.scm168
-rw-r--r--distro/packages/shishi.scm71
-rw-r--r--distro/packages/system.scm91
-rw-r--r--distro/packages/tcl.scm109
-rw-r--r--distro/packages/texinfo.scm61
-rw-r--r--distro/packages/time.scm66
-rw-r--r--distro/packages/wget.scm61
-rw-r--r--distro/packages/which.scm48
-rw-r--r--distro/packages/xml.scm44
-rw-r--r--distro/packages/zile.scm66
109 files changed, 0 insertions, 8987 deletions
diff --git a/distro/packages/acl.scm b/distro/packages/acl.scm
deleted file mode 100644
index 068789b562..0000000000
--- a/distro/packages/acl.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 acl)
- #:use-module (guix licenses)
- #:use-module (distro packages attr)
- #:use-module (distro packages perl)
- #:use-module ((distro packages gettext)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public acl
- (package
- (name "acl")
- (version "2.2.51")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://savannah/acl/acl-"
- version ".src.tar.gz"))
- (sha256
- (base32
- "09aj30m49ivycl3irram8c3givc0crivjm3ymw0nhfaxrwhlb186"))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases
- (alist-cons-after
- 'configure 'patch-makefile-SHELL
- (lambda _
- (patch-makefile-SHELL "include/buildmacros"))
- (alist-replace
- 'check
- (lambda _
- (system* "make" "tests" "-C" "test")
-
- ;; XXX: Ignore the test result since this is
- ;; dependent on the underlying file system.
- #t)
- %standard-phases))))
- (inputs `(("attr" ,attr)
- ("gettext" ,guix:gettext)
- ("perl" ,perl)))
- (home-page
- "http://savannah.nongnu.org/projects/acl")
- (synopsis
- "Library and tools for manipulating access control lists")
- (description
- "Library and tools for manipulating access control lists.")
- (license '(gpl2+ lgpl2.1+))))
diff --git a/distro/packages/algebra.scm b/distro/packages/algebra.scm
deleted file mode 100644
index 7bbdd6c092..0000000000
--- a/distro/packages/algebra.scm
+++ /dev/null
@@ -1,193 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Andreas Enge <andreas@enge.fr>
-;;; 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 algebra)
- #:use-module (distro)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages perl)
- #:use-module (distro packages readline)
- #:use-module (distro packages flex)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-
-(define-public mpfrcx
- (package
- (name "mpfrcx")
- (version "0.4.1")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://www.multiprecision.org/mpfrcx/download/mpfrcx-"
- version ".tar.gz"))
- (sha256
- (base32
- "1rrc75chxyicqjgg5mfhgbz7p9mx1fgh0qlx14a82m25vfhifnd1"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)
- ("mpfr" ,mpfr)
- ("mpc" ,mpc)))
- (synopsis "mpfrcx, a library for the arithmetic of univariate polynomials
-over arbitrary precision real or complex numbers")
- (description
- "mpfrcx is a library for the arithmetic of univariate polynomials over
-arbitrary precision real (mpfr) or complex (mpc) numbers, without control
-on the rounding. For the time being, only the few functions needed to
-implement the floating point approach to complex multiplication are
-implemented. On the other hand, these comprise asymptotically fast
-multiplication routines such as Toom–Cook and the FFT. ")
- (license lgpl2.1+)
- (home-page "http://mpfrcx.multiprecision.org/")))
-
-(define-public fplll
- (package
- (name "fplll")
- (version "4.0.1")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://perso.ens-lyon.fr/damien.stehle/fplll/libfplll-"
- version ".tar.gz"))
- (sha256 (base32
- "122bpqdlikshhd7nmq0l5qfc0agyk7x21gvplv1l9hb77l8cy9rw"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)
- ("mpfr" ,mpfr)))
- (synopsis "fplll, a library for LLL-reduction of euclidean lattices")
- (description
- "fplll LLL-reduces euclidean lattices. Since version 3, it can also
-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+)))
-
-(define-public pari-gp
- (package
- (name "pari-gp")
- (version "2.5.3")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-"
- version ".tar.gz"))
- (sha256 (base32
- "0zsjccnnv00kwj2gk3ww2v530kjin1rgj8p8hbl4pwcnwc7m68gl"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)
- ("perl" ,perl)
- ("readline" ,readline)))
- (arguments
- (lambda (system)
- `(#:make-flags '("gp")
-;; FIXME: building the documentation requires tex; once this is available,
-;; replace "gp" by "all"
- #:test-target "dobench"
- #:phases
- (alist-replace
- 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (readline (assoc-ref inputs "readline"))
- (gmp (assoc-ref inputs "gmp")))
- (zero?
- (system* "./Configure"
- (string-append "--prefix=" out)
- (string-append "--with-readline=" readline)
- (string-append "--with-gmp=" gmp)))))
-;; FIXME: readline and gmp will be detected automatically in the next
-;; stable release
- %standard-phases))))
- (synopsis "PARI/GP, a computer algebra system for number theory")
- (description
- "PARI/GP is a widely used computer algebra system designed for fast
-computations in number theory (factorisations, algebraic number theory,
-elliptic curves...), but it also contains a large number of other useful
-functions to compute with mathematical entities such as matrices,
-polynomials, power series, algebraic numbers, etc., and a lot of
-transcendental functions.
-PARI is also available as a C library to allow for faster computations.")
- (license gpl2+)
- (home-page "http://pari.math.u-bordeaux.fr/")))
-
-(define-public bc
- (package
- (name "bc")
- (version "1.06")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/bc/bc-" version ".tar.gz"))
- (sha256
- (base32
- "0cqf5jkwx6awgd2xc2a0mkpxilzcfmhncdcfg7c9439wgkqxkxjf"))))
- (build-system gnu-build-system)
- (inputs `(("readline" ,readline)
- ("flex" ,flex)))
- (arguments
- '(#:phases
- (alist-replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- ;; This old `configure' script doesn't support
- ;; variables passed as arguments.
- (let ((out (assoc-ref outputs "out")))
- (setenv "CONFIG_SHELL" (which "bash"))
- (zero?
- (system* "./configure"
- (string-append "--prefix=" out)))))
- %standard-phases)))
- (home-page "http://www.gnu.org/software/bc/")
- (synopsis "GNU software calculator")
- (description
- "bc is an arbitrary precision numeric processing language. Syntax
-is similar to C, but differs in many substantial areas. It supports
-interactive execution of statements. bc is a utility included in the
-POSIX P1003.2/D11 draft standard.
-
-Since the POSIX document does not specify how bc must be implemented,
-this version does not use the historical method of having bc be a
-compiler for the dc calculator. This version has a single executable
-that both compiles the language and runs the resulting `byte code'. The
-byte code is not the dc language.")
- (license gpl2+)))
diff --git a/distro/packages/aspell.scm b/distro/packages/aspell.scm
deleted file mode 100644
index a4c14c092c..0000000000
--- a/distro/packages/aspell.scm
+++ /dev/null
@@ -1,54 +0,0 @@
-;;; 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/attr.scm b/distro/packages/attr.scm
deleted file mode 100644
index ae0d257dbe..0000000000
--- a/distro/packages/attr.scm
+++ /dev/null
@@ -1,77 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2012 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 attr)
- #:use-module (guix licenses)
- #:use-module (distro packages perl)
- #:use-module ((distro packages gettext)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public attr
- (package
- (name "attr")
- (version "2.4.46")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://savannah/attr/attr-"
- version ".src.tar.gz"))
- (sha256
- (base32
- "07qf6kb2zk512az481bbnsk9jycn477xpva1a726n5pzlzf9pmnw"))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases
- (alist-cons-after
- 'configure 'patch-makefile-SHELL
- (lambda _
- (patch-makefile-SHELL "include/buildmacros"))
- (alist-replace
- 'install
- (lambda _
- (zero? (system* "make"
- "install"
- "install-lib"
- "install-dev")))
- (alist-replace
- 'check
- (lambda _
- ;; Use the right shell.
- (substitute* "test/run"
- (("/bin/sh")
- (which "bash")))
-
- (system* "make" "tests" "-C" "test")
-
- ;; XXX: Ignore the test result since this is dependent on the
- ;; underlying file system.
- #t)
- %standard-phases)))))
- (inputs `(("perl" ,perl)
- ("gettext" ,guix:gettext)))
- (home-page
- "http://savannah.nongnu.org/projects/attr/")
- (synopsis
- "Library and tools for manipulating extended attributes")
- (description
- "Portable library and tools for manipulating extended attributes.")
- (license '(gpl2+ lgpl2.1+))))
diff --git a/distro/packages/autotools.scm b/distro/packages/autotools.scm
deleted file mode 100644
index 06568b2224..0000000000
--- a/distro/packages/autotools.scm
+++ /dev/null
@@ -1,144 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2012, 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 autotools)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages perl)
- #:use-module (distro packages m4)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public autoconf
- (package
- (name "autoconf")
- (version "2.69")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/autoconf/autoconf-"
- version ".tar.xz"))
- (sha256
- (base32
- "113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4"))))
- (build-system gnu-build-system)
- (inputs
- `(("perl" ,perl)
- ("m4" ,m4)))
- ;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It
- ;; should use our own "cpp" instead of "/lib/cpp".
- (arguments `(#:tests? #f))
- (home-page
- "http://www.gnu.org/software/autoconf/")
- (synopsis
- "GNU Autoconf, a part of the GNU Build System")
- (description
- "GNU Autoconf is an extensible package of M4 macros that produce
-shell scripts to automatically configure software source code
-packages. These scripts can adapt the packages to many kinds of
-UNIX-like systems without manual user intervention. Autoconf
-creates a configuration script for a package from a template
-file that lists the operating system features that the package
-can use, in the form of M4 macro calls.")
- (license gpl3+))) ; some files are under GPLv2+
-
-(define-public automake
- (package
- (name "automake")
- (version "1.12.6")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/automake/automake-"
- version ".tar.xz"))
- (sha256
- (base32
- "1ynvca8z4aqcwr94rf7j1bfiid2w9w250y9qhnyj9vmi8lhsnd7q"))))
- (build-system gnu-build-system)
- (inputs
- `(("autoconf" ,autoconf)
- ("perl" ,perl)))
- (home-page
- "http://www.gnu.org/software/automake/")
- (synopsis
- "GNU Automake, a GNU standard-compliant makefile generator")
- (description
- "GNU Automake is a tool for automatically generating
-`Makefile.in' files compliant with the GNU Coding
-Standards. Automake requires the use of Autoconf.")
- (license gpl2+))) ; some files are under GPLv3+
-
-(define-public libtool
- (package
- (name "libtool")
- (version "2.4.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/libtool/libtool-"
- version ".tar.gz"))
- (sha256
- (base32
- "0649qfpzkswgcj9vqkkr9rn4nlcx80faxpyqscy2k1x9c94f93dk"))))
- (build-system gnu-build-system)
- (native-inputs `(("m4" ,m4)
- ("perl" ,perl)))
-
- ;; Separate binaries from the rest. During bootstrap, only ltdl is
- ;; used; not depending on the binaries allows us to avoid retaining
- ;; a reference to the bootstrap bash.
- (outputs '("bin" ; libtoolize, libtool, etc.
- "out")) ; libltdl.so, ltdl.h, etc.
-
- (arguments
- `(#:patches (list (assoc-ref %build-inputs "patch/skip-tests"))
- #:phases (alist-cons-before
- 'check 'pre-check
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Run the test suite in parallel, if possible.
- (let ((ncores
- (cond
- ((getenv "NIX_BUILD_CORES")
- =>
- (lambda (n)
- (if (zero? (string->number n))
- (number->string (current-processor-count))
- n)))
- (else "1"))))
- (setenv "TESTSUITEFLAGS"
- (string-append "-j" ncores)))
-
- ;; Path references to /bin/sh.
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* "tests/testsuite"
- (("/bin/sh")
- (string-append bash "/bin/bash")))))
- %standard-phases)))
- (inputs `(("patch/skip-tests"
- ,(search-patch "libtool-skip-tests.patch"))))
- (synopsis "GNU Libtool, a generic library support script")
- (description
- "GNU libtool is a generic library support script. Libtool hides the
-complexity of using shared libraries behind a consistent, portable interface.
-
-To use libtool, add the new generic library building commands to your
-Makefile, Makefile.in, or Makefile.am. See the documentation for
-details.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/libtool/")))
diff --git a/distro/packages/base.scm b/distro/packages/base.scm
deleted file mode 100644
index bc705f16e7..0000000000
--- a/distro/packages/base.scm
+++ /dev/null
@@ -1,1082 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 base)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages acl)
- #:use-module (distro packages bash)
- #:use-module (distro packages bootstrap)
- #:use-module (distro packages compression)
- #:use-module (distro packages gawk)
- #:use-module (distro packages guile)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages perl)
- #:use-module (distro packages linux)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system trivial)
- #:use-module (guix utils)
- #:use-module (srfi srfi-1)
- #:use-module (srfi srfi-26)
- #:use-module (ice-9 match))
-
-;;; Commentary:
-;;;
-;;; Base packages of the Guix-based GNU user-land software distribution.
-;;;
-;;; Code:
-
-(define-public hello
- (package
- (name "hello")
- (version "2.8")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/hello/hello-" version
- ".tar.gz"))
- (sha256
- (base32 "0wqd8sjmxfskrflaxywc7gqw7sfawrfvdxd9skxawzfgyy0pzdz6"))))
- (build-system gnu-build-system)
- (arguments '(#:configure-flags
- `("--disable-dependency-tracking"
- ,(string-append "--with-gawk=" ; for illustration purposes
- (assoc-ref %build-inputs "gawk")))))
- (inputs `(("gawk" ,gawk)))
- (synopsis "GNU Hello")
- (description "Yeah...")
- (home-page "http://www.gnu.org/software/hello/")
- (license gpl3+)))
-
-(define-public grep
- (package
- (name "grep")
- (version "2.14")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/grep/grep-"
- version ".tar.xz"))
- (sha256
- (base32
- "1qbjb1l7f9blckc5pqy8jlf6482hpx4awn2acmhyf5mv9wfq03p7"))))
- (build-system gnu-build-system)
- (synopsis "GNU implementation of the Unix grep command")
- (description
- "The grep command searches one or more input files for lines containing a
-match to a specified pattern. By default, grep prints the matching
-lines.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/grep/")))
-
-(define-public sed
- (package
- (name "sed")
- (version "4.2.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/sed/sed-" version
- ".tar.bz2"))
- (sha256
- (base32
- "13wlsb4sf5d5a82xjhxqmdvrrn36rmw5f0pl9qyb9zkvldnb7hra"))))
- (build-system gnu-build-system)
- (synopsis "GNU sed, a batch stream editor")
- (arguments
- `(#:phases (alist-cons-before
- 'patch-source-shebangs 'patch-test-suite
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (patch-makefile-SHELL "testsuite/Makefile.tests")
- (substitute* '("testsuite/bsd.sh"
- "testsuite/bug-regex9.c")
- (("/bin/sh")
- (string-append bash "/bin/bash")))))
- %standard-phases)))
- (description
- "Sed (stream editor) isn't really a true text editor or text processor.
-Instead, it is used to filter text, i.e., it takes text input and performs
-some operation (or set of operations) on it and outputs the modified text.
-Sed is typically used for extracting part of a file using pattern matching or
-substituting multiple occurrences of a string within a file.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/sed/")))
-
-(define-public tar
- (package
- (name "tar")
- (version "1.26")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/tar/tar-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0hbdkzmchq9ycr2x1pxqdcgdbaxksh8c6ac0jf75jajhcks6jlss"))))
- (build-system gnu-build-system)
- (inputs `(("patch/gets" ,(search-patch "tar-gets-undeclared.patch"))))
- (arguments
- `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))
- (synopsis "GNU implementation of the `tar' archiver")
- (description
- "The Tar program provides the ability to create tar archives, as well as
-various other kinds of manipulation. For example, you can use Tar on
-previously created archives to extract files, to store additional files, or
-to update or list files which were already stored.
-
-Initially, tar archives were used to store files conveniently on magnetic
-tape. The name \"Tar\" comes from this use; it stands for tape archiver.
-Despite the utility's name, Tar can direct its output to available devices,
-files, or other programs (using pipes), it can even access remote devices or
-files (as archives).")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/tar/")))
-
-(define-public patch
- (package
- (name "patch")
- (version "2.6.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/patch/patch-"
- version ".tar.xz"))
- (sha256
- (base32
- "18012gxs9wc96izskp1q7bclrwns6rdmkn4jj31c8jbyfz6l5npq"))))
- (build-system gnu-build-system)
- (native-inputs '()) ; FIXME: needs `ed' for the tests
- (arguments
- (case-lambda
- ((system) '(#:tests? #f))
- ((system cross-system)
- '(#:configure-flags '("ac_cv_func_strnlen_working=yes")))))
- (synopsis "GNU Patch, a program to apply differences to files")
- (description
- "GNU Patch takes a patch file containing a difference listing produced by
-the diff program and applies those differences to one or more original files,
-producing patched versions.")
- (license gpl3+)
- (home-page "http://savannah.gnu.org/projects/patch/")))
-
-(define-public diffutils
- (package
- (name "diffutils")
- (version "3.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/diffutils/diffutils-"
- version ".tar.xz"))
- (sha256
- (base32
- "0jci0wv68025xd0s0rq4s5qxpx56dd9d730lka63qpzk1rfvfkxb"))))
- (build-system gnu-build-system)
- (inputs `(("patch/gets"
- ,(search-patch "diffutils-gets-undeclared.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))
- (synopsis "Programs to find differences among text files")
- (description
- "GNU Diffutils is a package of several programs related to finding
-differences between files.
-
-Computer users often find occasion to ask how two files differ. Perhaps one
-file is a newer version of the other file. Or maybe the two files started out
-as identical copies but were changed by different people.
-
-You can use the diff command to show differences between two files, or each
-corresponding file in two directories. diff outputs differences between files
-line by line in any of several formats, selectable by command line
-options. This set of differences is often called a ‘diff’ or ‘patch’. For
-files that are identical, diff normally produces no output; for
-binary (non-text) files, diff normally reports only that they are different.
-
-You can use the cmp command to show the offsets and line numbers where two
-files differ. cmp can also show all the characters that differ between the
-two files, side by side.
-
-You can use the diff3 command to show differences among three files. When two
-people have made independent changes to a common original, diff3 can report
-the differences between the original and the two changed versions, and can
-produce a merged file that contains both persons' changes together with
-warnings about conflicts.
-
-You can use the sdiff command to merge two files interactively.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/diffutils/")))
-
-(define-public findutils
- (package
- (name "findutils")
- (version "4.4.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/findutils/findutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "0amn0bbwqvsvvsh6drfwz20ydc2czk374lzw5kksbh6bf78k4ks3"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("patch/absolute-paths"
- ,(search-patch "findutils-absolute-paths.patch"))))
- (arguments
- (case-lambda
- ((system)
- `(#:patches (list (assoc-ref %build-inputs "patch/absolute-paths"))))
- ((system cross-system)
- ;; Work around cross-compilation failure.
- ;; See <http://savannah.gnu.org/bugs/?27299#comment1>.
- `(#:configure-flags '("gl_cv_func_wcwidth_works=yes")
- ,@(arguments cross-system)))))
- (synopsis "Basic directory searching utilities of the GNU operating
-system")
- (description
- "The GNU Find Utilities are the basic directory searching utilities of
-the GNU operating system. These programs are typically used in conjunction
-with other programs to provide modular and powerful directory search and file
-locating capabilities to other commands.
-
-The tools supplied with this package are:
-
- * find - search for files in a directory hierarchy;
- * locate - list files in databases that match a pattern;
- * updatedb - update a file name database;
- * xargs - build and execute command lines from standard input.
-")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/findutils/")))
-
-(define-public coreutils
- (package
- (name "coreutils")
- (version "8.20")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/coreutils/coreutils-"
- version ".tar.xz"))
- (sha256
- (base32
- "1cly97xdy3v4nbbx631k43smqw0nnpn651kkprs0yyl2cj3pkjyv"))))
- (build-system gnu-build-system)
- (inputs `(("acl" ,acl)
- ("gmp" ,gmp)
- ("perl" ,perl))) ; TODO: add SELinux
- (arguments
- `(#:parallel-build? #f ; help2man may be called too early
- #:phases (alist-cons-before
- 'build 'patch-shell-references
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* (cons "src/split.c"
- (find-files "gnulib-tests"
- "\\.c$"))
- (("/bin/sh")
- (format #f "~a/bin/sh" bash)))
- (substitute* (find-files "tests" "\\.sh$")
- (("#!/bin/sh")
- (format #f "#!~a/bin/bash" bash)))))
- %standard-phases)))
- (synopsis
- "The basic file, shell and text manipulation utilities of the GNU
-operating system")
- (description
- "The GNU Core Utilities are the basic file, shell and text manipulation
-utilities of the GNU operating system. These are the core utilities which
-are expected to exist on every operating system.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/coreutils/")))
-
-(define-public gnu-make
- (package
- (name "make")
- (version "3.82")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/make/make-" version
- ".tar.bz2"))
- (sha256
- (base32
- "0ri98385hsd7li6rh4l5afcq92v8l2lgiaz85wgcfh4w2wzsghg2"))))
- (build-system gnu-build-system)
- (native-inputs
- `(("patch/impure-dirs" ,(search-patch "make-impure-dirs.patch"))))
- (arguments
- '(#:patches (list (assoc-ref %build-inputs "patch/impure-dirs"))
- #:phases (alist-cons-before
- 'build 'set-default-shell
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Change the default shell from /bin/sh.
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* "job.c"
- (("default_shell\\[\\] =.*$")
- (format #f "default_shell[] = \"~a/bin/bash\";\n"
- bash)))))
- %standard-phases)))
- (synopsis "GNU Make, a program controlling the generation of non-source
-files from sources")
- (description
- "Make is a tool which controls the generation of executables and other
-non-source files of a program from the program's source files.
-
-Make gets its knowledge of how to build your program from a file called the
-makefile, which lists each of the non-source files and how to compute it from
-other files. When you write a program, you should write a makefile for it, so
-that it is possible to use Make to build and install the program.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/make/")))
-
-(define-public binutils
- (package
- (name "binutils")
- (version "2.22")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/binutils/binutils-"
- version ".tar.bz2"))
- (sha256
- (base32
- "1a9w66v5dwvbnawshjwqcgz7km6kw6ihkzp6sswv9ycc3knzhykc"))))
- (build-system gnu-build-system)
-
- ;; Split Binutils in several outputs, mostly to avoid collisions in
- ;; user profiles with GCC---e.g., libiberty.a.
- (outputs '("out" ; ar, ld, binutils.info, etc.
- "lib")) ; libbfd.a, bfd.h, etc.
-
- ;; TODO: Add dependency on zlib + those for Gold.
- (native-inputs
- `(("patch/new-dtags" ,(search-patch "binutils-ld-new-dtags.patch"))))
- (arguments
- `(#:patches (list (assoc-ref %build-inputs "patch/new-dtags"))
- #:configure-flags '(;; Add `-static-libgcc' to not retain a dependency
- ;; on GCC when bootstrapping.
- "LDFLAGS=-static-libgcc"
-
- ;; Don't search under /usr/lib & co.
- "--with-lib-path=/no-ld-lib-path")))
-
- (synopsis "GNU Binutils, tools for manipulating binaries (linker,
-assembler, etc.)")
- (description
- "The GNU Binutils are a collection of binary tools. The main ones are
-`ld' (the GNU linker) and `as' (the GNU assembler). They also include the
-BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/binutils/")))
-
-(define-public gcc-4.7
- (let ((stripped? #t)) ; TODO: make this a parameter
- (package
- (name "gcc")
- (version "4.7.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gcc/gcc-"
- version "/gcc-" version ".tar.bz2"))
- (sha256
- (base32
- "115h03hil99ljig8lkrq4qk426awmzh0g99wrrggxf8g07bq74la"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)
- ("mpfr" ,mpfr)
- ("mpc" ,mpc))) ; TODO: libelf, ppl, cloog, zlib, etc.
- (arguments
- (lambda (system)
- `(#:out-of-source? #t
- #:strip-binaries? ,stripped?
- #:configure-flags
- `("--enable-plugin"
- "--enable-languages=c,c++"
- "--disable-multilib"
-
- "--with-local-prefix=/no-gcc-local-prefix"
-
- ,(let ((libc (assoc-ref %build-inputs "libc")))
- (if libc
- (string-append "--with-native-system-header-dir=" libc
- "/include")
- "--without-headers")))
- #:make-flags
- (let ((libc (assoc-ref %build-inputs "libc")))
- `(,@(if libc
- (list (string-append "LDFLAGS_FOR_BUILD="
- "-L" libc "/lib "
- "-Wl,-dynamic-linker "
- "-Wl," libc
- ,(glibc-dynamic-linker system)))
- '())
- ,(string-append "BOOT_CFLAGS=-O2 "
- ,(if stripped? "-g0" "-g"))))
-
- #:tests? #f
- #:phases
- (alist-cons-before
- 'configure 'pre-configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (libc (assoc-ref inputs "libc")))
- (when libc
- ;; The following is not performed for `--without-headers'
- ;; cross-compiler builds.
-
- ;; Fix the dynamic linker's file name.
- (substitute* (find-files "gcc/config"
- "^linux(64|-elf)?\\.h$")
- (("#define GLIBC_DYNAMIC_LINKER([^ ]*).*$" _ suffix)
- (format #f "#define GLIBC_DYNAMIC_LINKER~a \"~a\"~%"
- suffix
- (string-append libc ,(glibc-dynamic-linker system)))))
-
- ;; Tell where to find libstdc++, libc, and `?crt*.o', except
- ;; `crt{begin,end}.o', which come with GCC.
- (substitute* (find-files "gcc/config"
- "^(gnu-user(64)?|linux-elf)\\.h$")
- (("#define LIB_SPEC (.*)$" _ suffix)
- ;; Note that with this "lib" spec, we may still add a
- ;; RUNPATH to GCC even when `libgcc_s' is not NEEDED.
- ;; There's not much that can be done to avoid it, though.
- (format #f "#define LIB_SPEC \"-L~a/lib %{!static:-rpath=~a/lib \
-%{!static-libgcc:-rpath=~a/lib64 -rpath=~a/lib}} \" ~a~%"
- libc libc out out suffix))
- (("#define STARTFILE_SPEC.*$" line)
- (format #f "#define STANDARD_STARTFILE_PREFIX_1 \"~a/lib\"
-#define STANDARD_STARTFILE_PREFIX_2 \"\"
-~a~%"
- libc line))))
-
- ;; Don't retain a dependency on the build-time sed.
- (substitute* "fixincludes/fixincl.x"
- (("static char const sed_cmd_z\\[\\] =.*;")
- "static char const sed_cmd_z[] = \"sed\";"))))
-
- (alist-cons-after
- 'configure 'post-configure
- (lambda _
- ;; Don't store configure flags, to avoid retaining references to
- ;; build-time dependencies---e.g., `--with-ppl=/nix/store/xxx'.
- (substitute* "Makefile"
- (("^TOPLEVEL_CONFIGURE_ARGUMENTS=(.*)$" _ rest)
- "TOPLEVEL_CONFIGURE_ARGUMENTS=\n")))
- (alist-replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (zero?
- (system* "make"
- ,(if stripped?
- "install-strip"
- "install"))))
- %standard-phases))))))
-
- (properties `((gcc-libc . ,(assoc-ref inputs "libc"))))
- (synopsis "The GNU Compiler Collection")
- (description
- "The GNU Compiler Collection includes compiler front ends for C, C++,
-Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well as
-libraries for these languages (libstdc++, libgcj, libgomp,...).
-
-GCC development is a part of the GNU Project, aiming to improve the compiler
-used in the GNU system including the GNU/Linux variant.")
- (license gpl3+)
- (home-page "http://gcc.gnu.org/"))))
-
-(define-public glibc
- (package
- (name "glibc")
- (version "2.17")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/glibc/glibc-"
- version ".tar.xz"))
- (sha256
- (base32
- "0gmjnn4kma9vgizccw1jv979xw55a8n1nkk94gg0l3hy80vy6539"))))
- (build-system gnu-build-system)
-
- ;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
- ;; users should automatically pull Linux headers as well.
- (propagated-inputs `(("linux-headers" ,linux-libre-headers)))
-
- (arguments
- `(#:out-of-source? #t
- #:patches (list (assoc-ref %build-inputs "patch/ld.so.cache"))
- #:configure-flags
- (list "--enable-add-ons"
- "--sysconfdir=/etc"
- "--localedir=/var/run/current-system/sw/lib/locale" ; XXX
- (string-append "--with-headers="
- (assoc-ref %build-inputs "linux-headers")
- "/include")
-
- ;; The default is to assume a 2.4 Linux interface, but we'll
- ;; always use something newer. See "kernel-features.h" in the
- ;; GNU libc for details.
- "--enable-kernel=2.6.30"
-
- ;; Use our Bash instead of /bin/sh.
- (string-append "BASH_SHELL="
- (assoc-ref %build-inputs "bash")
- "/bin/bash")
-
- ;; XXX: Work around "undefined reference to `__stack_chk_guard'".
- "libc_cv_ssp=no")
-
- #:tests? #f ; XXX
- #:phases (alist-cons-before
- 'configure 'pre-configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- ;; Use `pwd', not `/bin/pwd'.
- (substitute* "configure"
- (("/bin/pwd") "pwd"))
-
- ;; Install the rpc data base file under `$out/etc/rpc'.
- ;; FIXME: Use installFlags = [ "sysconfdir=$(out)/etc" ];
- (substitute* "sunrpc/Makefile"
- (("^\\$\\(inst_sysconfdir\\)/rpc(.*)$" _ suffix)
- (string-append out "/etc/rpc" suffix "\n"))
- (("^install-others =.*$")
- (string-append "install-others = " out "/etc/rpc\n")))
-
- (substitute* "Makeconfig"
- ;; According to
- ;; <http://www.linuxfromscratch.org/lfs/view/stable/chapter05/glibc.html>,
- ;; linking against libgcc_s is not needed with GCC
- ;; 4.7.1.
- ((" -lgcc_s") ""))
-
- ;; Copy a statically-linked Bash in the output, with
- ;; no references to other store paths.
- (mkdir-p bin)
- (copy-file (string-append (assoc-ref inputs "static-bash")
- "/bin/bash")
- (string-append bin "/bash"))
- (remove-store-references (string-append bin "/bash"))
- (chmod (string-append bin "/bash") #o555)
-
- ;; Keep a symlink, for `patch-shebang' resolution.
- (with-directory-excursion bin
- (symlink "bash" "sh"))
-
- ;; Have `system' use that Bash.
- (substitute* "sysdeps/posix/system.c"
- (("#define[[:blank:]]+SHELL_PATH.*$")
- (format #f "#define SHELL_PATH \"~a/bin/bash\"\n"
- out)))
-
- ;; Same for `popen'.
- (substitute* "libio/iopopen.c"
- (("/bin/sh")
- (string-append out "/bin/bash")))))
- %standard-phases)))
- (inputs `(("patch/ld.so.cache"
- ,(search-patch "glibc-no-ld-so-cache.patch"))
- ("static-bash" ,(static-package bash-light))))
- (synopsis "The GNU C Library")
- (description
- "Any Unix-like operating system needs a C library: the library which
-defines the \"system calls\" and other basic facilities such as open, malloc,
-printf, exit...
-
-The GNU C library is used as the C library in the GNU system and most systems
-with the Linux kernel.")
- (license lgpl2.0+)
- (home-page "http://www.gnu.org/software/libc/")))
-
-
-;;;
-;;; Bootstrap packages.
-;;;
-
-(define gnu-make-boot0
- (package-with-bootstrap-guile
- (package (inherit gnu-make)
- (name "make-boot0")
- (location (source-properties->location (current-source-location)))
- (arguments
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- #:tests? #f ; cannot run "make check"
- ,@(substitute-keyword-arguments (package-arguments gnu-make)
- ((#:phases phases)
- `(alist-replace
- 'build (lambda _
- (zero? (system* "./build.sh")))
- (alist-replace
- 'install (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (copy-file "make"
- (string-append bin "/make"))))
- ,phases))))))
- (inputs %bootstrap-inputs))))
-
-(define diffutils-boot0
- (package-with-bootstrap-guile
- (let ((p (package-with-explicit-inputs diffutils
- `(("make" ,gnu-make-boot0)
- ,@%bootstrap-inputs)
- #:guile %bootstrap-guile)))
- (package (inherit p)
- (location (source-properties->location (current-source-location)))
- (arguments `(#:tests? #f ; the test suite needs diffutils
- ,@(package-arguments p)))))))
-
-(define findutils-boot0
- (package-with-bootstrap-guile
- (package-with-explicit-inputs findutils
- `(("make" ,gnu-make-boot0)
- ("diffutils" ,diffutils-boot0) ; for tests
- ,@%bootstrap-inputs)
- (current-source-location)
- #:guile %bootstrap-guile)))
-
-
-(define %boot0-inputs
- `(("make" ,gnu-make-boot0)
- ("diffutils" ,diffutils-boot0)
- ("findutils" ,findutils-boot0)
- ,@%bootstrap-inputs))
-
-(define* (nix-system->gnu-triplet system #:optional (vendor "unknown"))
- "Return an a guess of the GNU triplet corresponding to Nix system
-identifier SYSTEM."
- (let* ((dash (string-index system #\-))
- (arch (substring system 0 dash))
- (os (substring system (+ 1 dash))))
- (string-append arch
- "-" vendor "-"
- (if (string=? os "linux")
- "linux-gnu"
- os))))
-
-(define boot-triplet
- ;; Return the triplet used to create the cross toolchain needed in the
- ;; first bootstrapping stage.
- (cut nix-system->gnu-triplet <> "guix"))
-
-;; Following Linux From Scratch, build a cross-toolchain in stage 0. That
-;; toolchain actually targets the same OS and arch, but it has the advantage
-;; of being independent of the libc and tools in %BOOTSTRAP-INPUTS, since
-;; GCC-BOOT0 (below) is built without any reference to the target libc.
-
-(define binutils-boot0
- (package-with-bootstrap-guile
- (package (inherit binutils)
- (name "binutils-cross-boot0")
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- ,@(substitute-keyword-arguments (package-arguments binutils)
- ((#:configure-flags cf)
- `(list ,(string-append "--target=" (boot-triplet system))))))))
- (inputs %boot0-inputs))))
-
-(define gcc-boot0
- (package-with-bootstrap-guile
- (package (inherit gcc-4.7)
- (name "gcc-cross-boot0")
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- #:modules ((guix build gnu-build-system)
- (guix build utils)
- (ice-9 regex)
- (srfi srfi-1)
- (srfi srfi-26))
- ,@(substitute-keyword-arguments ((package-arguments gcc-4.7) system)
- ((#:configure-flags flags)
- `(append (list ,(string-append "--target="
- (boot-triplet system))
-
- ;; No libc yet.
- "--without-headers"
-
- ;; Disable features not needed at this stage.
- "--disable-shared"
- "--enable-languages=c"
- "--disable-libmudflap"
- "--disable-libgomp"
- "--disable-libssp"
- "--disable-libquadmath"
- "--disable-decimal-float")
- (remove (cut string-match "--enable-languages.*" <>)
- ,flags)))
- ((#:phases phases)
- `(alist-cons-after
- 'unpack 'unpack-gmp&co
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((gmp (assoc-ref %build-inputs "gmp-source"))
- (mpfr (assoc-ref %build-inputs "mpfr-source"))
- (mpc (assoc-ref %build-inputs "mpc-source")))
-
- ;; To reduce the set of pre-built bootstrap inputs, build
- ;; GMP & co. from GCC.
- (for-each (lambda (source)
- (or (zero? (system* "tar" "xvf" source))
- (error "failed to unpack tarball"
- source)))
- (list gmp mpfr mpc))
-
- ;; Create symlinks like `gmp' -> `gmp-5.0.5'.
- ,@(map (lambda (lib)
- `(symlink ,(package-full-name lib)
- ,(package-name lib)))
- (list gmp mpfr mpc))
-
- ;; MPFR headers/lib are found under $(MPFR)/src, but
- ;; `configure' wrongfully tells MPC too look under
- ;; $(MPFR), so fix that.
- (substitute* "configure"
- (("extra_mpc_mpfr_configure_flags(.+)--with-mpfr-include=([^/]+)/mpfr(.*)--with-mpfr-lib=([^ ]+)/mpfr"
- _ equals include middle lib)
- (string-append "extra_mpc_mpfr_configure_flags" equals
- "--with-mpfr-include=" include
- "/mpfr/src" middle
- "--with-mpfr-lib=" lib
- "/mpfr/src"))
- (("gmpinc='-I([^ ]+)/mpfr -I([^ ]+)/mpfr" _ a b)
- (string-append "gmpinc='-I" a "/mpfr/src "
- "-I" b "/mpfr/src"))
- (("gmplibs='-L([^ ]+)/mpfr" _ a)
- (string-append "gmplibs='-L" a "/mpfr/src")))))
- (alist-cons-after
- 'install 'symlink-libgcc_eh
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; Glibc wants to link against libgcc_eh, so provide
- ;; it.
- (with-directory-excursion
- (string-append out "/lib/gcc/"
- ,(boot-triplet system)
- "/" ,(package-version gcc-4.7))
- (symlink "libgcc.a" "libgcc_eh.a"))))
- ,phases)))))))
-
- (inputs `(("gmp-source" ,(package-source gmp))
- ("mpfr-source" ,(package-source mpfr))
- ("mpc-source" ,(package-source mpc))
- ("binutils-cross" ,binutils-boot0)
-
- ;; Call it differently so that the builder can check whether
- ;; the "libc" input is #f.
- ("libc-native" ,@(assoc-ref %boot0-inputs "libc"))
- ,@(alist-delete "libc" %boot0-inputs))))))
-
-(define linux-libre-headers-boot0
- (package-with-bootstrap-guile
- (package (inherit linux-libre-headers)
- (arguments `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- ,@(package-arguments linux-libre-headers)))
- (native-inputs
- (let ((perl (package-with-explicit-inputs perl
- %boot0-inputs
- (current-source-location)
- #:guile %bootstrap-guile)))
- `(("perl" ,perl)
- ,@%boot0-inputs))))))
-
-(define %boot1-inputs
- ;; 2nd stage inputs.
- `(("gcc" ,gcc-boot0)
- ("binutils-cross" ,binutils-boot0)
-
- ;; Keep "binutils" here because the cross-gcc invokes `as', not the
- ;; cross-`as'.
- ,@%boot0-inputs))
-
-(define glibc-final-with-bootstrap-bash
- ;; The final libc, "cross-built". If everything went well, the resulting
- ;; store path has no dependencies. Actually, the really-final libc is
- ;; built just below; the only difference is that this one uses the
- ;; bootstrap Bash.
- (package-with-bootstrap-guile
- (package (inherit glibc)
- (name "glibc-intermediate")
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
-
- ,@(substitute-keyword-arguments (package-arguments glibc)
- ((#:configure-flags flags)
- `(append (list ,(string-append "--host=" (boot-triplet system))
- ,(string-append "--build="
- (nix-system->gnu-triplet system))
-
- ;; Build Sun/ONC RPC support. In particular,
- ;; install rpc/*.h.
- "--enable-obsolete-rpc")
- ,flags))))))
- (propagated-inputs `(("linux-headers" ,linux-libre-headers-boot0)))
- (inputs
- `( ;; A native GCC is needed to build `cross-rpcgen'.
- ("native-gcc" ,@(assoc-ref %boot0-inputs "gcc"))
-
- ;; Here, we use the bootstrap Bash, which is not satisfactory
- ;; because we don't want to depend on bootstrap tools.
- ("static-bash" ,@(assoc-ref %boot0-inputs "bash"))
-
- ,@%boot1-inputs
- ,@(alist-delete "static-bash"
- (package-inputs glibc))))))) ; patches
-
-(define (cross-gcc-wrapper gcc binutils glibc bash)
- "Return a wrapper for the pseudo-cross toolchain GCC/BINUTILS/GLIBC
-that makes it available under the native tool names."
- (package (inherit gcc-4.7)
- (name (string-append (package-name gcc) "-wrapped"))
- (source #f)
- (build-system trivial-build-system)
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:modules ((guix build utils))
- #:builder (begin
- (use-modules (guix build utils))
-
- (let* ((binutils (assoc-ref %build-inputs "binutils"))
- (gcc (assoc-ref %build-inputs "gcc"))
- (libc (assoc-ref %build-inputs "libc"))
- (bash (assoc-ref %build-inputs "bash"))
- (out (assoc-ref %outputs "out"))
- (bindir (string-append out "/bin"))
- (triplet ,(boot-triplet system)))
- (mkdir-p bindir)
- (with-directory-excursion bindir
- (for-each (lambda (tool)
- (symlink (string-append binutils "/bin/"
- triplet "-" tool)
- tool))
- '("ar" "ranlib"))
-
- ;; GCC-BOOT0 is a libc-less cross-compiler, so it
- ;; needs to be told where to find the crt files and
- ;; the dynamic linker.
- (call-with-output-file "gcc"
- (lambda (p)
- (format p "#!~a/bin/bash
-exec ~a/bin/~a-gcc -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
- bash
- gcc triplet
- libc libc
- ,(glibc-dynamic-linker system))))
-
- (chmod "gcc" #o555)))))))
- (native-inputs
- `(("binutils" ,binutils)
- ("gcc" ,gcc)
- ("libc" ,glibc)
- ("bash" ,bash)))
- (inputs '())))
-
-(define static-bash-for-glibc
- ;; A statically-linked Bash to be embedded in GLIBC-FINAL, for use by
- ;; system(3) & co.
- (let* ((gcc (cross-gcc-wrapper gcc-boot0 binutils-boot0
- glibc-final-with-bootstrap-bash
- (car (assoc-ref %boot1-inputs "bash"))))
- (bash (package (inherit bash-light)
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- ,@(package-arguments bash-light)))))))
- (package-with-bootstrap-guile
- (package-with-explicit-inputs (static-package bash)
- `(("gcc" ,gcc)
- ("libc" ,glibc-final-with-bootstrap-bash)
- ,@(fold alist-delete %boot1-inputs
- '("gcc" "libc")))
- (current-source-location)))))
-
-(define-public glibc-final
- ;; The final glibc, which embeds the statically-linked Bash built above.
- (package (inherit glibc-final-with-bootstrap-bash)
- (name "glibc")
- (inputs `(("static-bash" ,static-bash-for-glibc)
- ,@(alist-delete
- "static-bash"
- (package-inputs glibc-final-with-bootstrap-bash))))))
-
-(define gcc-boot0-wrapped
- ;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
- ;; non-cross names.
- (cross-gcc-wrapper gcc-boot0 binutils-boot0 glibc-final
- (car (assoc-ref %boot1-inputs "bash"))))
-
-(define %boot2-inputs
- ;; 3rd stage inputs.
- `(("libc" ,glibc-final)
- ("gcc" ,gcc-boot0-wrapped)
- ,@(fold alist-delete %boot1-inputs '("libc" "gcc"))))
-
-(define-public binutils-final
- (package-with-bootstrap-guile
- (package (inherit binutils)
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
- ,@(package-arguments binutils))))
- (inputs %boot2-inputs))))
-
-(define-public gcc-final
- ;; The final GCC.
- (package (inherit gcc-boot0)
- (name "gcc")
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:implicit-inputs? #f
-
- ;; Build again GMP & co. within GCC's build process, because it's hard
- ;; to do outside (because GCC-BOOT0 is a cross-compiler, and thus
- ;; doesn't honor $LIBRARY_PATH, which breaks `gnu-build-system'.)
- ,@(substitute-keyword-arguments ((package-arguments gcc-boot0) system)
- ((#:configure-flags boot-flags)
- (let loop ((args ((package-arguments gcc-4.7) system)))
- (match args
- ((#:configure-flags normal-flags _ ...)
- normal-flags)
- ((_ rest ...)
- (loop rest)))))
- ((#:phases phases)
- `(alist-delete 'symlink-libgcc_eh ,phases))))))
-
- (inputs `(("gmp-source" ,(package-source gmp))
- ("mpfr-source" ,(package-source mpfr))
- ("mpc-source" ,(package-source mpc))
- ("binutils" ,binutils-final)
- ,@%boot2-inputs))))
-
-(define ld-wrapper-boot3
- ;; A linker wrapper that uses the bootstrap Guile.
- (package
- (name "ld-wrapper-boot3")
- (version "0")
- (source #f)
- (build-system trivial-build-system)
- (inputs `(("binutils" ,binutils-final)
- ("guile" ,%bootstrap-guile)
- ("bash" ,@(assoc-ref %boot2-inputs "bash"))
- ("wrapper" ,(search-path %load-path
- "distro/packages/ld-wrapper.scm"))))
- (arguments
- `(#:guile ,%bootstrap-guile
- #:modules ((guix build utils))
- #:builder (begin
- (use-modules (guix build utils)
- (system base compile))
-
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin"))
- (ld (string-append bin "/ld"))
- (go (string-append bin "/ld.go")))
-
- (setvbuf (current-output-port) _IOLBF)
- (format #t "building ~s/bin/ld wrapper in ~s~%"
- (assoc-ref %build-inputs "binutils")
- out)
-
- (mkdir-p bin)
- (copy-file (assoc-ref %build-inputs "wrapper") ld)
- (substitute* ld
- (("@GUILE@")
- (string-append (assoc-ref %build-inputs "guile")
- "/bin/guile"))
- (("@BASH@")
- (string-append (assoc-ref %build-inputs "bash")
- "/bin/bash"))
- (("@LD@")
- (string-append (assoc-ref %build-inputs "binutils")
- "/bin/ld")))
- (chmod ld #o555)
- (compile-file ld #:output-file go)))))
- (synopsis "The linker wrapper")
- (description
- "The linker wrapper (or `ld-wrapper') wraps the linker to add any
-missing `-rpath' flags, and to detect any misuse of libraries outside of the
-store.")
- (home-page #f)
- (license gpl3+)))
-
-(define %boot3-inputs
- ;; 4th stage inputs.
- `(("gcc" ,gcc-final)
- ("ld-wrapper" ,ld-wrapper-boot3)
- ,@(alist-delete "gcc" %boot2-inputs)))
-
-(define-public bash-final
- ;; Link with `-static-libgcc' to make sure we don't retain a reference
- ;; to the bootstrap GCC.
- (package-with-bootstrap-guile
- (package-with-explicit-inputs (static-libgcc-package bash)
- %boot3-inputs
- (current-source-location)
- #:guile %bootstrap-guile)))
-
-(define %boot4-inputs
- ;; Now use the final Bash.
- `(("bash" ,bash-final)
- ,@(alist-delete "bash" %boot3-inputs)))
-
-(define-public guile-final
- (package-with-bootstrap-guile
- (package-with-explicit-inputs guile-2.0/fixed
- %boot4-inputs
- (current-source-location)
- #:guile %bootstrap-guile)))
-
-(define-public ld-wrapper
- ;; The final `ld' wrapper, which uses the final Guile.
- (package (inherit ld-wrapper-boot3)
- (name "ld-wrapper")
- (inputs `(("guile" ,guile-final)
- ("bash" ,bash-final)
- ,@(fold alist-delete (package-inputs ld-wrapper-boot3)
- '("guile" "bash"))))))
-
-(define-public %final-inputs
- ;; Final derivations used as implicit inputs by `gnu-build-system'.
- (let ((finalize (cut package-with-explicit-inputs <> %boot4-inputs
- (current-source-location))))
- `(,@(map (match-lambda
- ((name package)
- (list name (finalize package))))
- `(("tar" ,tar)
- ("gzip" ,gzip)
- ("bzip2" ,bzip2)
- ("xz" ,xz)
- ("diffutils" ,diffutils)
- ("patch" ,patch)
- ("coreutils" ,coreutils)
- ("sed" ,sed)
- ("grep" ,grep)
- ("findutils" ,findutils)
- ("gawk" ,gawk)
- ("make" ,gnu-make)))
- ("bash" ,bash-final)
- ("ld-wrapper" ,ld-wrapper)
- ("binutils" ,binutils-final)
- ("gcc" ,gcc-final)
- ("libc" ,glibc-final))))
-
-;;; base.scm ends here
diff --git a/distro/packages/bash.scm b/distro/packages/bash.scm
deleted file mode 100644
index 0306c7197e..0000000000
--- a/distro/packages/bash.scm
+++ /dev/null
@@ -1,110 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 bash)
- #:use-module (guix licenses)
- #:use-module (distro packages ncurses)
- #:use-module (distro packages readline)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public bash
- (let ((cppflags (string-join '("-DSYS_BASHRC='\"/etc/bashrc\"'"
- "-DSYS_BASH_LOGOUT='\"/etc/bash_logout\"'"
- "-DDEFAULT_PATH_VALUE='\"/no-such-path\"'"
- "-DSTANDARD_UTILS_PATH='\"/no-such-path\"'"
- "-DNON_INTERACTIVE_LOGIN_SHELLS"
- "-DSSH_SOURCE_BASHRC")
- " "))
- (post-install-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- ;; Add a `bash' -> `sh' link.
- (let ((out (assoc-ref outputs "out")))
- (with-directory-excursion (string-append out "/bin")
- (symlink "bash" "sh"))))))
- (package
- (name "bash")
- (version "4.2")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/bash/bash-" version ".tar.gz"))
- (sha256
- (base32
- "1n5kbblp5ykbz5q8aq88lsif2z0gnvddg9babk33024wxiwi2ym2"))))
- (build-system gnu-build-system)
- (inputs `(("readline" ,readline)
- ("ncurses" ,ncurses))) ; TODO: add texinfo
- (arguments
- `(#:configure-flags `("--with-installed-readline"
- ,,(string-append "CPPFLAGS=" cppflags)
- ,(string-append
- "LDFLAGS=-Wl,-rpath -Wl,"
- (assoc-ref %build-inputs "readline")
- "/lib"
- " -Wl,-rpath -Wl,"
- (assoc-ref %build-inputs "ncurses")
- "/lib"))
-
- ;; Bash is reportedly not parallel-safe. See, for instance,
- ;; <http://patches.openembedded.org/patch/32745/> and
- ;; <http://git.buildroot.net/buildroot/commit/?h=79e2d802ae7e376a413c02097790493e1f65c3a4>.
- #:parallel-build? #f
- #:parallel-tests? #f
-
- ;; XXX: The tests have a lot of hard-coded paths, so disable them
- ;; for now.
- #:tests? #f
-
- #:phases (alist-cons-after 'install 'post-install
- ,post-install-phase
- %standard-phases)))
- (synopsis "GNU Bourne-Again Shell")
- (description
- "Bash is the shell, or command language interpreter, that will appear in
-the GNU operating system. Bash is an sh-compatible shell that incorporates
-useful features from the Korn shell (ksh) and C shell (csh). It is intended
-to conform to the IEEE POSIX P1003.2/ISO 9945.2 Shell and Tools standard. It
-offers functional improvements over sh for both programming and interactive
-use. In addition, most sh scripts can be run by Bash without
-modification.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/bash/"))))
-
-(define-public bash-light
- ;; A stripped-down Bash for non-interactive use.
- (package (inherit bash)
- (name "bash-light")
- (inputs '()) ; no readline, no curses
- (arguments
- (let ((args `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1)
- (srfi srfi-26))
- ,@(package-arguments bash))))
- (substitute-keyword-arguments args
- ((#:configure-flags flags)
- `(list "--without-bash-malloc"
- "--disable-readline"
- "--disable-history"
- "--disable-help-builtin"
- "--disable-progcomp"
- "--disable-net-redirections"
- "--disable-nls")))))))
diff --git a/distro/packages/bdb.scm b/distro/packages/bdb.scm
deleted file mode 100644
index 93bf290231..0000000000
--- a/distro/packages/bdb.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 bdb)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public bdb
- (package
- (name "bdb")
- (version "5.3.21")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://download.oracle.com/berkeley-db/db-" version
- ".tar.gz"))
- (sha256 (base32
- "1f2g2612lf8djbwbwhxsvmffmf9d7693kh2l20195pqp0f9jmnfx"))))
- (build-system gnu-build-system)
- (arguments
- (lambda (system)
- `(#:tests? #f ; no check target available
- #:phases
- (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (zero?
- (system* "./dist/configure"
- (string-append "--prefix=" out)
- (string-append "CONFIG_SHELL=" (which "bash"))
- (string-append "SHELL=" (which "bash"))))))
- %standard-phases))))
- (synopsis "db, the Berkeley database")
- (description
- "Berkeley DB is an embeddable database allowing developers the choice of
-SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
- (license (bsd-style "file://LICENSE"
- "See LICENSE in the distribution."))
- (home-page "http://www.oracle.com/us/products/database/berkeley-db/overview/index.html")))
diff --git a/distro/packages/bdw-gc.scm b/distro/packages/bdw-gc.scm
deleted file mode 100644
index 5a397eaaa3..0000000000
--- a/distro/packages/bdw-gc.scm
+++ /dev/null
@@ -1,60 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 bdw-gc)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public libgc
- (package
- (name "libgc")
- (version "7.2alpha6")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-"
- version ".tar.gz"))
- (sha256
- (base32
- "05jwadjbrv8pr7z9cb4miskicxqpxm0pca4h2rg5cgbpajr2bx7b"))))
- (build-system gnu-build-system)
- (synopsis "The Boehm-Demers-Weiser conservative garbage collector
-for C and C++")
- (description
- "The Boehm-Demers-Weiser conservative garbage collector can be used
-as a garbage collecting replacement for C malloc or C++ new. It allows
-you to allocate memory basically as you normally would, without
-explicitly deallocating memory that is no longer useful. The collector
-automatically recycles memory when it determines that it can no longer
-be otherwise accessed.
-
-The collector is also used by a number of programming language
-implementations that either use C as intermediate code, want to
-facilitate easier interoperation with C libraries, or just prefer the
-simple collector interface.
-
-Alternatively, the garbage collector may be used as a leak detector for
-C or C++ programs, though that is not its primary goal.")
- (home-page "http://www.hpl.hp.com/personal/Hans_Boehm/gc/")
-
- ;; permissive X11-style license:
- ;; http://www.hpl.hp.com/personal/Hans_Boehm/gc/license.txt
- (license x11)))
diff --git a/distro/packages/bison.scm b/distro/packages/bison.scm
deleted file mode 100644
index b3111c30ab..0000000000
--- a/distro/packages/bison.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 bison)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages m4)
- #:use-module (distro packages perl))
-
-(define-public bison
- (package
- (name "bison")
- (version "2.6.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/bison/bison-"
- version ".tar.xz"))
- (sha256
- (base32
- "0y9svfkbw8jc8yv280hqzilpvlwg60gayck83jj98djmzaxr1w86"))))
- (build-system gnu-build-system)
- (inputs `(("perl" ,perl)))
- (propagated-inputs `(("m4" ,m4)))
- (home-page "http://www.gnu.org/software/bison/")
- (synopsis
- "GNU Bison, a Yacc-compatible parser generator")
- (description
- "Bison is a general-purpose parser generator that converts an
-annotated context-free grammar into an LALR(1) or GLR parser for
-that grammar. Once you are proficient with Bison, you can use
-it to develop a wide range of language parsers, from those used
-in simple desk calculators to complex programming languages.
-
-Bison is upward compatible with Yacc: all properly-written Yacc
-grammars ought to work with Bison with no change. Anyone
-familiar with Yacc should be able to use Bison with little
-trouble. You need to be fluent in C or C++ programming in order
-to use Bison.")
- (license gpl3+)))
diff --git a/distro/packages/bootstrap.scm b/distro/packages/bootstrap.scm
deleted file mode 100644
index 27183162b5..0000000000
--- a/distro/packages/bootstrap.scm
+++ /dev/null
@@ -1,378 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 bootstrap)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system)
- #:use-module (guix build-system gnu)
- #:use-module (guix build-system trivial)
- #:use-module ((guix store) #:select (add-to-store add-text-to-store))
- #:use-module ((guix derivations) #:select (derivation))
- #:use-module (guix utils)
- #:use-module (srfi srfi-1)
- #:use-module (srfi srfi-26)
- #:use-module (ice-9 match)
- #:export (bootstrap-origin
- package-with-bootstrap-guile
- glibc-dynamic-linker
-
- %bootstrap-guile
- %bootstrap-coreutils&co
- %bootstrap-binutils
- %bootstrap-gcc
- %bootstrap-glibc
- %bootstrap-inputs))
-
-;;; Commentary:
-;;;
-;;; Pre-built packages that are used to bootstrap the
-;;; distribution--i.e., to build all the core packages from scratch.
-;;;
-;;; Code:
-
-
-
-;;;
-;;; Helper procedures.
-;;;
-
-(define (bootstrap-origin source)
- "Return a variant of SOURCE, an <origin> instance, whose method uses
-%BOOTSTRAP-GUILE to do its job."
- (define (boot fetch)
- (lambda* (store url hash-algo hash
- #:optional name #:key system)
- (fetch store url hash-algo hash
- #:guile %bootstrap-guile
- #:system system)))
-
- (let ((orig-method (origin-method source)))
- (origin (inherit source)
- (method (cond ((eq? orig-method url-fetch)
- (boot url-fetch))
- (else orig-method))))))
-
-(define (package-from-tarball name* source* program-to-test description*)
- "Return a package that correspond to the extraction of SOURCE*.
-PROGRAM-TO-TEST is a program to run after extraction of SOURCE*, to
-check whether everything is alright."
- (package
- (name name*)
- (version "0")
- (source #f)
- (build-system trivial-build-system)
- (arguments
- `(#:guile ,%bootstrap-guile
- #:modules ((guix build utils))
- #:builder
- (let ((out (assoc-ref %outputs "out"))
- (tar (assoc-ref %build-inputs "tar"))
- (xz (assoc-ref %build-inputs "xz"))
- (tarball (assoc-ref %build-inputs "tarball")))
- (use-modules (guix build utils))
-
- (mkdir out)
- (copy-file tarball "binaries.tar.xz")
- (system* xz "-d" "binaries.tar.xz")
- (let ((builddir (getcwd)))
- (with-directory-excursion out
- (and (zero? (system* tar "xvf"
- (string-append builddir "/binaries.tar")))
- (zero? (system* (string-append "bin/" ,program-to-test)
- "--version"))))))))
- (inputs
- `(("tar" ,(lambda (system)
- (search-bootstrap-binary "tar" system)))
- ("xz" ,(lambda (system)
- (search-bootstrap-binary "xz" system)))
- ("tarball" ,(lambda (system)
- (bootstrap-origin (source* system))))))
- (synopsis description*)
- (description #f)
- (home-page #f)))
-
-(define package-with-bootstrap-guile
- (memoize
- (lambda (p)
- "Return a variant of P such that all its origins are fetched with
-%BOOTSTRAP-GUILE."
- (define rewritten-input
- (match-lambda
- ((name (? origin? o))
- `(,name ,(bootstrap-origin o)))
- ((name (? package? p) sub-drvs ...)
- `(,name ,(package-with-bootstrap-guile p) ,@sub-drvs))
- (x x)))
-
- (package (inherit p)
- (source (match (package-source p)
- ((? origin? o) (bootstrap-origin o))
- (s s)))
- (inputs (map rewritten-input
- (package-inputs p)))
- (native-inputs (map rewritten-input
- (package-native-inputs p)))
- (propagated-inputs (map rewritten-input
- (package-propagated-inputs p)))))))
-
-(define (glibc-dynamic-linker system)
- "Return the name of Glibc's dynamic linker for SYSTEM."
- (cond ((string=? system "x86_64-linux") "/lib/ld-linux-x86-64.so.2")
- ((string=? system "i686-linux") "/lib/ld-linux.so.2")
- (else (error "dynamic linker name not known for this system"
- system))))
-
-
-;;;
-;;; Bootstrap packages.
-;;;
-
-(define %bootstrap-guile
- ;; The Guile used to run the build scripts of the initial derivations.
- ;; It is just unpacked from a tarball containing a pre-built binary.
- ;; This is typically built using %GUILE-BOOTSTRAP-TARBALL below.
- ;;
- ;; XXX: Would need libc's `libnss_files2.so' for proper `getaddrinfo'
- ;; support (for /etc/services).
- (let ((raw (build-system
- (name "raw")
- (description "Raw build system with direct store access")
- (build (lambda* (store name source inputs #:key outputs system)
- (define (->store file)
- (add-to-store store file #t #t "sha256"
- (or (search-bootstrap-binary file
- system)
- (error "bootstrap binary not found"
- file system))))
-
- (let* ((tar (->store "tar"))
- (xz (->store "xz"))
- (mkdir (->store "mkdir"))
- (bash (->store "bash"))
- (guile (->store "guile-2.0.7.tar.xz"))
- (builder
- (add-text-to-store store
- "build-bootstrap-guile.sh"
- (format #f "
-echo \"unpacking bootstrap Guile to '$out'...\"
-~a $out
-cd $out
-~a -dc < ~a | ~a xv
-
-# Sanity check.
-$out/bin/guile --version~%"
- mkdir xz guile tar)
- (list mkdir xz guile tar))))
- (derivation store name system
- bash `(,builder) '()
- `((,bash) (,builder)))))))))
- (package
- (name "guile-bootstrap")
- (version "2.0")
- (source #f)
- (build-system raw)
- (synopsis "Bootstrap Guile")
- (description "Pre-built Guile for bootstrapping purposes.")
- (home-page #f)
- (license lgpl3+))))
-
-(define %bootstrap-base-urls
- ;; This is where the initial binaries come from.
- '("http://alpha.gnu.org/gnu/guix/bootstrap"
- "http://www.fdn.fr/~lcourtes/software/guix/packages"))
-
-(define %bootstrap-coreutils&co
- (package-from-tarball "bootstrap-binaries"
- (lambda (system)
- (origin
- (method url-fetch)
- (uri (map (cut string-append <> "/" system
- "/20130105/static-binaries.tar.xz")
- %bootstrap-base-urls))
- (sha256
- (match system
- ("x86_64-linux"
- (base32
- "0md23alzy6nc5f16pric7mkagczdzr8xbh074sb3rjzrls06j1ls"))
- ("i686-linux"
- (base32
- "0nzj1lmm9b94g7k737cr4w1dv282w5nmhb53238ikax9r6pkc0yb"))))))
- "true" ; the program to test
- "Bootstrap binaries of Coreutils, Awk, etc."))
-
-(define %bootstrap-binutils
- (package-from-tarball "binutils-bootstrap"
- (lambda (system)
- (origin
- (method url-fetch)
- (uri (map (cut string-append <> "/" system
- "/20130105/binutils-2.22.tar.xz")
- %bootstrap-base-urls))
- (sha256
- (match system
- ("x86_64-linux"
- (base32
- "1ffmk2yy2pxvkqgzrkzp3s4jpn4qaaksyk3b5nsc5cjwfm7qkgzh"))
- ("i686-linux"
- (base32
- "1rafk6aq4sayvv3r3d2khn93nkyzf002xzh0xadlyci4mznr6b0a"))))))
- "ld" ; the program to test
- "Bootstrap binaries of the GNU Binutils"))
-
-(define %bootstrap-glibc
- ;; The initial libc.
- (package
- (name "glibc-bootstrap")
- (version "0")
- (source #f)
- (build-system trivial-build-system)
- (arguments
- `(#:guile ,%bootstrap-guile
- #:modules ((guix build utils))
- #:builder
- (let ((out (assoc-ref %outputs "out"))
- (tar (assoc-ref %build-inputs "tar"))
- (xz (assoc-ref %build-inputs "xz"))
- (tarball (assoc-ref %build-inputs "tarball")))
- (use-modules (guix build utils))
-
- (mkdir out)
- (copy-file tarball "binaries.tar.xz")
- (system* xz "-d" "binaries.tar.xz")
- (let ((builddir (getcwd)))
- (with-directory-excursion out
- (system* tar "xvf"
- (string-append builddir
- "/binaries.tar"))
- (chmod "lib" #o755)
-
- ;; Patch libc.so so it refers to the right path.
- (substitute* "lib/libc.so"
- (("/[^ ]+/lib/(libc|ld)" _ prefix)
- (string-append out "/lib/" prefix))))))))
- (inputs
- `(("tar" ,(lambda (system)
- (search-bootstrap-binary "tar" system)))
- ("xz" ,(lambda (system)
- (search-bootstrap-binary "xz" system)))
- ("tarball" ,(lambda (system)
- (bootstrap-origin
- (origin
- (method url-fetch)
- (uri (map (cut string-append <> "/" system
- "/20130105/glibc-2.17.tar.xz")
- %bootstrap-base-urls))
- (sha256
- (match system
- ("x86_64-linux"
- (base32
- "18kv1z9d8dr1j3hm9w7663kchqw9p6rsx11n1m143jgba2jz6jy3"))
- ("i686-linux"
- (base32
- "08hv8i0axwnihrcgbz19x0a7s6zyv3yx38x8r29liwl8h82x9g88"))))))))))
- (synopsis "Bootstrap binaries and headers of the GNU C Library")
- (description #f)
- (home-page #f)))
-
-(define %bootstrap-gcc
- ;; The initial GCC. Uses binaries from a tarball typically built by
- ;; %GCC-BOOTSTRAP-TARBALL.
- (package
- (name "gcc-bootstrap")
- (version "0")
- (source #f)
- (build-system trivial-build-system)
- (arguments
- (lambda (system)
- `(#:guile ,%bootstrap-guile
- #:modules ((guix build utils))
- #:builder
- (let ((out (assoc-ref %outputs "out"))
- (tar (assoc-ref %build-inputs "tar"))
- (xz (assoc-ref %build-inputs "xz"))
- (bash (assoc-ref %build-inputs "bash"))
- (libc (assoc-ref %build-inputs "libc"))
- (tarball (assoc-ref %build-inputs "tarball")))
- (use-modules (guix build utils)
- (ice-9 popen))
-
- (mkdir out)
- (copy-file tarball "binaries.tar.xz")
- (system* xz "-d" "binaries.tar.xz")
- (let ((builddir (getcwd))
- (bindir (string-append out "/bin")))
- (with-directory-excursion out
- (system* tar "xvf"
- (string-append builddir "/binaries.tar")))
-
- (with-directory-excursion bindir
- (chmod "." #o755)
- (rename-file "gcc" ".gcc-wrapped")
- (call-with-output-file "gcc"
- (lambda (p)
- (format p "#!~a
-exec ~a/bin/.gcc-wrapped -B~a/lib \
- -Wl,-rpath -Wl,~a/lib \
- -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
- bash
- out libc libc libc
- ,(glibc-dynamic-linker system))))
-
- (chmod "gcc" #o555)))))))
- (inputs
- `(("tar" ,(lambda (system)
- (search-bootstrap-binary "tar" system)))
- ("xz" ,(lambda (system)
- (search-bootstrap-binary "xz" system)))
- ("bash" ,(lambda (system)
- (search-bootstrap-binary "bash" system)))
- ("libc" ,%bootstrap-glibc)
- ("tarball" ,(lambda (system)
- (bootstrap-origin
- (origin
- (method url-fetch)
- (uri (map (cut string-append <> "/" system
- "/20130105/gcc-4.7.2.tar.xz")
- %bootstrap-base-urls))
- (sha256
- (match system
- ("x86_64-linux"
- (base32
- "1x1p7han5crnbw906iwdifykr6grzm0w27dy9gz75j0q1b32i4px"))
- ("i686-linux"
- (base32
- "06wqs0xxnpw3hn0xjb4c9cs0899p1xwkcysa2rvzhvpra0c5vsg2"))))))))))
- (synopsis "Bootstrap binaries of the GNU Compiler Collection")
- (description #f)
- (home-page #f)))
-
-(define %bootstrap-inputs
- ;; The initial, pre-built inputs. From now on, we can start building our
- ;; own packages.
- `(("libc" ,%bootstrap-glibc)
- ("gcc" ,%bootstrap-gcc)
- ("binutils" ,%bootstrap-binutils)
- ("coreutils&co" ,%bootstrap-coreutils&co)
-
- ;; In gnu-build-system.scm, we rely on the availability of Bash.
- ("bash" ,%bootstrap-coreutils&co)))
-
-;;; bootstrap.scm ends here
diff --git a/distro/packages/bootstrap/i686-linux/bash b/distro/packages/bootstrap/i686-linux/bash
deleted file mode 100755
index 9882d4adc7..0000000000
--- a/distro/packages/bootstrap/i686-linux/bash
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/i686-linux/mkdir b/distro/packages/bootstrap/i686-linux/mkdir
deleted file mode 100755
index 0ddab232b7..0000000000
--- a/distro/packages/bootstrap/i686-linux/mkdir
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/i686-linux/tar b/distro/packages/bootstrap/i686-linux/tar
deleted file mode 100755
index 6bee702cf5..0000000000
--- a/distro/packages/bootstrap/i686-linux/tar
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/i686-linux/xz b/distro/packages/bootstrap/i686-linux/xz
deleted file mode 100755
index 5a126e4fc5..0000000000
--- a/distro/packages/bootstrap/i686-linux/xz
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/x86_64-linux/bash b/distro/packages/bootstrap/x86_64-linux/bash
deleted file mode 100755
index 3b0227fbb1..0000000000
--- a/distro/packages/bootstrap/x86_64-linux/bash
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/x86_64-linux/mkdir b/distro/packages/bootstrap/x86_64-linux/mkdir
deleted file mode 100755
index 7207ad8a46..0000000000
--- a/distro/packages/bootstrap/x86_64-linux/mkdir
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/x86_64-linux/tar b/distro/packages/bootstrap/x86_64-linux/tar
deleted file mode 100755
index 9104da7b53..0000000000
--- a/distro/packages/bootstrap/x86_64-linux/tar
+++ /dev/null
Binary files differ
diff --git a/distro/packages/bootstrap/x86_64-linux/xz b/distro/packages/bootstrap/x86_64-linux/xz
deleted file mode 100755
index 488e319b37..0000000000
--- a/distro/packages/bootstrap/x86_64-linux/xz
+++ /dev/null
Binary files differ
diff --git a/distro/packages/check.scm b/distro/packages/check.scm
deleted file mode 100644
index 49197cc135..0000000000
--- a/distro/packages/check.scm
+++ /dev/null
@@ -1,48 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 check)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public check
- (package
- (name "check")
- (version "0.9.9")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/check/check/"
- version "/check-" version ".tar.gz"))
- (sha256
- (base32
- "1jcahzrvxcnp5chdn2x46l0y4aba8d8yd70lljfin7h5knxrlyhs"))))
- (build-system gnu-build-system)
- (home-page "http://check.sourceforge.net/")
- (synopsis "Check, a unit testing framework for C")
- (description
- "Check is a unit testing framework for C. It features a simple
-interface for defining unit tests, putting little in the way of the
-developer. Tests are run in a separate address space, so Check can
-catch both assertion failures and code errors that cause segmentation
-faults or other signals. The output from unit tests can be used within
-source code editors and IDEs.")
- (license lgpl2.1+)))
diff --git a/distro/packages/compression.scm b/distro/packages/compression.scm
deleted file mode 100644
index 51a2d70e2d..0000000000
--- a/distro/packages/compression.scm
+++ /dev/null
@@ -1,200 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 compression)
- #:use-module ((guix licenses)
- #:renamer (symbol-prefix-proc 'license:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public zlib
- (package
- (name "zlib")
- (version "1.2.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://zlib.net/zlib-"
- version ".tar.gz"))
- (sha256
- (base32
- "1i96gsdvxqb6skp9a58bacf1wxamwi9m9pg4yn7cpf7g7239r77s"))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Zlib's home-made `configure' doesn't fails when passed
- ;; extra flags like `--enable-fast-install', so we need to
- ;; invoke it with just what it understand.
- (let ((out (assoc-ref outputs "out")))
- (zero? (system* "./configure"
- (string-append "--prefix=" out)))))
- %standard-phases)))
- (home-page "http://zlib.net/")
- (synopsis "The zlib compression library")
- (description
- "zlib is designed to be a free, general-purpose, legally unencumbered --
-that is, not covered by any patents -- lossless data-compression library for
-use on virtually any computer hardware and operating system. The zlib data
-format is itself portable across platforms. Unlike the LZW compression method
-used in Unix compress(1) and in the GIF image format, the compression method
-currently used in zlib essentially never expands the data. (LZW can double or
-triple the file size in extreme cases.) zlib's memory footprint is also
-independent of the input data and can be reduced, if necessary, at some cost
-in compression.")
- (license license:zlib)))
-
-(define-public gzip
- (package
- (name "gzip")
- (version "1.5")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gzip/gzip-"
- version ".tar.gz"))
- (sha256
- (base32
- "18rm80kar7n016g8bsyy1a3zk50i2826xdgs874yh64rzj7nxmdm"))))
- (build-system gnu-build-system)
- (synopsis "Gzip, the GNU zip compression program")
- (arguments
- ;; FIXME: The test suite wants `less', and optionally Perl.
- '(#:tests? #f))
- (description
- "gzip (GNU zip) is a popular data compression program written by Jean-loup
-Gailly for the GNU project. Mark Adler wrote the decompression part.
-
-We developed this program as a replacement for compress because of the Unisys
-and IBM patents covering the LZW algorithm used by compress. These patents
-made it impossible for us to use compress, and we needed a replacement. The
-superior compression ratio of gzip is just a bonus.")
- (license license:gpl3+)
- (home-page "http://www.gnu.org/software/gzip/")))
-
-(define-public bzip2
- (let ((fix-man-dir
- ;; Move man pages to $out/share/.
- '(lambda* (#:key outputs #:allow-other-keys)
- (with-directory-excursion (assoc-ref outputs "out")
- (mkdir "share")
- (rename-file "man" "share"))))
- (build-shared-lib
- ;; Build a shared library.
- '(lambda* (#:key inputs #:allow-other-keys)
- (patch-makefile-SHELL "Makefile-libbz2_so")
- (zero? (system* "make" "-f" "Makefile-libbz2_so"))))
- (install-shared-lib
- '(lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (libdir (string-append out "/lib")))
- (for-each (lambda (file)
- (let ((base (basename file)))
- (format #t "installing `~a' to `~a'~%"
- base libdir)
- (copy-file file
- (string-append libdir "/" base))))
- (find-files "." "^libbz2\\.so"))))))
- (package
- (name "bzip2")
- (version "1.0.6")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://www.bzip.org/" version "/bzip2-"
- version ".tar.gz"))
- (sha256
- (base32
- "1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152"))))
- (build-system gnu-build-system)
- (arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1))
- #:phases
- (alist-cons-before
- 'build 'build-shared-lib ,build-shared-lib
- (alist-cons-after
- 'install 'fix-man-dir ,fix-man-dir
- (alist-cons-after
- 'install 'install-shared-lib ,install-shared-lib
- (alist-delete 'configure %standard-phases))))
- #:make-flags (list (string-append "PREFIX="
- (assoc-ref %outputs "out")))))
- (synopsis "high-quality data compression program")
- (description
- "bzip2 is a freely available, patent free (see below), high-quality data
-compressor. It typically compresses files to within 10% to 15% of the best
-available techniques (the PPM family of statistical compressors), whilst
-being around twice as fast at compression and six times faster at
-decompression.")
- (license (license:bsd-style "file://LICENSE"
- "See LICENSE in the distribution."))
- (home-page "http://www.bzip.org/"))))
-
-(define-public xz
- (package
- (name "xz")
- (version "5.0.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://tukaani.org/xz/xz-" version
- ".tar.gz"))
- (sha256
- (base32
- "1dl35ca8fdss9z2d6y234gxh24ixq904xksizrjmjr5dimwhax6n"))))
- (build-system gnu-build-system)
- (synopsis
- "XZ, general-purpose data compression software, successor of LZMA")
- (description
- "XZ Utils is free general-purpose data compression software with high
-compression ratio. XZ Utils were written for POSIX-like systems, but also
-work on some not-so-POSIX systems. XZ Utils are the successor to LZMA Utils.
-
-The core of the XZ Utils compression code is based on LZMA SDK, but it has
-been modified quite a lot to be suitable for XZ Utils. The primary
-compression algorithm is currently LZMA2, which is used inside the .xz
-container format. With typical files, XZ Utils create 30 % smaller output
-than gzip and 15 % smaller output than bzip2.")
- (license '(license:gpl2+ license:lgpl2.1+)) ; bits of both
- (home-page "http://tukaani.org/xz/")))
-
-(define-public lzo
- (package
- (name "lzo")
- (version "2.06")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://www.oberhumer.com/opensource/lzo/download/lzo-"
- version ".tar.gz"))
- (sha256
- (base32
- "0wryshs446s7cclrbjykyj766znhcpnr7s3cxy33ybfn6vwfcygz"))))
- (build-system gnu-build-system)
- (home-page "http://www.oberhumer.com/opensource/lzo")
- (synopsis
- "A data compresion library suitable for real-time data de-/compression")
- (description
- "LZO is a data compression library which is suitable for data
-de-/compression in real-time. This means it favours speed over
-compression ratio.
-
-LZO is written in ANSI C. Both the source code and the compressed data
-format are designed to be portable across platforms.")
- (license license:gpl2+)))
diff --git a/distro/packages/cpio.scm b/distro/packages/cpio.scm
deleted file mode 100644
index 07c0ec3f53..0000000000
--- a/distro/packages/cpio.scm
+++ /dev/null
@@ -1,58 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 cpio)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public cpio
- (package
- (name "cpio")
- (version "2.11")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/cpio/cpio-"
- version ".tar.bz2"))
- (sha256
- (base32
- "1gavgpzqwgkpagjxw72xgxz52y1ifgz0ckqh8g7cckz7jvyhp0mv"))))
- (build-system gnu-build-system)
- (arguments
- `(#:patches (list (assoc-ref %build-inputs
- "patch/gets"))))
- (inputs
- `(("patch/gets" ,(search-patch "cpio-gets-undeclared.patch"))))
- (home-page "https://www.gnu.org/software/cpio/")
- (synopsis
- "A program to create or extract from cpio archives")
- (description
- "GNU Cpio copies files into or out of a cpio or tar archive. The
-archive can be another file on the disk, a magnetic tape, or a pipe.
-
-GNU Cpio supports the following archive formats: binary, old ASCII, new
-ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1 tar. The
-tar format is provided for compatability with the tar program. By
-default, cpio creates binary format archives, for compatibility with
-older cpio programs. When extracting from archives, cpio automatically
-recognizes which kind of archive it is reading and can read archives
-created on machines with a different byte-order.")
- (license gpl3+))) \ No newline at end of file
diff --git a/distro/packages/cyrus-sasl.scm b/distro/packages/cyrus-sasl.scm
deleted file mode 100644
index 9ce2051a68..0000000000
--- a/distro/packages/cyrus-sasl.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 cyrus-sasl)
- #:use-module (distro)
- #:use-module (distro packages gdbm)
- #:use-module (distro packages mit-krb5)
- #:use-module (distro packages openssl)
- #:use-module ((guix licenses)
- #:renamer (symbol-prefix-proc 'license:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public cyrus-sasl
- (package
- (name "cyrus-sasl")
- (version "2.1.26")
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-" version
- ".tar.gz"))
- (sha256 (base32
- "1hvvbcsg21nlncbgs0cgn3iwlnb3vannzwsp6rwvnn9ba4v53g4g"))))
- (build-system gnu-build-system)
- (inputs `(("gdbm" ,gdbm)
- ("mit-krb5" ,mit-krb5)
- ("openssl" ,openssl)))
- (arguments
- '(#:configure-flags (list (string-append "--with-plugindir="
- (assoc-ref %outputs "out")
- "/lib/sasl2"))))
- (synopsis "Cyrus SASL, an implementation of the Simple Authentication Security Layer framework")
- (description
- "SASL (Simple Authentication Security Layer) is an Internet
-standards-track method for remote computers to authenticate. The Cyrus SASL
-library makes supporting various SASL mechanisms easy for both client and
-server writers.")
- (license (license:bsd-style "file://COPYING"
- "See COPYING in the distribution."))
- (home-page "http://cyrusimap.web.cmu.edu/index.php")))
diff --git a/distro/packages/ddrescue.scm b/distro/packages/ddrescue.scm
deleted file mode 100644
index 97bfd78309..0000000000
--- a/distro/packages/ddrescue.scm
+++ /dev/null
@@ -1,60 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 ddrescue)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public ddrescue
- (package
- (name "ddrescue")
- (version "1.16")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/ddrescue/ddrescue-"
- version ".tar.gz"))
- (sha256
- (base32
- "1rixya7p8c4jrn4p0flf6h5dqwybrilf3hrj4r7x41h3zgjz5cvn"))))
- (build-system gnu-build-system)
- (home-page
- "http://www.gnu.org/software/ddrescue/ddrescue.html")
- (synopsis "GNU ddrescue, a data recovery tool")
- (description
- "GNU ddrescue is a data recovery tool. It copies data from one
-file or block device (hard disc, cdrom, etc) to another, trying hard to
-rescue data in case of read errors.
-
-The basic operation of ddrescue is fully automatic. That is, you don't
-have to wait for an error, stop the program, read the log, run it in
-reverse mode, etc.
-
-If you use the logfile feature of ddrescue, the data is rescued very
-efficiently (only the needed blocks are read). Also you can interrupt
-the rescue at any time and resume it later at the same point.
-
-Automatic merging of backups: If you have two or more damaged copies of
-a file, cdrom, etc, and run ddrescue on all of them, one at a time, with
-the same output file, you will probably obtain a complete and error-free
-file. This is so because the probability of having damaged areas at the
-same places on different input files is very low. Using the logfile,
-only the needed blocks are read from the second and successive copies.")
- (license gpl3+)))
diff --git a/distro/packages/dejagnu.scm b/distro/packages/dejagnu.scm
deleted file mode 100644
index f350f8a973..0000000000
--- a/distro/packages/dejagnu.scm
+++ /dev/null
@@ -1,88 +0,0 @@
-;;; 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")
- (("^mypath.*$" all)
- (string-append all
- "export PATH="
- expect "/bin:$PATH\n")))))
- %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/ed.scm b/distro/packages/ed.scm
deleted file mode 100644
index 614b3ae645..0000000000
--- a/distro/packages/ed.scm
+++ /dev/null
@@ -1,53 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 ed)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public ed
- (package
- (name "ed")
- (version "1.5")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/ed/ed-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "18gvhyhwpabmgv4lh21lg8vl3z7acdyhh2mr2kj9g75wksj39pcp"))))
- (build-system gnu-build-system)
- (arguments '(#:configure-flags '("CC=gcc")))
- (home-page "http://www.gnu.org/software/ed/")
- (synopsis
- "GNU ed, an implementation of the standard Unix editor")
- (description
- "GNU ed is a line-oriented text editor. It is used to create,
-display, modify and otherwise manipulate text files, both
-interactively and via shell scripts. A restricted version of ed,
-red, can only edit files in the current directory and cannot
-execute shell commands. Ed is the \"standard\" text editor in the
-sense that it is the original editor for Unix, and thus widely
-available. For most purposes, however, it is superseded by
-full-screen editors such as GNU Emacs or GNU Moe.")
- (license gpl3+)))
diff --git a/distro/packages/emacs.scm b/distro/packages/emacs.scm
deleted file mode 100644
index 5a3d3f3910..0000000000
--- a/distro/packages/emacs.scm
+++ /dev/null
@@ -1,93 +0,0 @@
-;;; 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 emacs)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro)
- #:use-module (distro packages ncurses)
- #:use-module (distro packages texinfo)
- #:use-module (distro packages gnutls)
- #:use-module (distro packages pkg-config))
-
-(define-public emacs
- (package
- (name "emacs")
- (version "24.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/emacs/emacs-"
- version ".tar.bz2"))
- (sha256
- (base32
- "13wbjfjmz13qpjwssy44nw2230lllmkkgjsy0rqfm6am2cf87n3k"))))
- (build-system gnu-build-system)
- (arguments
- '(#:configure-flags
- (list (string-append "--with-crt-dir=" (assoc-ref %build-inputs "libc")
- "/lib"))
- #:patches (list (assoc-ref %build-inputs "patch/epaths"))
- #:phases (alist-cons-before
- 'configure 'fix-/bin/pwd
- (lambda _
- ;; Use `pwd', not `/bin/pwd'.
- (substitute* (find-files "." "^Makefile\\.in$")
- (("/bin/pwd")
- "pwd")))
- %standard-phases)))
- (inputs
- `(("pkg-config" ,pkg-config)
- ("gnutls" ,gnutls)
- ("texinfo" ,texinfo)
- ("ncurses" ,ncurses)
-
- ;; TODO: Add the optional dependencies.
- ;; ("xlibs" ,xlibs)
- ;; ("gtk+" ,gtk+)
- ;; ("libXft" ,libXft)
- ;; ("libtiff" ,libtiff)
- ;; ("libungif" ,libungif)
- ;; ("libjpeg" ,libjpeg)
- ;; ("libpng" ,libpng)
- ;; ("libXpm" ,libXpm)
- ;; ("libxml2" ,libxml2)
- ;; ("dbus-library" ,dbus-library)
-
- ("patch/epaths" ,(search-patch "emacs-configure-sh.patch"))
- ))
- (home-page "http://www.gnu.org/software/emacs/")
- (synopsis
- "GNU Emacs 24, the extensible, customizable text editor")
- (description
- "GNU Emacs is an extensible, customizable text editor—and more. At its
-core is an interpreter for Emacs Lisp, a dialect of the Lisp
-programming language with extensions to support text editing.
-
-The features of GNU Emacs include: content-sensitive editing modes,
-including syntax coloring, for a wide variety of file types including
-plain text, source code, and HTML; complete built-in documentation,
-including a tutorial for new users; full Unicode support for nearly all
-human languages and their scripts; highly customizable, using Emacs
-Lisp code or a graphical interface; a large number of extensions that
-add other functionality, including a project planner, mail and news
-reader, debugger interface, calendar, and more. Many of these
-extensions are distributed with GNU Emacs; others are available
-separately.")
- (license gpl3+)))
diff --git a/distro/packages/file.scm b/distro/packages/file.scm
deleted file mode 100644
index 61bdd71cfe..0000000000
--- a/distro/packages/file.scm
+++ /dev/null
@@ -1,44 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 file)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public file
- (package
- (name "file")
- (version "5.12")
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://ftp.astron.com/pub/file/file-"
- version ".tar.gz"))
- (sha256 (base32
- "08ix4xrvan0k80n0l5lqfmc4azjv5lyhvhwdxny4r09j5smhv78r"))))
- (build-system gnu-build-system)
- (synopsis "file, a file type guesser")
- (description
- "The file command is a file type guesser, a command-line tool that tells
-you in words what kind of data a file contains. It does not rely on filename
-extentions to tell you the type of a file, but looks at the actual contents
-of the file.")
- (license bsd-2)
- (home-page "http://www.darwinsys.com/file/")))
diff --git a/distro/packages/flex.scm b/distro/packages/flex.scm
deleted file mode 100644
index 2cfdbfe23a..0000000000
--- a/distro/packages/flex.scm
+++ /dev/null
@@ -1,63 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 flex)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro)
- #:use-module (distro packages m4)
- #:use-module (distro packages bison)
- #:use-module (distro packages indent))
-
-(define-public flex
- (package
- (name "flex")
- (version "2.5.37")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/flex/flex-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0ah5mi4j62b85a9rllv1004mzjb5cd0mn4glvz13p88rpx77pahp"))))
- (build-system gnu-build-system)
- (arguments
- '(#:patches (list (assoc-ref %build-inputs "patch/bison-tests"))))
- (inputs `(("patch/bison-tests" ,(search-patch "flex-bison-tests.patch"))
- ("bison" ,bison)
- ("indent" ,indent)))
- (propagated-inputs `(("m4" ,m4)))
- (home-page "http://flex.sourceforge.net/")
- (synopsis "A fast lexical analyser generator")
- (description
- "Flex is a tool for generating scanners. A scanner, sometimes
-called a tokenizer, is a program which recognizes lexical patterns in
-text. The flex program reads user-specified input files, or its standard
-input if no file names are given, for a description of a scanner to
-generate. The description is in the form of pairs of regular expressions
-and C code, called rules. Flex generates a C source file named,
-\"lex.yy.c\", which defines the function yylex(). The file \"lex.yy.c\"
-can be compiled and linked to produce an executable. When the executable
-is run, it analyzes its input for occurrences of text matching the
-regular expressions for each rule. Whenever it finds a match, it
-executes the corresponding C code.")
- (license (bsd-style "file://COPYING"
- "See COPYING in the distribution."))))
-
diff --git a/distro/packages/gawk.scm b/distro/packages/gawk.scm
deleted file mode 100644
index 6fed7f8b70..0000000000
--- a/distro/packages/gawk.scm
+++ /dev/null
@@ -1,71 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 gawk)
- #:use-module (guix licenses)
- #:use-module (distro packages libsigsegv)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public gawk
- (package
- (name "gawk")
- (version "4.0.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gawk/gawk-" version
- ".tar.bz2"))
- (sha256
- (base32 "0sss7rhpvizi2a88h6giv0i7w5h07s2fxkw3s6n1hqvcnhrfgbb0"))))
- (build-system gnu-build-system)
- (arguments
- (case-lambda
- ((system)
- `(#:parallel-tests? #f ; test suite fails in parallel
-
- ;; Work around test failure on Cygwin.
- #:tests? ,(not (string=? system "i686-cygwin"))
-
- #:phases (alist-cons-before
- 'configure 'set-shell-file-name
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Refer to the right shell.
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* "io.c"
- (("/bin/sh")
- (string-append bash "/bin/bash")))))
- %standard-phases)))
- ((system cross-system)
- '(#:parallel-tests? #f))))
- (inputs `(("libsigsegv" ,libsigsegv)))
- (home-page "http://www.gnu.org/software/gawk/")
- (synopsis "GNU implementation of the Awk programming language")
- (description
- "Many computer users need to manipulate text files: extract and then
-operate on data from parts of certain lines while discarding the rest, make
-changes in various text files wherever certain patterns appear, and so on.
-To write a program to do these things in a language such as C or Pascal is a
-time-consuming inconvenience that may take many lines of code. The job is
-easy with awk, especially the GNU implementation: Gawk.
-
-The awk utility interprets a special-purpose programming language that makes
-it possible to handle many data-reformatting jobs with just a few lines of
-code.")
- (license gpl3+)))
diff --git a/distro/packages/gdb.scm b/distro/packages/gdb.scm
deleted file mode 100644
index 4540c04099..0000000000
--- a/distro/packages/gdb.scm
+++ /dev/null
@@ -1,65 +0,0 @@
-;;; 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 gdb)
- #:use-module (distro packages ncurses)
- #:use-module (distro packages readline)
- #:use-module (distro packages dejagnu)
- #:use-module (distro packages texinfo)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages xml)
- #:use-module (distro packages python)
- #:use-module ((guix licenses) #:select (gpl3+))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public gdb
- (package
- (name "gdb")
- (version "7.5")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gdb/gdb-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0chrws5ga90b50kp06yll6zy42fhnx9yr87r4i7swsc369fc8y6i"))))
- (build-system gnu-build-system)
- (arguments
- '(#:phases (alist-cons-after
- 'configure 'post-configure
- (lambda _
- (patch-makefile-SHELL "gdb/gdbserver/Makefile.in"))
- %standard-phases)))
- (inputs
- `(("expat" ,expat)
- ("mpfr" ,mpfr)
- ("gmp" ,gmp)
- ("readline" ,readline)
- ("ncurses" ,ncurses)
- ("python" ,python)
- ("texinfo" ,texinfo)
- ("dejagnu" ,dejagnu)))
- (home-page "http://www.gnu.org/software/gdb/")
- (synopsis "GDB, the GNU Project debugger")
- (description
- "GDB, the GNU Project debugger, allows you to see what is going
-on `inside' another program while it executes -- or what another
-program was doing at the moment it crashed.")
- (license gpl3+)))
diff --git a/distro/packages/gdbm.scm b/distro/packages/gdbm.scm
deleted file mode 100644
index 47f1b95e95..0000000000
--- a/distro/packages/gdbm.scm
+++ /dev/null
@@ -1,56 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 gdbm)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public gdbm
- (package
- (name "gdbm")
- (version "1.10")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gdbm/gdbm-"
- version ".tar.gz"))
- (sha256
- (base32
- "0h9lfzdjc2yl849y0byg51h6xfjg0y7vg9jnsw3gpfwlbd617y13"))))
- (build-system gnu-build-system)
- (home-page "http://www.gnu.org/software/gdbm/")
- (synopsis "GNU dbm key/value database library")
- (description
- "GNU dbm (or GDBM, for short) is a library of database functions
-that use extensible hashing and work similar to the standard UNIX dbm.
-These routines are provided to a programmer needing to create and
-manipulate a hashed database.
-
-The basic use of GDBM is to store key/data pairs in a data file. Each
-key must be unique and each key is paired with only one data item.
-
-The library provides primitives for storing key/data pairs, searching
-and retrieving the data by its key and deleting a key along with its
-data. It also support sequential iteration over all key/data pairs in a
-database.
-
-For compatibility with programs using old UNIX dbm function, the package
-also provides traditional dbm and ndbm interfaces.")
- (license gpl3+)))
diff --git a/distro/packages/gettext.scm b/distro/packages/gettext.scm
deleted file mode 100644
index e4d4acc615..0000000000
--- a/distro/packages/gettext.scm
+++ /dev/null
@@ -1,78 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 gettext)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public gettext
- (package
- (name "gettext")
- (version "0.18.1.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gettext/gettext-"
- version ".tar.gz"))
- (sha256
- (base32
- "1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k"))))
- (build-system gnu-build-system)
- (arguments
- `(#:patches (list (assoc-ref %build-inputs "patch/gets"))
- #:phases (alist-cons-before
- 'check 'patch-tests
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* (find-files "gettext-tools/tests"
- "^msgexec-[0-9]")
- (("#![[:blank:]]/bin/sh")
- (format #f "#!~a/bin/sh" bash)))
- (substitute* (find-files "gettext-tools/gnulib-tests"
- "posix_spawn")
- (("/bin/sh")
- (format #f "~a/bin/bash" bash)))))
- %standard-phases)))
- (inputs
- `(("patch/gets"
- ,(search-patch "gettext-gets-undeclared.patch"))))
- (home-page
- "http://www.gnu.org/software/gettext/")
- (synopsis
- "GNU gettext, a well integrated set of translation tools and documentation")
- (description
- "Usually, programs are written and documented in English, and use
-English at execution time for interacting with users. Using a common
-language is quite handy for communication between developers,
-maintainers and users from all countries. On the other hand, most
-people are less comfortable with English than with their own native
-language, and would rather be using their mother tongue for day to
-day's work, as far as possible. Many would simply love seeing their
-computer screen showing a lot less of English, and far more of their
-own language.
-
-GNU `gettext' is an important step for the GNU Translation Project, as
-bit is an asset on which we may build many other steps. This package
-offers to programmers, translators, and even users, a well integrated
-set of tools and documentation. Specifically, the GNU `gettext'
-utilities are a set of tools that provides a framework to help other
-GNU packages produce multi-lingual messages.")
- (license gpl3))) ; some files are under GPLv2+
diff --git a/distro/packages/global.scm b/distro/packages/global.scm
deleted file mode 100644
index ddd28c2887..0000000000
--- a/distro/packages/global.scm
+++ /dev/null
@@ -1,58 +0,0 @@
-;;; 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/gnupg.scm b/distro/packages/gnupg.scm
deleted file mode 100644
index 5fdf19187d..0000000000
--- a/distro/packages/gnupg.scm
+++ /dev/null
@@ -1,168 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 gnupg)
- #:use-module (guix licenses)
- #:use-module (distro packages pth)
- #:use-module (distro packages readline)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libgpg-error
- (package
- (name "libgpg-error")
- (version "1.10")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0cal3jdnzdailr13qcy74grfbplbghkgr3qwk6qjjp4bass2j1jj"))))
- (build-system gnu-build-system)
- (home-page "http://gnupg.org")
- (synopsis
- "Libgpg-error, a small library that defines common error values for all GnuPG components")
- (description
- "Libgpg-error is a small library that defines common error values
-for all GnuPG components. Among these are GPG, GPGSM, GPGME,
-GPG-Agent, libgcrypt, Libksba, DirMngr, Pinentry, SmartCard
-Daemon and possibly more in the future.")
- (license lgpl2.0+)))
-
-(define-public libgcrypt
- (package
- (name "libgcrypt")
- (version "1.5.0")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-"
- version ".tar.bz2"))
- (sha256
- (base32
- "1ykkh7dm0gyndz7bbpvn3agijj8xb2h02m02f42hm504c18zqqjb"))))
- (build-system gnu-build-system)
- (propagated-inputs
- `(("libgpg-error" ,libgpg-error)))
- (home-page "http://gnupg.org/")
- (synopsis
- "GNU Libgcrypt, a general-pupose cryptographic library")
- (description
- "GNU Libgcrypt is a general purpose cryptographic library based on
-the code from GnuPG. It provides functions for all
-cryptographic building blocks: symmetric ciphers, hash
-algorithms, MACs, public key algorithms, large integer
-functions, random numbers and a lot of supporting functions.")
- (license lgpl2.0+)))
-
-(define-public libassuan
- (package
- (name "libassuan")
- (version "2.0.3")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnupg/libassuan/libassuan-"
- version ".tar.bz2"))
- (sha256
- (base32
- "06xckkvxxlx7cj77803m8x58gxksap4k8yhspc5cqsy7fhinimds"))))
- (build-system gnu-build-system)
- (propagated-inputs
- `(("libgpg-error" ,libgpg-error) ("pth" ,pth)))
- (home-page "http://gnupg.org")
- (synopsis
- "Libassuan, the IPC library used by GnuPG and related software")
- (description
- "Libassuan is a small library implementing the so-called Assuan
-protocol. This protocol is used for IPC between most newer
-GnuPG components. Both, server and client side functions are
-provided.")
- (license lgpl2.0+)))
-
-(define-public libksba
- (package
- (name "libksba")
- (version "1.2.0")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnupg/libksba/libksba-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0jwk7hm3x3g4hd7l12z3d79dy7359x7lc88dq6z7q0ixn1jwxbq9"))))
- (build-system gnu-build-system)
- (propagated-inputs
- `(("libgpg-error" ,libgpg-error)))
- (home-page "http://www.gnupg.org")
- (synopsis
- "Libksba is a CMS and X.509 access library under development")
- (description
- "KSBA (pronounced Kasbah) is a library to make X.509 certificates
-as well as the CMS easily accessible by other applications. Both
-specifications are building blocks of S/MIME and TLS.")
- (license gpl3+)))
-
-(define-public gnupg
- (package
- (name "gnupg")
- (version "2.0.19")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnupg/gnupg/gnupg-" version
- ".tar.bz2"))
- (sha256
- (base32
- "08n636sfffs5qvg9ppiprvsh00q0dmdw425psg3m3nssja53m8pg"))))
- (build-system gnu-build-system)
- (inputs
- `(;; TODO: Add missing optional deps.
- ;; ("curl" ,curl)
- ;; ("libusb" ,libusb)
- ;; ("openldap" ,openldap)
-
- ("bzip2" ,guix:bzip2)
- ("libassuan" ,libassuan)
- ("libgcrypt" ,libgcrypt)
- ("libksba" ,libksba)
- ("pth" ,pth)
- ("libgpg-error" ,libgpg-error)
- ("zlib" ,guix:zlib)
- ("readline" ,readline)))
- (home-page "http://gnupg.org/")
- (synopsis
- "GNU Privacy Guard (GnuPG), GNU Project's implementation of the OpenPGP standard")
- (description
- "GnuPG is the GNU project's complete and free implementation of
-the OpenPGP standard as defined by RFC4880. GnuPG allows to
-encrypt and sign your data and communication, features a
-versatile key managment system as well as access modules for all
-kind of public key directories. GnuPG, also known as GPG, is a
-command line tool with features for easy integration with other
-applications. A wealth of frontend applications and libraries
-are available. Version 2 of GnuPG also provides support for
-S/MIME.")
- (license gpl3+)))
diff --git a/distro/packages/gnutls.scm b/distro/packages/gnutls.scm
deleted file mode 100644
index 269907e7c4..0000000000
--- a/distro/packages/gnutls.scm
+++ /dev/null
@@ -1,98 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 gnutls)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages base)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages nettle)
- #:use-module (distro packages guile)
- #:use-module (distro packages perl)
- #:use-module (distro packages which))
-
-(define-public libtasn1
- (package
- (name "libtasn1")
- (version "3.2")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/libtasn1/libtasn1-"
- version ".tar.gz"))
- (sha256
- (base32
- "0gvgndypwicchf7m660zh7jdgmkfj9g9xavpcc08pyd0120y0bk7"))))
- (build-system gnu-build-system)
- (home-page "http://www.gnu.org/software/libtasn1/")
- (synopsis "GNU Libtasn1, an ASN.1 library")
- (description
- "Libtasn1 is the ASN.1 library used by GnuTLS, GNU Shishi and some
-other packages. The goal of this implementation is to be highly
-portable, and only require an ANSI C89 platform.")
- (license lgpl2.0+)))
-
-(define-public gnutls
- (package
- (name "gnutls")
- (version "3.1.6")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/gnutls/gnutls-"
- version
- ".tar.xz"))
- (sha256
- (base32
- "0zsybr9plllk1phh83bx9bg7c5ccik427j4n3k1s9fiy4j69n0w3"))))
- (build-system gnu-build-system)
-
- ;; Build of the Guile bindings is not parallel-safe. See
- ;; <http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=330995a920037b6030ec0282b51dde3f8b493cad>
- ;; for the actual fix.
- (arguments '(#:parallel-build? #f))
-
- (inputs
- `(("guile" ,guile-2.0)
- ;; ("lzo" ,lzo)
- ("zlib" ,guix:zlib)
- ("perl" ,perl)))
- (propagated-inputs
- `(("libtasn1" ,libtasn1)
- ("nettle" ,nettle)
- ("which" ,which)))
- (home-page "http://www.gnu.org/software/gnutls/")
- (synopsis
- "The GNU Transport Layer Security Library")
- (description
- "GnuTLS is a project that aims to develop a library which provides
-a secure layer, over a reliable transport layer. Currently the GnuTLS
-library implements the proposed standards by the IETF's TLS working
-group.
-
-Quoting from the TLS protocol specification:
-
-\"The TLS protocol provides communications privacy over the
-Internet. The protocol allows client/server applications to communicate
-in a way that is designed to prevent eavesdropping, tampering, or
-message forgery.\"")
- (license lgpl2.1+)))
diff --git a/distro/packages/gperf.scm b/distro/packages/gperf.scm
deleted file mode 100644
index f1827e0a65..0000000000
--- a/distro/packages/gperf.scm
+++ /dev/null
@@ -1,55 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 gperf)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public gperf
- (package
- (name "gperf")
- (version "3.0.4")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gperf/gperf-"
- version ".tar.gz"))
- (sha256
- (base32
- "0gnnm8iqcl52m8iha3sxrzrl9mcyhg7lfrhhqgdn4zj00ji14wbn"))))
- (build-system gnu-build-system)
- (arguments '(#:parallel-tests? #f))
- (home-page "http://www.gnu.org/software/gperf/")
- (synopsis
- "GNU gperf, a perfect hash function generator")
- (description
- "GNU gperf is a perfect hash function generator. For a given
-list of strings, it produces a hash function and hash table, in
-form of C or C++ code, for looking up a value depending on the
-input string. The hash function is perfect, which means that
-the hash table has no collisions, and the hash table lookup
-needs a single string comparison only.
-
-GNU gperf is highly customizable. There are options for
-generating C or C++ code, for emitting switch statements or
-nested ifs instead of a hash table, and for tuning the algorithm
-employed by gperf.")
- (license gpl3+)))
diff --git a/distro/packages/gsasl.scm b/distro/packages/gsasl.scm
deleted file mode 100644
index 43530b57ad..0000000000
--- a/distro/packages/gsasl.scm
+++ /dev/null
@@ -1,113 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 gsasl)
- #:use-module (distro)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages gnutls)
- #:use-module (distro packages libidn)
- #:use-module (distro packages nettle)
- #:use-module (distro packages shishi)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libntlm
- (package
- (name "libntlm")
- (version "1.3")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://www.nongnu.org/libntlm/releases/libntlm-" version
- ".tar.gz"))
- (sha256 (base32
- "101pr110ardcj2di940g6vaqifsaxc44h6hjn81l63dvmkj5a6ga"))))
- (build-system gnu-build-system)
- (synopsis "Libntlm, a library that implements NTLM authentication")
- (description
- "Libntlm is a library that implements NTLM authentication")
- (license lgpl2.1+)
- (home-page "http://www.nongnu.org/libntlm/")))
-
-(define-public gss
- (package
- (name "gss")
- (version "1.0.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gss/gss-" version
- ".tar.gz"))
- (sha256 (base32
- "1qa8lbkzi6ilfggx7mchfzjnchvhwi68rck3jf9j4425ncz7zsd9"))))
- (build-system gnu-build-system)
- (inputs `(("nettle" ,nettle)
- ("shishi" ,shishi)
- ("zlib" ,guix:zlib)
- ))
- (synopsis "GNU GSS (Generic Security Service), a free implementatio of RFC 2743/2744")
- (description
- "GNU GSS is an implementation of the Generic Security Service Application
-Program Interface (GSS-API). GSS-API is used by network servers to provide
-security services, e.g., to authenticate SMTP/IMAP clients against
-SMTP/IMAP servers. GSS consists of a library and a manual.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/gss/")))
-
-(define-public gsasl
- (package
- (name "gsasl")
- (version "1.8.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gsasl/gsasl-" version
- ".tar.gz"))
- (sha256 (base32
- "1rci64cxvcfr8xcjpqc4inpfq7aw4snnsbf5xz7d30nhvv8n40ii"))))
- (build-system gnu-build-system)
- (inputs `(("libidn" ,libidn)
- ("libntlm" ,libntlm)
- ("gnutls" ,gnutls)
- ("gss" ,gss)
- ("zlib" ,guix:zlib)
- ))
- (synopsis "GNU SASL, an implementation of the Simple Authentication and Security Layer framework")
- (description
- "GNU SASL is an implementation of the Simple Authentication and Security
-Layer framework and a few common SASL mechanisms. SASL is used by network
-servers (e.g., IMAP, SMTP) to request authentication from clients, and in
-clients to authenticate against servers.
-
-GNU SASL consists of a library (libgsasl), a command line utility (gsasl)
-to access the library from the shell, and a manual. The library includes
-support for the framework (with authentication functions and application
-data privacy and integrity functions) and at least partial support for the
-CRAM-MD5, EXTERNAL, GSSAPI, ANONYMOUS, PLAIN, SECURID, DIGEST-MD5,
-SCRAM-SHA-1, SCRAM-SHA-1-PLUS, LOGIN, and NTLM mechanisms.
-
-The library is portable because it does not do network communication by
-itself, but rather leaves it up to the calling application. The library is
-flexible with regards to the authorization infrastructure used, as it
-utilises callbacks into the application to decide whether an user is
-authorised or not.
-
-The gsasl package distribution includes the library part as well,
-so there is no need to install two packages.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/gsasl/")))
diff --git a/distro/packages/guile.scm b/distro/packages/guile.scm
deleted file mode 100644
index 9964f9d9f0..0000000000
--- a/distro/packages/guile.scm
+++ /dev/null
@@ -1,197 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 guile)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages bdw-gc)
- #:use-module (distro packages gawk)
- #:use-module (distro packages gperf)
- #:use-module (distro packages libffi)
- #:use-module (distro packages autotools)
- #:use-module (distro packages libunistring)
- #:use-module (distro packages m4)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages pkg-config)
- #:use-module (distro packages readline)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-;;; Commentary:
-;;;
-;;; GNU Guile, and modules and extensions.
-;;;
-;;; Code:
-
-(define-public guile-1.8
- (package
- (name "guile")
- (version "1.8.8")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/guile/guile-" version
- ".tar.gz"))
- (sha256
- (base32
- "0l200a0v7h8bh0cwz6v7hc13ds39cgqsmfrks55b1rbj5vniyiy3"))))
- (build-system gnu-build-system)
- (arguments '(#:configure-flags '("--disable-error-on-warning")
- #:patches (list (assoc-ref %build-inputs "patch/snarf"))
-
- ;; Insert a phase before `configure' to patch things up.
- #:phases (alist-cons-before
- 'configure
- 'patch-loader-search-path
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Add a call to `lt_dladdsearchdir' so that
- ;; `libguile-readline.so' & co. are in the
- ;; loader's search path.
- (substitute* "libguile/dynl.c"
- (("lt_dlinit.*$" match)
- (format #f
- " ~a~% lt_dladdsearchdir(\"~a/lib\");~%"
- match
- (assoc-ref outputs "out")))))
- %standard-phases)))
- (inputs `(("patch/snarf" ,(search-patch "guile-1.8-cpp-4.5.patch"))
- ("gawk" ,gawk)
- ("readline" ,readline)))
-
- ;; Since `guile-1.8.pc' has "Libs: ... -lgmp -lltdl", these must be
- ;; propagated.
- (propagated-inputs `(("gmp" ,gmp)
- ("libtool" ,libtool)))
-
- ;; When cross-compiling, a native version of Guile itself is needed.
- (self-native-input? #t)
-
- (synopsis "GNU Guile 1.8, an embeddable Scheme interpreter")
- (description
-"GNU Guile 1.8 is an interpreter for the Scheme programming language,
-packaged as a library that can be embedded into programs to make them
-extensible. It supports many SRFIs.")
- (home-page "http://www.gnu.org/software/guile/")
- (license lgpl2.0+)))
-
-(define-public guile-2.0
- (package
- (name "guile")
- (version "2.0.7")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/guile/guile-" version
- ".tar.xz"))
- (sha256
- (base32
- "0f53pxkia4v17n0avwqlcjpy0n89hkazm2xsa6p84lv8k6k8y9vg"))))
- (build-system gnu-build-system)
- (native-inputs `(("pkgconfig" ,pkg-config)))
- (inputs `(("libffi" ,libffi)
- ("readline" ,readline)))
-
- (propagated-inputs
- `( ;; These ones aren't normally needed here, but since `libguile-2.0.la'
- ;; reads `-lltdl -lunistring', adding them here will add the needed
- ;; `-L' flags. As for why the `.la' file lacks the `-L' flags, see
- ;; <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/18903>.
- ("libunistring" ,libunistring)
- ("libtool" ,libtool)
-
- ;; The headers and/or `guile-2.0.pc' refer to these packages, so they
- ;; must be propagated.
- ("bdw-gc" ,libgc)
- ("gmp" ,gmp)))
-
- (self-native-input? #t)
-
- (arguments
- '(#:phases (alist-cons-before
- 'configure 'pre-configure
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* "module/ice-9/popen.scm"
- (("/bin/sh")
- (string-append bash "/bin/bash")))))
- %standard-phases)))
-
- (synopsis "GNU Guile 2.0, an embeddable Scheme implementation")
- (description
-"GNU Guile is an implementation of the Scheme programming language, with
-support for many SRFIs, packaged for use in a wide variety of environments.
-In addition to implementing the R5RS Scheme standard and a large subset of
-R6RS, Guile includes a module system, full access to POSIX system calls,
-networking support, multiple threads, dynamic linking, a foreign function
-call interface, and powerful string processing.")
- (home-page "http://www.gnu.org/software/guile/")
- (license lgpl3+)))
-
-(define-public guile-2.0/fixed
- ;; A package of Guile 2.0 that's rarely changed. It is the one used
- ;; in the `base' module, and thus changing it entails a full rebuild.
- guile-2.0)
-
-
-;;;
-;;; Extensions.
-;;;
-
-(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 url-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" ,pkg-config)
- ("gperf" ,gperf)))
- (inputs `(("guile" ,guile)))
- (synopsis "Guile-Reader, a simple framework for building readers for
-GNU Guile")
- (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 gpl3+)))
-
-(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))
-
-;;; guile.scm ends here
diff --git a/distro/packages/help2man.scm b/distro/packages/help2man.scm
deleted file mode 100644
index 191ef25c85..0000000000
--- a/distro/packages/help2man.scm
+++ /dev/null
@@ -1,52 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 help2man)
- #:use-module (guix licenses)
- #:use-module (guix download)
- #:use-module (guix packages)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages perl))
-
-(define-public help2man
- (package
- (name "help2man")
- (version "1.40.8")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/help2man/help2man-"
- version ".tar.gz"))
- (sha256
- (base32
- "0s6phazn8jgvpbsby8kj2m58rj1zjghi1aipvamh8af226ssqfzj"))))
- (build-system gnu-build-system)
- (arguments `(;; There's no `check' target.
- #:tests? #f))
- (inputs
- `(("perl" ,perl)
- ;; TODO: Add these optional dependencies.
- ;; ("perl-LocaleGettext" ,perl-LocaleGettext)
- ;; ("gettext" ,gettext)
- ))
- (home-page "http://www.gnu.org/software/help2man/")
- (synopsis "GNU help2man generates man pages from `--help' output")
- (description
- "help2man produces simple manual pages from the ‘--help’ and
-‘--version’ output of other commands.")
- (license gpl3+)))
diff --git a/distro/packages/icu4c.scm b/distro/packages/icu4c.scm
deleted file mode 100644
index f0adb8f2ce..0000000000
--- a/distro/packages/icu4c.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 icu4c)
- #:use-module (distro)
- #:use-module (distro packages perl)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public icu4c
- (package
- (name "icu4c")
- (version "50.1.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://download.icu-project.org/files/icu4c/"
- version
- "/icu4c-"
- (string-map (lambda (x) (if (char=? x #\.) #\_ x)) version)
- "-src.tgz"))
- (sha256 (base32
- "13yz0kk6zsgj94idnlr3vbg8iph5z4ly4b4xrd5wfja7q3ijdx56"))))
- (build-system gnu-build-system)
- (inputs `(("perl" ,perl)))
- (arguments
- `(#:phases
- (alist-replace
- 'unpack
- (lambda* (#:key source #:allow-other-keys)
- (and (zero? (system* "tar" "xvf" source))
- (chdir "icu/source")))
- (alist-replace
- 'configure
- (lambda* (#:key #:allow-other-keys #:rest args)
- (let ((configure (assoc-ref %standard-phases 'configure)))
- ;; patch out two occurrences of /bin/sh from configure script
- ;; that might have disappeared in a release later than 50.1.1
- (substitute* "configure"
- (("`/bin/sh")
- (string-append "`" (which "bash"))))
- (apply configure args)))
- %standard-phases))))
- (synopsis "ICU, International Components for Unicode")
- (description
- "ICU is a set of C/C++ and Java libraries providing Unicode and
-globalisation support for software applications. This package contains the
-C/C++ part.")
- (license x11)
- (home-page "http://site.icu-project.org/")))
diff --git a/distro/packages/idutils.scm b/distro/packages/idutils.scm
deleted file mode 100644
index f4c7005f99..0000000000
--- a/distro/packages/idutils.scm
+++ /dev/null
@@ -1,65 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 idutils)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (guix licenses)
- #:use-module (distro))
-
-(define-public idutils
- (package
- (name "idutils")
- (version "4.6")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/idutils/idutils-"
- version ".tar.xz"))
- (sha256
- (base32
- "1hmai3422iaqnp34kkzxdnywl7n7pvlxp11vrw66ybxn9wxg90c1"))))
- (build-system gnu-build-system)
- (inputs `(;; TODO: Add Emacs as an input for byte-compilation.
- ;; ("emacs" ,emacs)
- ("patch/gets"
- ,(search-patch "diffutils-gets-undeclared.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))
- (home-page "http://www.gnu.org/software/idutils/")
- (synopsis "GNU Idutils, a text searching utility")
- (description
- "An \"ID database\" is a binary file containing a list of file
-names, a list of tokens, and a sparse matrix indicating which
-tokens appear in which files.
-
-With this database and some tools to query it, many
-text-searching tasks become simpler and faster. For example,
-you can list all files that reference a particular `\\#include'
-file throughout a huge source hierarchy, search for all the
-memos containing references to a project, or automatically
-invoke an editor on all files containing references to some
-function or variable. Anyone with a large software project to
-maintain, or a large set of text files to organize, can benefit
-from the ID utilities.
-
-Although the name `ID' is short for `identifier', the ID
-utilities handle more than just identifiers; they also treat
-other kinds of tokens, most notably numeric constants, and the
-contents of certain character strings.")
- (license gpl3+)))
diff --git a/distro/packages/indent.scm b/distro/packages/indent.scm
deleted file mode 100644
index d69a42f978..0000000000
--- a/distro/packages/indent.scm
+++ /dev/null
@@ -1,44 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 indent)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public indent
- (package
- (name "indent")
- (version "2.2.10")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/indent/indent-" version
- ".tar.gz"))
- (sha256 (base32
- "0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa"))))
- (build-system gnu-build-system)
- (synopsis "GNU Indent, a program for code indentation and formatting")
- (description
- "GNU Indent can be used to make code easier to read. It can also convert
-from one style of writing C to another. Indent understands a substantial
-amount about the syntax of C, but it also attempts to cope with incomplete
-and misformed syntax. The GNU style of indenting is the default.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/indent/")))
diff --git a/distro/packages/ld-wrapper.scm b/distro/packages/ld-wrapper.scm
deleted file mode 100644
index fd5a4cbd0c..0000000000
--- a/distro/packages/ld-wrapper.scm
+++ /dev/null
@@ -1,147 +0,0 @@
-#!@BASH@
-# -*- mode: scheme; coding: utf-8; -*-
-
-# XXX: We have to go through Bash because there's no command-line switch to
-# augment %load-compiled-path, and because of the silly 127-byte limit for
-# the shebang line in Linux.
-# Use `load-compiled' because `load' (and `-l') doesn't otherwise load our
-# .go file (see <http://bugs.gnu.org/12519>).
-
-main="(@ (gnu build-support ld-wrapper) ld-wrapper)"
-exec @GUILE@ -c "(load-compiled \"$0.go\") (apply $main (cdr (command-line)))" "$@"
-!#
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 (gnu build-support ld-wrapper)
- #:use-module (srfi srfi-1)
- #:export (ld-wrapper))
-
-;;; Commentary:
-;;;
-;;; This is a wrapper for the linker. Its purpose is to inspect the -L and
-;;; -l switches passed to the linker, add corresponding -rpath arguments, and
-;;; invoke the actual linker with this new set of arguments.
-;;;
-;;; The alternatives to this hack would be:
-;;;
-;;; 1. Using $LD_RUN_PATH. However, that would tend to include more than
-;;; needed in the RPATH; for instance, given a package with `libfoo' as
-;;; an input, all its binaries would have libfoo in their RPATH,
-;;; regardless of whether they actually NEED it.
-;;;
-;;; 2. Use a GCC "lib" spec string such as `%{L*:-rpath %*}', which adds a
-;;; `-rpath LIBDIR' argument for each occurrence of `-L LIBDIR'.
-;;; However, this doesn't work when $LIBRARY_PATH is used, because the
-;;; additional `-L' switches are not matched by the above rule, because
-;;; the rule only matches explicit user-provided switches. See
-;;; <http://gcc.gnu.org/ml/gcc-help/2012-09/msg00110.html> for details.
-;;;
-;;; As a bonus, this wrapper checks for "impurities"--i.e., references to
-;;; libraries outside the store.
-;;;
-;;; Code:
-
-(define %real-ld
- ;; Name of the linker that we wrap.
- "@LD@")
-
-(define %store-directory
- ;; File name of the store.
- (or (getenv "NIX_STORE") "/nix/store"))
-
-(define %temporary-directory
- ;; Temporary directory.
- (or (getenv "TMPDIR") "/tmp"))
-
-(define %build-directory
- ;; Top build directory when run from a builder.
- (getenv "NIX_BUILD_TOP"))
-
-(define %allow-impurities?
- ;; Whether to allow references to libraries outside the store.
- (getenv "GUIX_LD_WRAPPER_ALLOW_IMPURITIES"))
-
-(define %debug?
- ;; Whether to emit debugging output.
- (getenv "GUIX_LD_WRAPPER_DEBUG"))
-
-(define (pure-file-name? file)
- ;; Return #t when FILE is the name of a file either within the store or
- ;; within the build directory.
- (or (not (string-prefix? "/" file))
- (string-prefix? %store-directory file)
- (string-prefix? %temporary-directory file)
- (and %build-directory
- (string-prefix? %build-directory file))))
-
-(define (switch-arguments switch args)
- ;; Return the arguments passed for the occurrences of SWITCH--e.g.,
- ;; "-L"--in ARGS.
- (let ((prefix-len (string-length switch)))
- (fold-right (lambda (arg path)
- (if (string-prefix? switch arg)
- (cons (substring arg prefix-len) path)
- path))
- '()
- args)))
-
-(define (library-path args)
- ;; Return the library search path extracted from `-L' switches in ARGS.
- ;; Note: allow references to out-of-store directories. When this leads to
- ;; actual impurities, this is caught later.
- (switch-arguments "-L" args))
-
-(define (library-files-linked args)
- ;; Return the file names of shared libraries explicitly linked against via
- ;; `-l' in ARGS.
- (map (lambda (lib)
- (string-append "lib" lib ".so"))
- (switch-arguments "-l" args)))
-
-(define (rpath-arguments lib-path library-files)
- ;; Return the `-rpath' argument list for each of LIBRARY-FILES found in
- ;; LIB-PATH.
- (fold-right (lambda (file args)
- (let ((absolute (search-path lib-path file)))
- (if absolute
- (if (or %allow-impurities?
- (pure-file-name? absolute))
- (cons* "-rpath" (dirname absolute)
- args)
- (begin
- (format (current-error-port)
- "ld-wrapper: error: attempt to use impure library ~s~%"
- absolute)
- (exit 1)))
- args)))
- '()
- library-files))
-
-(define (ld-wrapper . args)
- ;; Invoke the real `ld' with ARGS, augmented with `-rpath' switches.
- (let* ((lib-path (library-path args))
- (libs (library-files-linked args))
- (args (append args (rpath-arguments lib-path libs))))
- (if %debug?
- (format (current-error-port)
- "ld-wrapper: invoking `~a' with ~s~%"
- %real-ld args))
- (apply execl %real-ld (basename %real-ld) args)))
-
-;;; ld-wrapper.scm ends here
diff --git a/distro/packages/less.scm b/distro/packages/less.scm
deleted file mode 100644
index 1f05b50e1e..0000000000
--- a/distro/packages/less.scm
+++ /dev/null
@@ -1,51 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 less)
- #:use-module (guix licenses)
- #:use-module (distro packages ncurses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public less
- (package
- (name "less")
- (version "451")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/less/less-"
- version ".tar.gz"))
- (sha256
- (base32
- "0mszdd9m1dsbg59pav62swg9f87xmjpfspcw2jsazzksciy2is4z"))))
- (build-system gnu-build-system)
- (inputs `(("ncurses" ,ncurses)))
- (home-page "https://www.gnu.org/software/less/")
- (synopsis
- "GNU less is a program similar to more, but which allows backward
-movement in the file as well as forward movement")
- (description
- "GNU less is a program similar to more, but which allows backward
-movement in the file as well as forward movement. Also, less does not
-have to read the entire input file before starting, so with large input
-files it starts up faster than text editors like vi. Less uses
-termcap (or terminfo on some systems), so it can run on a variety of
-terminals. There is even limited support for hardcopy terminals.")
- (license gpl3+))) ; some files are under GPLv2+ \ No newline at end of file
diff --git a/distro/packages/libffi.scm b/distro/packages/libffi.scm
deleted file mode 100644
index 0900a43cb4..0000000000
--- a/distro/packages/libffi.scm
+++ /dev/null
@@ -1,73 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 libffi)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public libffi
- (let ((post-install-phase
- ;; Install headers in the right place.
- '(lambda* (#:key outputs #:allow-other-keys)
- (define out (assoc-ref outputs "out"))
- (mkdir (string-append out "/include"))
- (with-directory-excursion
- (string-append out "/lib/libffi-3.0.9/include")
- (for-each (lambda (h)
- (format #t "moving `~a' to includedir~%" h)
- (rename-file h (string-append out "/include/" h)))
- (scandir "."
- (lambda (x)
- (not (member x '("." ".."))))))))))
- (package
- (name "libffi")
- (version "3.0.9")
- (source (origin
- (method url-fetch)
- (uri
- (string-append "ftp://sourceware.org/pub/libffi/"
- name "-" version ".tar.gz"))
- (sha256
- (base32
- "0ln4jbpb6clcsdpb9niqk0frgx4k0xki96wiv067ig0q4cajb7aq"))))
- (build-system gnu-build-system)
- (arguments `(#:modules ((guix build utils) (guix build gnu-build-system)
- (ice-9 ftw) (srfi srfi-26))
- #:phases (alist-cons-after 'install 'post-install
- ,post-install-phase
- %standard-phases)))
- (synopsis "libffi, a foreign function call interface library")
- (description
- "The libffi library provides a portable, high level programming interface
-to various calling conventions. This allows a programmer to call any
-function specified by a call interface description at run-time.
-
-FFI stands for Foreign Function Interface. A foreign function interface is
-the popular name for the interface that allows code written in one language
-to call code written in another language. The libffi library really only
-provides the lowest, machine dependent layer of a fully featured foreign
-function interface. A layer must exist above libffi that handles type
-conversions for values passed between the two languages.")
- (home-page "http://sources.redhat.com/libffi/")
-
- ;; See <http://github.com/atgreen/libffi/blob/master/LICENSE>.
- (license expat))))
-
diff --git a/distro/packages/libidn.scm b/distro/packages/libidn.scm
deleted file mode 100644
index dbae143b3a..0000000000
--- a/distro/packages/libidn.scm
+++ /dev/null
@@ -1,51 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 libidn)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libidn
- (package
- (name "libidn")
- (version "1.26")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/libidn/libidn-" version
- ".tar.gz"))
- (sha256 (base32
- "0g657kv60rh486m7bwyp5k24ljmym4wnb8nmk6d3i3qgr1qlqbqa"))))
- (build-system gnu-build-system)
-;; FIXME: No Java and C# libraries are currently built.
- (synopsis "GNU Libidn, a library to encode and decode internationalised domain names")
- (description
- "GNU Libidn is a fully documented implementation of the Stringprep,
-Punycode and IDNA specifications. Libidn's purpose is to encode and decode
-internationalised domain names.
-
-The library contains a generic Stringprep implementation. Profiles for
-Nameprep, iSCSI, SASL, XMPP and Kerberos V5 are included. Punycode and
-ASCII Compatible Encoding (ACE) via IDNA are supported. A mechanism to
-define Top-Level Domain (TLD) specific validation tables, and to compare
-strings against those tables, is included.
-Default tables for some TLDs are also included.")
- (license lgpl2.1+)
- (home-page "http://www.gnu.org/software/libidn/")))
diff --git a/distro/packages/libjpeg.scm b/distro/packages/libjpeg.scm
deleted file mode 100644
index c343771fb0..0000000000
--- a/distro/packages/libjpeg.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 libjpeg)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libjpeg
- (package
- (name "libjpeg")
- (version "9")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://www.ijg.org/files/jpegsrc.v"
- version ".tar.gz"))
- (sha256 (base32
- "0dg5wxcx3cw0hal9gvivj97vid9z0s5sb1yvg55hpxmafn9rxqn4"))))
- (build-system gnu-build-system)
- (synopsis "Libjpeg, a library for handling JPEG files")
- (description
- "Libjpeg implements JPEG image encoding, decoding, and transcoding.
-JPEG is a standardized compression method for full-color and gray-scale
-images.
-The included programs provide conversion between the JPEG format and
-image files in PBMPLUS PPM/PGM, GIF, BMP, and Targa file formats.")
- (license ijg)
- (home-page "http://www.ijg.org/")))
-
-(define-public libjpeg-8
- (package (inherit libjpeg)
- (name "libjpeg-8")
- (version "8d")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://www.ijg.org/files/jpegsrc.v"
- version ".tar.gz"))
- (sha256 (base32
- "1cz0dy05mgxqdgjf52p54yxpyy95rgl30cnazdrfmw7hfca9n0h0"))))))
-
diff --git a/distro/packages/libsigsegv.scm b/distro/packages/libsigsegv.scm
deleted file mode 100644
index a21e2064c7..0000000000
--- a/distro/packages/libsigsegv.scm
+++ /dev/null
@@ -1,47 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 libsigsegv)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public libsigsegv
- (package
- (name "libsigsegv")
- (version "2.10")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/libsigsegv/libsigsegv-"
- version ".tar.gz"))
- (sha256
- (base32 "16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44"))))
- (build-system gnu-build-system)
- (home-page "http://www.gnu.org/software/libsigsegv/")
- (synopsis "GNU libsigsegv, a library to handle page faults in user mode")
- (description
-"GNU libsigsegv is a library for handling page faults in user mode. A page
-fault occurs when a program tries to access to a region of memory that is
-currently not available. Catching and handling a page fault is a useful
-technique for implementing pageable virtual memory, memory-mapped access to
-persistent databases, generational garbage collectors, stack overflow
-handlers, distributed shared memory, and more.")
- (license gpl2+)))
diff --git a/distro/packages/libtiff.scm b/distro/packages/libtiff.scm
deleted file mode 100644
index b5a12c53e2..0000000000
--- a/distro/packages/libtiff.scm
+++ /dev/null
@@ -1,65 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 libtiff)
- #:use-module (distro)
- #:use-module (distro packages file)
- #:use-module (distro packages libjpeg)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libtiff
- (package
- (name "libtiff")
- (version "4.0.3")
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://ftp.remotesensing.org/pub/libtiff/tiff-"
- version ".tar.gz"))
- (sha256 (base32
- "0wj8d1iwk9vnpax2h29xqc2hwknxg3s0ay2d5pxkg59ihbifn6pa"))))
- (build-system gnu-build-system)
- (inputs `(("file" ,file)
- ("libjpeg-8" ,libjpeg-8)))
- ;; currently does not compile with libjpeg version 9
- (arguments
- `(#:configure-flags
- (list (string-append "--with-jpeg-include-dir="
- (assoc-ref %build-inputs "libjpeg-8")
- "/include"))
- #:phases
- (alist-replace
- 'configure
- (lambda* (#:key #:allow-other-keys #:rest args)
- (let ((configure (assoc-ref %standard-phases 'configure)))
- (substitute* "configure"
- (("`/usr/bin/file")
- (string-append "`" (which "file"))))
- (apply configure args)))
- %standard-phases)))
- (synopsis "Libtiff, a library for handling TIFF files")
- (description
- "Libtiff provides support for the Tag Image File Format (TIFF), a format
-used for storing image data.
-Included are a library, libtiff, for reading and writing TIFF and a small
-collection of tools for doing simple manipulations of TIFF images.")
- (license (bsd-style "file://COPYRIGHT"
- "See COPYRIGHT in the distribution."))
- (home-page "http://www.libtiff.org/")))
diff --git a/distro/packages/libunistring.scm b/distro/packages/libunistring.scm
deleted file mode 100644
index 1359f9d488..0000000000
--- a/distro/packages/libunistring.scm
+++ /dev/null
@@ -1,58 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 libunistring)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public libunistring
- (package
- (name "libunistring")
- (version "0.9.3")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/libunistring/libunistring-"
- version ".tar.gz"))
- (sha256
- (base32
- "18q620269xzpw39dwvr9zpilnl2dkw5z5kz3mxaadnpv4k3kw3b1"))))
- (propagated-inputs '()) ; FIXME: add libiconv when !glibc
- (build-system gnu-build-system)
- (synopsis "GNU Libunistring, a Unicode string library")
- (description
- "This library provides functions for manipulating Unicode strings and for
-manipulating C strings according to the Unicode standard.
-
-GNU libunistring is for you if your application involves non-trivial text
-processing, such as upper/lower case conversions, line breaking, operations
-on words, or more advanced analysis of text. Text provided by the user can,
-in general, contain characters of all kinds of scripts. The text processing
-functions provided by this library handle all scripts and all languages.
-
-libunistring is for you if your application already uses the ISO C / POSIX
-<ctype.h>, <wctype.h> functions and the text it operates on is provided by
-the user and can be in any language.
-
-libunistring is also for you if your application uses Unicode strings as
-internal in-memory representation.")
- (home-page "http://www.gnu.org/software/libunistring/")
- (license lgpl3+)))
diff --git a/distro/packages/libusb.scm b/distro/packages/libusb.scm
deleted file mode 100644
index eb7edb40e1..0000000000
--- a/distro/packages/libusb.scm
+++ /dev/null
@@ -1,44 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 libusb)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public libusb
- (package
- (name "libusb")
- (version "1.0.9")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/libusb/libusb-1.0/"
- "libusb-" version "/libusb-" version ".tar.bz2"))
- (sha256
- (base32
- "16sz34ix6hw2wwl3kqx6rf26fg210iryr68wc439dc065pffw879"))))
- (build-system gnu-build-system)
- (home-page "http://www.libusb.org")
- (synopsis "Libusb, a user-space USB library")
- (description
- "Libusb is a library that gives applications easy access to USB
-devices on various operating systems.")
- (license lgpl2.1+))) \ No newline at end of file
diff --git a/distro/packages/linux.scm b/distro/packages/linux.scm
deleted file mode 100644
index 534aac11ab..0000000000
--- a/distro/packages/linux.scm
+++ /dev/null
@@ -1,259 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 linux)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages flex)
- #:use-module (distro packages libusb)
- #:use-module (distro packages ncurses)
- #:use-module (distro packages perl)
- #:use-module (distro packages pkg-config)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public linux-libre-headers
- (let* ((version* "3.3.8")
- (build-phase
- '(lambda* (#:key system #:allow-other-keys)
- (let ((arch (car (string-split system #\-))))
- (setenv "ARCH"
- (cond ((string=? arch "i686") "i386")
- (else arch)))
- (format #t "`ARCH' set to `~a'~%" (getenv "ARCH")))
-
- (and (zero? (system* "make" "defconfig"))
- (zero? (system* "make" "mrproper" "headers_check")))))
- (install-phase
- `(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (and (zero? (system* "make"
- (string-append "INSTALL_HDR_PATH=" out)
- "headers_install"))
- (mkdir (string-append out "/include/config"))
- (call-with-output-file
- (string-append out
- "/include/config/kernel.release")
- (lambda (p)
- (format p "~a-default~%" ,version*))))))))
- (package
- (name "linux-libre-headers")
- (version version*)
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://linux-libre.fsfla.org/pub/linux-libre/releases/3.3.8-gnu/linux-libre-"
- version "-gnu.tar.xz"))
- (sha256
- (base32
- "0jkfh0z1s6izvdnc3njm39dhzp1cg8i06jv06izwqz9w9qsprvnl"))))
- (build-system gnu-build-system)
- (native-inputs `(("perl" ,perl)))
- (arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1))
- #:phases (alist-replace
- 'build ,build-phase
- (alist-replace
- 'install ,install-phase
- (alist-delete 'configure %standard-phases)))
- #:tests? #f))
- (synopsis "GNU Linux-Libre kernel headers")
- (description "Headers of the Linux-Libre kernel.")
- (license "GPLv2")
- (home-page "http://www.gnu.org/software/linux-libre/"))))
-
-(define-public linux-pam
- (package
- (name "linux-pam")
- (version "1.1.6")
- (source
- (origin
- (method url-fetch)
- (uri (list (string-append "http://www.linux-pam.org/library/Linux-PAM-"
- version ".tar.bz2")
- (string-append "mirror://kernel.org/linux/libs/pam/library/Linux-PAM-"
- version ".tar.bz2")))
- (sha256
- (base32
- "1hlz2kqvbjisvwyicdincq7nz897b9rrafyzccwzqiqg53b8gf5s"))))
- (build-system gnu-build-system)
- (inputs
- `(("flex" ,flex)
-
- ;; TODO: optional dependencies
- ;; ("libxcrypt" ,libxcrypt)
- ;; ("cracklib" ,cracklib)
- ))
- (arguments
- ;; XXX: Tests won't run in chroot, presumably because /etc/pam.d
- ;; isn't available.
- '(#:tests? #f))
- (home-page "http://www.linux-pam.org/")
- (synopsis "Pluggable authentication modules for Linux")
- (description
- "A *Free* project to implement OSF's RFC 86.0.
-Pluggable authentication modules are small shared object files that can
-be used through the PAM API to perform tasks, like authenticating a user
-at login. Local and dynamic reconfiguration are its key features")
- (license bsd-3)))
-
-(define-public psmisc
- (package
- (name "psmisc")
- (version "22.20")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/psmisc/psmisc/psmisc-"
- version ".tar.gz"))
- (sha256
- (base32
- "052mfraykmxnavpi8s78aljx8w87hyvpx8mvzsgpjsjz73i28wmi"))))
- (build-system gnu-build-system)
- (inputs `(("ncurses" ,ncurses)))
- (home-page "http://psmisc.sourceforge.net/")
- (synopsis
- "set of utilities that use the proc filesystem, such as fuser, killall, and pstree")
- (description
- "This PSmisc package is a set of some small useful utilities that
-use the proc filesystem. We're not about changing the world, but
-providing the system administrator with some help in common tasks.")
- (license gpl2+)))
-
-(define-public util-linux
- (package
- (name "util-linux")
- (version "2.21")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://kernel.org/linux/utils/"
- name "/v" version "/"
- name "-" version ".2" ".tar.xz"))
- (sha256
- (base32
- "1rpgghf7n0zx0cdy8hibr41wvkm2qp1yvd8ab1rxr193l1jmgcir"))))
- (build-system gnu-build-system)
- (arguments
- `(#:configure-flags '("--disable-use-tty-group")
- #:phases (alist-cons-after
- 'install 'patch-chkdupexe
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* (string-append out "/bin/chkdupexe")
- ;; Allow 'patch-shebang' to do its work.
- (("@PERL@") "/bin/perl"))))
- %standard-phases)))
- (inputs `(("zlib" ,guix:zlib)
- ("ncurses" ,ncurses)
- ("perl" ,perl)))
- (home-page "https://www.kernel.org/pub/linux/utils/util-linux/")
- (synopsis
- "util-linux is a random collection of utilities for the Linux kernel")
- (description
- "util-linux is a random collection of utilities for the Linux kernel.")
-
- ;; Note that util-linux doesn't use the same license for all the
- ;; code. GPLv2+ is the default license for a code without an
- ;; explicitly defined license.
- (license (list gpl3+ gpl2+ gpl2 lgpl2.0+
- bsd-4 public-domain))))
-
-(define-public procps
- (package
- (name "procps")
- (version "3.2.8")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://procps.sourceforge.net/procps-"
- version ".tar.gz"))
- (sha256
- (base32
- "0d8mki0q4yamnkk4533kx8mc0jd879573srxhg6r2fs3lkc6iv8i"))))
- (build-system gnu-build-system)
- (inputs `(("ncurses" ,ncurses)
- ("patch/make-3.82" ,(search-patch "procps-make-3.82.patch"))))
- (arguments
- '(#:patches (list (assoc-ref %build-inputs "patch/make-3.82"))
- #:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- ;; No `configure', just a single Makefile.
- (let ((out (assoc-ref outputs "out")))
- (substitute* "Makefile"
- (("/usr/") "/")
- (("--(owner|group) 0") "")
- (("ldconfig") "true")
- (("^LDFLAGS[[:blank:]]*:=(.*)$" _ value)
- ;; Add libproc to the RPATH.
- (string-append "LDFLAGS := -Wl,-rpath="
- out "/lib" value))))
- (setenv "CC" "gcc"))
- (alist-replace
- 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (and (zero?
- (system* "make" "install"
- (string-append "DESTDIR=" out)))
-
- ;; Sanity check.
- (zero?
- (system* (string-append out "/bin/ps")
- "--version")))))
- %standard-phases))
-
- ;; What did you expect? Tests?
- #:tests? #f))
- (home-page "http://procps.sourceforge.net/")
- (synopsis
- "Utilities that give information about processes using the /proc filesystem")
- (description
- "procps is the package that has a bunch of small useful utilities
-that give information about processes using the Linux /proc file system.
-The package includes the programs ps, top, vmstat, w, kill, free,
-slabtop, and skill.")
- (license gpl2)))
-
-(define-public usbutils
- (package
- (name "usbutils")
- (version "006")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://kernel.org/linux/utils/usb/usbutils/"
- "usbutils-" version ".tar.xz"))
- (sha256
- (base32
- "03pd57vv8c6x0hgjqcbrxnzi14h8hcghmapg89p8k5zpwpkvbdfr"))))
- (build-system gnu-build-system)
- (inputs
- `(("libusb" ,libusb) ("pkg-config" ,pkg-config)))
- (home-page "http://www.linux-usb.org/")
- (synopsis
- "Tools for working with USB devices, such as lsusb")
- (description
- "Tools for working with USB devices, such as lsusb.")
- (license gpl2+)))
diff --git a/distro/packages/lout.scm b/distro/packages/lout.scm
deleted file mode 100644
index d3ff390b46..0000000000
--- a/distro/packages/lout.scm
+++ /dev/null
@@ -1,132 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 lout)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(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"))
- (mkdir (string-append out "/lib"))
- (mkdir (string-append out "/man"))
- (mkdir-p (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 url-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
- `(;; FIXME: Add dependency on Ghostscript.
- ;; ("ghostscript" ,(lambda _
- ;; (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)))))
- (synopsis "Lout, a document layout system similar in style to LaTeX")
- (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 gpl3+)
- (home-page "http://savannah.nongnu.org/projects/lout/"))))
diff --git a/distro/packages/lsh.scm b/distro/packages/lsh.scm
deleted file mode 100644
index d2c2d9082d..0000000000
--- a/distro/packages/lsh.scm
+++ /dev/null
@@ -1,126 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 lsh)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro)
- #:use-module (distro packages m4)
- #:use-module (distro packages linux)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages readline)
- #:use-module (distro packages gperf)
- #:use-module (distro packages base))
-
-(define-public liboop
- (package
- (name "liboop")
- (version "1.0")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://download.ofb.net/liboop/liboop-"
- version ".tar.gz"))
- (sha256
- (base32
- "0z6rlalhvfca64jpvksppc9bdhs7jwhiw4y35g5ibvh91xp3rn1l"))))
- (build-system gnu-build-system)
- (home-page "http://liboop.ofb.net/")
- (synopsis "`liboop', an event loop library")
- (description "liboop is an event loop library.")
- (license lgpl2.1+)))
-
-(define-public lsh
- (package
- (name "lsh")
- (version "2.0.4")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/lsh/lsh-"
- version ".tar.gz"))
- (sha256
- (base32
- "149hf49xcj99wwvi7hcb59igq4vpyv8har1br1if3lrsw5irsjv1"))))
- (build-system gnu-build-system)
- (inputs
- `(("linux-pam" ,linux-pam)
- ("m4" ,m4)
- ("readline" ,readline)
- ("liboop" ,liboop)
- ("zlib" ,guix:zlib)
- ("gmp" ,gmp)
- ("guile" ,guile-final)
- ("gperf" ,gperf)
- ("psmisc" ,psmisc) ; for `killall'
-
- ("patch/no-root-login" ,(search-patch "lsh-no-root-login.patch"))
- ("patch/guile-compat" ,(search-patch "lsh-guile-compat.patch"))
- ("patch/pam-service-name"
- ,(search-patch "lsh-pam-service-name.patch"))))
- (arguments
- '(#:patches (list (assoc-ref %build-inputs "patch/no-root-login")
- (assoc-ref %build-inputs "patch/pam-service-name")
- (assoc-ref %build-inputs "patch/guile-compat"))
-
- ;; Skip the `configure' test that checks whether /dev/ptmx &
- ;; co. work as expected, because it relies on impurities (for
- ;; instance, /dev/pts may be unavailable in chroots.)
- #:configure-flags '("lsh_cv_sys_unix98_ptys=yes")
-
- ;; FIXME: Tests won't run in a chroot, presumably because
- ;; /etc/profile is missing, and thus clients get an empty $PATH
- ;; and nothing works.
- #:tests? #f
-
- #:phases
- (alist-cons-before
- 'configure 'fix-test-suite
- (lambda _
- ;; Tests rely on $USER being set.
- (setenv "USER" "guix")
-
- (substitute* "src/testsuite/functions.sh"
- (("localhost")
- ;; Avoid host name lookups since they don't work in chroot
- ;; builds.
- "127.0.0.1")
- (("set -e")
- ;; Make tests more verbose.
- "set -e\nset -x"))
-
- (substitute* (find-files "src/testsuite" "-test$")
- (("localhost") "127.0.0.1"))
-
- (substitute* "src/testsuite/login-auth-test"
- (("/bin/cat")
- ;; Use the right path to `cat'.
- (which "cat"))))
- %standard-phases)))
- (home-page "http://www.lysator.liu.se/~nisse/lsh/")
- (synopsis
- "GNU lsh, a GPL'd implementation of the SSH protocol")
- (description
- "lsh is a free implementation (in the GNU sense) of the ssh
-version 2 protocol, currently being standardised by the IETF
-SECSH working group.")
- (license gpl2+)))
diff --git a/distro/packages/m4.scm b/distro/packages/m4.scm
deleted file mode 100644
index 7f2bed3ab7..0000000000
--- a/distro/packages/m4.scm
+++ /dev/null
@@ -1,87 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 m4)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public m4
- (package
- (name "m4")
- (version "1.4.16")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/m4/m4-"
- version ".tar.bz2"))
- (sha256
- (base32
- "035r7ma272j2cwni2961jp22k6bn3n9xwn3b3qbcn2yrvlghql22"))))
- (build-system gnu-build-system)
- (arguments (case-lambda
- ((system)
- ;; XXX: Disable tests on those platforms with know issues.
- `(#:tests? ,(not (member system
- '("x86_64-darwin"
- "i686-cygwin"
- "i686-sunos")))
- #:patches (list (assoc-ref %build-inputs "patch/s_isdir")
- (assoc-ref %build-inputs
- "patch/readlink-EINVAL")
- (assoc-ref %build-inputs "patch/gets"))
- #:phases (alist-cons-before
- 'check 'pre-check
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Fix references to /bin/sh.
- (let ((bash (assoc-ref inputs "bash")))
- (for-each patch-shebang
- (find-files "tests" "\\.sh$"))
- (substitute* (find-files "tests"
- "posix_spawn")
- (("/bin/sh")
- (format #f "~a/bin/bash" bash)))))
- %standard-phases)))
- ((system cross-system)
- `(#:patches (list (assoc-ref %build-inputs "patch/s_isdir")
- (assoc-ref %build-inputs
- "patch/readlink-EINVAL")
- (assoc-ref %build-inputs "patch/gets"))))))
- (inputs `(("patch/s_isdir" ,(search-patch "m4-s_isdir.patch"))
- ("patch/readlink-EINVAL"
- ,(search-patch "m4-readlink-EINVAL.patch"))
- ("patch/gets" ,(search-patch "m4-gets-undeclared.patch"))))
- (synopsis "GNU M4, a macro processor")
- (description
- "GNU M4 is an implementation of the traditional Unix macro processor. It
-is mostly SVR4 compatible although it has some extensions (for example,
-handling more than 9 positional parameters to macros). GNU M4 also has
-built-in functions for including files, running shell commands, doing
-arithmetic, etc.
-
-GNU M4 is a macro processor in the sense that it copies its input to the
-output expanding macros as it goes. Macros are either builtin or
-user-defined and can take any number of arguments. Besides just doing macro
-expansion, m4 has builtin functions for including named files, running UNIX
-commands, doing integer arithmetic, manipulating text in various ways,
-recursion etc... m4 can be used either as a front-end to a compiler or as a
-macro processor in its own right.")
- (license gpl3+)
- (home-page "http://www.gnu.org/software/m4/")))
diff --git a/distro/packages/mailutils.scm b/distro/packages/mailutils.scm
deleted file mode 100644
index 55b40f5974..0000000000
--- a/distro/packages/mailutils.scm
+++ /dev/null
@@ -1,106 +0,0 @@
-;;; 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 mailutils)
- #:use-module (distro)
- #:use-module (distro packages linux)
- #:use-module (distro packages gnutls)
- #:use-module (distro packages gdbm)
- #:use-module (distro packages guile)
- #:use-module (distro packages ncurses)
- #:use-module (distro packages readline)
- #:use-module (distro packages dejagnu)
- #:use-module (distro packages m4)
- #:use-module (distro packages texinfo)
- #:use-module (distro packages mysql)
- #:use-module (distro packages autotools)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public mailutils
- (package
- (name "mailutils")
- (version "2.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/mailutils/mailutils-"
- version ".tar.bz2"))
- (sha256
- (base32
- "0szbqa12zqzldqyw97lxqax3ja2adis83i7brdfsxmrfw68iaf65"))))
- (build-system gnu-build-system)
- (arguments
- '(;; TODO: Add `--with-sql'.
- #:patches (list (assoc-ref %build-inputs
- "patch/gets-undeclared"))
- #:phases (alist-cons-before
- 'build 'pre-build
- (lambda _
- ;; Use Guile 2.0's public API.
- (substitute* "libmu_scm/mu_message.c"
- (("scm_i_string_length")
- "scm_c_string_length"))
-
- ;; This file should be generated to use the right
- ;; value of $(libdir) et al.
- (delete-file "libmu_scm/mailutils.scm")
-
- ;; Use the right file name for `cat'.
- (substitute* "testsuite/lib/mailutils.exp"
- (("/bin/cat")
- (which "cat"))))
- %standard-phases)
- #:parallel-tests? #f))
- (inputs
- `(("dejagnu" ,dejagnu)
- ("m4" ,m4)
- ("texinfo" ,texinfo)
- ("guile" ,guile-2.0)
- ("gnutls" ,gnutls)
- ("ncurses" ,ncurses)
- ("readline" ,readline)
- ("linux-pam" ,linux-pam)
- ("libtool" ,libtool)
- ("gdbm" ,gdbm)
- ("patch/gets-undeclared"
- ,(search-patch "m4-gets-undeclared.patch"))))
- (home-page "http://www.gnu.org/software/mailutils/")
- (synopsis "A rich and powerful protocol-independent mail framework")
- (description
- "GNU Mailutils is a rich and powerful protocol-independent mail
-framework. It contains a series of useful mail libraries, clients, and
-servers. These are the primary mail utilities for the GNU system. The
-central library is capable of handling electronic mail in various
-mailbox formats and protocols, both local and remote. Specifically,
-this project contains a POP3 server, an IMAP4 server, and a Sieve mail
-filter. It also provides a POSIX `mailx' client, and a collection of
-other handy tools.
-
-The GNU Mailutils libraries supply an ample set of primitives for
-handling electronic mail in programs written in C, C++, Python or
-Scheme.
-
-The utilities provided by Mailutils include imap4d and pop3d mail
-servers, mail reporting utility comsatd, general-purpose mail delivery
-agent maidag, mail filtering program sieve, and an implementation of MH
-message handling system.")
- (license
- ;; Libraries are under LGPLv3+, and programs under GPLv3+.
- (list gpl3+ lgpl3+))))
diff --git a/distro/packages/make-bootstrap.scm b/distro/packages/make-bootstrap.scm
deleted file mode 100644
index b1d74ec5d6..0000000000
--- a/distro/packages/make-bootstrap.scm
+++ /dev/null
@@ -1,562 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 make-bootstrap)
- #:use-module (guix utils)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix build-system trivial)
- #:use-module (guix build-system gnu)
- #:use-module ((distro) #:select (search-patch))
- #:use-module (distro packages base)
- #:use-module (distro packages bash)
- #:use-module (distro packages compression)
- #:use-module (distro packages gawk)
- #:use-module (distro packages guile)
- #:use-module (distro packages linux)
- #:use-module (distro packages multiprecision)
- #:use-module (ice-9 match)
- #:use-module (srfi srfi-1)
- #:export (%bootstrap-binaries-tarball
- %binutils-bootstrap-tarball
- %glibc-bootstrap-tarball
- %gcc-bootstrap-tarball
- %guile-bootstrap-tarball
- %bootstrap-tarballs))
-
-;;; Commentary:
-;;;
-;;; This modules provides tools to build tarballs of the "bootstrap binaries"
-;;; used in (distro packages bootstrap). These statically-linked binaries are
-;;; taken for granted and used as the root of the whole bootstrap procedure.
-;;;
-;;; Code:
-
-(define %glibc-for-bootstrap
- ;; A libc whose `system' and `popen' functions looks for `sh' in $PATH,
- ;; without nscd, and with static NSS modules.
- (package (inherit glibc-final)
- (arguments
- (lambda (system)
- (substitute-keyword-arguments ((package-arguments glibc-final) system)
- ((#:patches patches)
- `(cons (assoc-ref %build-inputs "patch/system")
- ,patches))
- ((#:configure-flags flags)
- ;; Arrange so that getaddrinfo & co. do not contact the nscd,
- ;; and can use statically-linked NSS modules.
- `(cons* "--disable-nscd" "--disable-build-nscd"
- "--enable-static-nss"
- ,flags)))))
- (inputs
- `(("patch/system" ,(search-patch "glibc-bootstrap-system.patch"))
- ,@(package-inputs glibc-final)))))
-
-(define %standard-inputs-with-relocatable-glibc
- ;; Standard inputs with the above libc and corresponding GCC.
- `(("libc", %glibc-for-bootstrap)
- ("gcc" ,(package-with-explicit-inputs
- gcc-4.7
- `(("libc",%glibc-for-bootstrap)
- ,@(alist-delete "libc" %final-inputs))
- (current-source-location)))
- ,@(fold alist-delete %final-inputs '("libc" "gcc"))))
-
-(define %bash-static
- (static-package bash-light))
-
-(define %static-inputs
- ;; Packages that are to be used as %BOOTSTRAP-INPUTS.
- (let ((coreutils (package (inherit coreutils)
- (arguments
- `(#:configure-flags
- '("--disable-nls"
- "--disable-silent-rules"
- "--enable-no-install-program=stdbuf,libstdbuf.so"
- "CFLAGS=-Os -g0" ; smaller, please
- "LDFLAGS=-static -pthread")
- #:tests? #f ; signal-related Gnulib tests fail
- ,@(package-arguments coreutils)))
-
- ;; Remove optional dependencies such as GMP.
- (inputs `(,(assoc "perl" (package-inputs coreutils))))))
- (bzip2 (package (inherit bzip2)
- (arguments
- (substitute-keyword-arguments (package-arguments bzip2)
- ((#:phases phases)
- `(alist-cons-before
- 'build 'dash-static
- (lambda _
- (substitute* "Makefile"
- (("^LDFLAGS[[:blank:]]*=.*$")
- "LDFLAGS = -static")))
- ,phases))))))
- (xz (package (inherit xz)
- (arguments
- `(#:strip-flags '("--strip-all")
- #:phases (alist-cons-before
- 'configure 'static-executable
- (lambda _
- ;; Ask Libtool for a static executable.
- (substitute* "src/xz/Makefile.in"
- (("^xz_LDADD =")
- "xz_LDADD = -all-static")))
- %standard-phases)))))
- (gawk (package (inherit gawk)
- (arguments
- (lambda (system)
- `(#:patches (list (assoc-ref %build-inputs "patch/sh"))
- ,@(substitute-keyword-arguments
- ((package-arguments gawk) system)
- ((#:phases phases)
- `(alist-cons-before
- 'configure 'no-export-dynamic
- (lambda _
- ;; Since we use `-static', remove
- ;; `-export-dynamic'.
- (substitute* "configure"
- (("-export-dynamic") "")))
- ,phases))))))
- (inputs `(("patch/sh" ,(search-patch "gawk-shell.patch"))))))
- (finalize (lambda (p)
- (static-package (package-with-explicit-inputs
- p
- %standard-inputs-with-relocatable-glibc)
- (current-source-location)))))
- `(,@(map (match-lambda
- ((name package)
- (list name (finalize package))))
- `(("tar" ,tar)
- ("gzip" ,gzip)
- ("bzip2" ,bzip2)
- ("xz" ,xz)
- ("patch" ,patch)
- ("coreutils" ,coreutils)
- ("sed" ,sed)
- ("grep" ,grep)
- ("gawk" ,gawk)))
- ("bash" ,%bash-static)
- ;; ("ld-wrapper" ,ld-wrapper)
- ;; ("binutils" ,binutils-final)
- ;; ("gcc" ,gcc-final)
- ;; ("libc" ,glibc-final)
- )))
-
-(define %static-binaries
- (package
- (name "static-binaries")
- (version "0")
- (build-system trivial-build-system)
- (source #f)
- (inputs %static-inputs)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (ice-9 ftw)
- (ice-9 match)
- (srfi srfi-1)
- (srfi srfi-26)
- (guix build utils))
-
- (let ()
- (define (directory-contents dir)
- (map (cut string-append dir "/" <>)
- (scandir dir (negate (cut member <> '("." ".."))))))
-
- (define (copy-directory source destination)
- (for-each (lambda (file)
- (format #t "copying ~s...~%" file)
- (copy-file file
- (string-append destination "/"
- (basename file))))
- (directory-contents source)))
-
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
-
- ;; Copy Coreutils binaries.
- (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
- (source (string-append coreutils "/bin")))
- (copy-directory source bin))
-
- ;; For the other inputs, copy just one binary, which has the
- ;; same name as the input.
- (for-each (match-lambda
- ((name . dir)
- (let ((source (string-append dir "/bin/" name)))
- (format #t "copying ~s...~%" source)
- (copy-file source
- (string-append bin "/" name)))))
- (alist-delete "coreutils" %build-inputs))
-
- ;; But of course, there are exceptions to this rule.
- (let ((grep (assoc-ref %build-inputs "grep")))
- (copy-file (string-append grep "/bin/fgrep")
- (string-append bin "/fgrep"))
- (copy-file (string-append grep "/bin/egrep")
- (string-append bin "/egrep")))
-
- ;; Clear references to the store path.
- (for-each remove-store-references
- (directory-contents bin))
-
- (with-directory-excursion bin
- ;; Programs such as Perl's build system want these aliases.
- (symlink "bash" "sh")
- (symlink "gawk" "awk"))
-
- #t)))))
- (synopsis "Statically-linked bootstrap binaries")
- (description
- "Binaries used to bootstrap the distribution.")
- (license #f)
- (home-page #f)))
-
-(define %binutils-static
- ;; Statically-linked Binutils.
- (package (inherit binutils)
- (name "binutils-static")
- (arguments
- `(#:configure-flags '("--disable-gold" "--with-lib-path=/no-ld-lib-path")
- #:strip-flags '("--strip-all")
- #:phases (alist-cons-before
- 'configure 'all-static
- (lambda _
- ;; The `-all-static' libtool flag can only be passed
- ;; after `configure', since configure tests don't use
- ;; libtool, and only for executables built with libtool.
- (substitute* '("binutils/Makefile.in"
- "gas/Makefile.in"
- "ld/Makefile.in")
- (("^LDFLAGS =(.*)$" line)
- (string-append line
- "\nAM_LDFLAGS = -static -all-static\n"))))
- %standard-phases)))))
-
-(define %binutils-static-stripped
- ;; The subset of Binutils that we need.
- (package (inherit %binutils-static)
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
-
- (setvbuf (current-output-port) _IOLBF)
- (let* ((in (assoc-ref %build-inputs "binutils"))
- (out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (for-each (lambda (file)
- (let ((target (string-append bin "/" file)))
- (format #t "copying `~a'...~%" file)
- (copy-file (string-append in "/bin/" file)
- target)
- (remove-store-references target)))
- '("ar" "as" "ld" "nm" "objcopy" "objdump"
- "ranlib" "readelf" "size" "strings" "strip"))
- #t))))
- (inputs `(("binutils" ,%binutils-static)))))
-
-(define %glibc-stripped
- ;; GNU libc's essential shared libraries, dynamic linker, and headers,
- ;; with all references to store directories stripped. As a result,
- ;; libc.so is unusable and need to be patched for proper relocation.
- (let ((glibc %glibc-for-bootstrap))
- (package (inherit glibc)
- (name "glibc-stripped")
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
-
- (setvbuf (current-output-port) _IOLBF)
- (let* ((out (assoc-ref %outputs "out"))
- (libdir (string-append out "/lib"))
- (incdir (string-append out "/include"))
- (libc (assoc-ref %build-inputs "libc"))
- (linux (assoc-ref %build-inputs "linux-headers")))
- (mkdir-p libdir)
- (for-each (lambda (file)
- (let ((target (string-append libdir "/"
- (basename file))))
- (copy-file file target)
- (remove-store-references target)))
- (find-files (string-append libc "/lib")
- "^(crt.*|ld.*|lib(c|m|dl|rt|pthread|nsl|util).*\\.so(\\..*)?|libc_nonshared\\.a)$"))
-
- (copy-recursively (string-append libc "/include") incdir)
-
- ;; Copy some of the Linux-Libre headers that glibc headers
- ;; refer to.
- (mkdir (string-append incdir "/linux"))
- (for-each (lambda (file)
- (copy-file (string-append linux "/include/linux/" file)
- (string-append incdir "/linux/"
- (basename file))))
- '("limits.h" "errno.h" "socket.h" "kernel.h"
- "sysctl.h" "param.h" "ioctl.h" "types.h"
- "posix_types.h" "stddef.h"))
-
- (copy-recursively (string-append linux "/include/asm")
- (string-append incdir "/asm"))
- (copy-recursively (string-append linux "/include/asm-generic")
- (string-append incdir "/asm-generic"))
- #t))))
- (inputs `(("libc" ,glibc)
- ("linux-headers" ,linux-libre-headers))))))
-
-(define %gcc-static
- ;; A statically-linked GCC, with stripped-down functionality.
- (package-with-explicit-inputs
- (package (inherit gcc-final)
- (name "gcc-static")
- (arguments
- (lambda (system)
- `(#:modules ((guix build utils)
- (guix build gnu-build-system)
- (srfi srfi-1)
- (srfi srfi-26)
- (ice-9 regex))
- ,@(substitute-keyword-arguments ((package-arguments gcc-final) system)
- ((#:guile _) #f)
- ((#:implicit-inputs? _) #t)
- ((#:configure-flags flags)
- `(append (list
- "--disable-shared"
- "--disable-plugin"
- "--enable-languages=c"
- "--disable-libmudflap"
- "--disable-libgomp"
- "--disable-libssp"
- "--disable-libquadmath"
- "--disable-decimal-float")
- (remove (cut string-match "--(.*plugin|enable-languages)" <>)
- ,flags)))
- ((#:make-flags flags)
- `(cons "BOOT_LDFLAGS=-static" ,flags))))))
- (inputs `(("gmp-source" ,(package-source gmp))
- ("mpfr-source" ,(package-source mpfr))
- ("mpc-source" ,(package-source mpc))
- ("binutils" ,binutils-final)
- ,@(package-inputs gcc-4.7))))
- %standard-inputs-with-relocatable-glibc))
-
-(define %gcc-stripped
- ;; The subset of GCC files needed for bootstrap.
- (package (inherit gcc-4.7)
- (name "gcc-stripped")
- (build-system trivial-build-system)
- (source #f)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (srfi srfi-1)
- (srfi srfi-26)
- (guix build utils))
-
- (setvbuf (current-output-port) _IOLBF)
- (let* ((out (assoc-ref %outputs "out"))
- (bindir (string-append out "/bin"))
- (libdir (string-append out "/lib"))
- (libexecdir (string-append out "/libexec"))
- (gcc (assoc-ref %build-inputs "gcc")))
- (copy-recursively (string-append gcc "/bin") bindir)
- (for-each remove-store-references
- (find-files bindir ".*"))
-
- (copy-recursively (string-append gcc "/lib") libdir)
- (for-each remove-store-references
- (remove (cut string-suffix? ".h" <>)
- (find-files libdir ".*")))
-
- (copy-recursively (string-append gcc "/libexec")
- libexecdir)
- (for-each remove-store-references
- (find-files libexecdir ".*"))
- #t))))
- (inputs `(("gcc" ,%gcc-static)))))
-
-(define %guile-static
- ;; A statically-linked Guile that is relocatable--i.e., it can search
- ;; .scm and .go files relative to its installation directory, rather
- ;; than in hard-coded configure-time paths.
- (let ((guile (package (inherit guile-2.0)
- (inputs
- `(("patch/relocatable"
- ,(search-patch "guile-relocatable.patch"))
- ("patch/utf8"
- ,(search-patch "guile-default-utf8.patch"))
- ,@(package-inputs guile-2.0)))
- (arguments
- `(;; When `configure' checks for ltdl availability, it
- ;; doesn't try to link using libtool, and thus fails
- ;; because of a missing -ldl. Work around that.
- #:configure-flags '("LDFLAGS=-ldl")
-
- #:phases (alist-cons-before
- 'configure 'static-guile
- (lambda _
- (substitute* "libguile/Makefile.in"
- ;; Create a statically-linked `guile'
- ;; executable.
- (("^guile_LDFLAGS =")
- "guile_LDFLAGS = -all-static")
-
- ;; Add `-ldl' *after* libguile-2.0.la.
- (("^guile_LDADD =(.*)$" _ ldadd)
- (string-append "guile_LDADD = "
- (string-trim-right ldadd)
- " -ldl\n"))))
- %standard-phases)
-
- ;; Allow Guile to be relocated, as is needed during
- ;; bootstrap.
- #:patches
- (list (assoc-ref %build-inputs "patch/relocatable")
- (assoc-ref %build-inputs "patch/utf8"))
-
- ;; There are uses of `dynamic-link' in
- ;; {foreign,coverage}.test that don't fly here.
- #:tests? #f)))))
- (package-with-explicit-inputs (static-package guile)
- %standard-inputs-with-relocatable-glibc
- (current-source-location))))
-
-(define %guile-static-stripped
- ;; A stripped static Guile binary, for use during bootstrap.
- (package (inherit %guile-static)
- (name "guile-static-stripped")
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (let ()
- (use-modules (guix build utils))
-
- (let ((in (assoc-ref %build-inputs "guile"))
- (out (assoc-ref %outputs "out")))
- (mkdir-p (string-append out "/share/guile/2.0"))
- (copy-recursively (string-append in "/share/guile/2.0")
- (string-append out "/share/guile/2.0"))
-
- (mkdir-p (string-append out "/lib/guile/2.0/ccache"))
- (copy-recursively (string-append in "/lib/guile/2.0/ccache")
- (string-append out "/lib/guile/2.0/ccache"))
-
- (mkdir (string-append out "/bin"))
- (copy-file (string-append in "/bin/guile")
- (string-append out "/bin/guile"))
- (remove-store-references (string-append out "/bin/guile"))
- #t))))
- (inputs `(("guile" ,%guile-static)))))
-
-(define (tarball-package pkg)
- "Return a package containing a tarball of PKG."
- (package (inherit pkg)
- (location (source-properties->location (current-source-location)))
- (name (string-append (package-name pkg) "-tarball"))
- (build-system trivial-build-system)
- (inputs `(("tar" ,tar)
- ("xz" ,xz)
- ("input" ,pkg)))
- (arguments
- (lambda (system)
- (let ((name (package-name pkg))
- (version (package-version pkg)))
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
- (let ((out (assoc-ref %outputs "out"))
- (input (assoc-ref %build-inputs "input"))
- (tar (assoc-ref %build-inputs "tar"))
- (xz (assoc-ref %build-inputs "xz")))
- (mkdir out)
- (set-path-environment-variable "PATH" '("bin") (list tar xz))
- (with-directory-excursion input
- (zero? (system* "tar" "cJvf"
- (string-append out "/"
- ,name "-" ,version
- "-" ,system ".tar.xz")
- ".")))))))))))
-
-(define %bootstrap-binaries-tarball
- ;; A tarball with the statically-linked bootstrap binaries.
- (tarball-package %static-binaries))
-
-(define %binutils-bootstrap-tarball
- ;; A tarball with the statically-linked Binutils programs.
- (tarball-package %binutils-static-stripped))
-
-(define %glibc-bootstrap-tarball
- ;; A tarball with GNU libc's shared libraries, dynamic linker, and headers.
- (tarball-package %glibc-stripped))
-
-(define %gcc-bootstrap-tarball
- ;; A tarball with a dynamic-linked GCC and its headers.
- (tarball-package %gcc-stripped))
-
-(define %guile-bootstrap-tarball
- ;; A tarball with the statically-linked, relocatable Guile.
- (tarball-package %guile-static-stripped))
-
-(define %bootstrap-tarballs
- ;; A single derivation containing all the bootstrap tarballs, for
- ;; convenience.
- (package
- (name "bootstrap-tarballs")
- (version "0")
- (source #f)
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (let ((out (assoc-ref %outputs "out")))
- (use-modules (guix build utils)
- (ice-9 match)
- (srfi srfi-26))
-
- (setvbuf (current-output-port) _IOLBF)
- (mkdir out)
- (chdir out)
- (for-each (match-lambda
- ((name . directory)
- (for-each (lambda (file)
- (format #t "~a -> ~a~%" file out)
- (symlink file (basename file)))
- (find-files directory "\\.tar\\."))))
- %build-inputs)
- #t)))
- (inputs `(("guile-tarball" ,%guile-bootstrap-tarball)
- ("gcc-tarball" ,%gcc-bootstrap-tarball)
- ("binutils-tarball" ,%binutils-bootstrap-tarball)
- ("glibc-tarball" ,%glibc-bootstrap-tarball)
- ("coreutils&co-tarball" ,%bootstrap-binaries-tarball)))
- (synopsis #f)
- (description #f)
- (home-page #f)
- (license gpl3+)))
-
-;;; make-bootstrap.scm ends here
diff --git a/distro/packages/mit-krb5.scm b/distro/packages/mit-krb5.scm
deleted file mode 100644
index 13250ff95b..0000000000
--- a/distro/packages/mit-krb5.scm
+++ /dev/null
@@ -1,69 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 mit-krb5)
- #:use-module (distro)
- #:use-module (distro packages bison)
- #:use-module (distro packages perl)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public mit-krb5
- (package
- (name "mit-krb5")
- (version "1.11")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://web.mit.edu/kerberos/www/dist/krb5/"
- version
- "/krb5-" version
- "-signed.tar"))
- (sha256 (base32
- "0lc6lxb98qzg4x01lppq700vkr1ax9rld09znahrinwqnf9zndzy"))))
- (build-system gnu-build-system)
- (inputs `(("bison" ,bison)
- ("perl" ,perl)
- ))
- (arguments
- (lambda (system)
- `(#:tests? #f
- #:phases
- (alist-replace
- 'unpack
- (lambda* (#:key source #:allow-other-keys)
- (system* "echo" source)
- (let ((inner
- (substring source
- (string-index-right source #\k)
- (string-index-right source #\-))))
- (system* "echo" inner)
- (and (zero? (system* "tar" "xvf" source))
- (zero? (system* "tar" "xvf" (string-append inner ".tar.gz")))
- (chdir inner)
- (chdir "src"))))
- %standard-phases))))
- (synopsis "MIT Kerberos 5")
- (description
- "Massachusetts Institute of Technology implementation of Kerberos.
-Kerberos is a network authentication protocol designed to provide strong
-authentication for client/server applications by using secret-key cryptography.")
- (license (bsd-style "file://NOTICE"
- "See NOTICE in the distribution."))
- (home-page "http://web.mit.edu/kerberos/")))
diff --git a/distro/packages/multiprecision.scm b/distro/packages/multiprecision.scm
deleted file mode 100644
index 444c6103eb..0000000000
--- a/distro/packages/multiprecision.scm
+++ /dev/null
@@ -1,124 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 multiprecision)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages m4)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public gmp
- (package
- (name "gmp")
- (version "5.1.0")
- (source (origin
- (method url-fetch)
- (uri
- ;; Note: this version is not available from GNU mirrors
- ;; because it was made with an Automake affected by
- ;; CVE-2012-3386.
- (string-append "ftp://ftp.gmplib.org/pub/gmp-"
- version "/gmp-" version ".tar.bz2"))
- (sha256
- (base32
- "15n7xxgasbxdch8ii8z9ic6fxc2ysk3q8iavf55abjp5iylspnfz"))))
- (build-system gnu-build-system)
- (native-inputs `(("m4" ,m4)))
- (arguments `(#:configure-flags
- '(;; Build a "fat binary", with routines for several
- ;; sub-architectures.
- "--enable-fat"
- "--enable-cxx")))
- (synopsis "GMP, the GNU multiple precision arithmetic library")
- (description
- "GMP is a free library for arbitrary precision arithmetic, operating on
-signed integers, rational numbers, and floating point numbers. There is no
-practical limit to the precision except the ones implied by the available
-memory in the machine GMP runs on. GMP has a rich set of functions, and the
-functions have a regular interface.
-
-The main target applications for GMP are cryptography applications and
-research, Internet security applications, algebra systems, computational
-algebra research, etc.
-
-GMP is carefully designed to be as fast as possible, both for small operands
-and for huge operands. The speed is achieved by using fullwords as the basic
-arithmetic type, by using fast algorithms, with highly optimised assembly
-code for the most common inner loops for a lot of CPUs, and by a general
-emphasis on speed.
-
-GMP is faster than any other bignum library. The advantage for GMP increases
-with the operand sizes for many operations, since GMP uses asymptotically
-faster algorithms.")
- (license lgpl3+)
- (home-page "http://gmplib.org/")))
-
-(define-public mpfr
- (package
- (name "mpfr")
- (version "3.1.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/mpfr/mpfr-" version
- ".tar.xz"))
- (sha256 (base32
- "0ym1ylcq803n52qrggxqmkz66gbn8ncc3ybawal31v5y5p1srma9"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)))
- (synopsis "GNU MPFR, a library for multiple-precision floating-point
-arithmetic")
- (description
- "The GNU MPFR library is a C library for multiple-precision
-floating-point computations with correct rounding. MPFR is based on the GMP
-multiple-precision library.
-
-The main goal of MPFR is to provide a library for multiple-precision
-floating-point computation which is both efficient and has a well-defined
-semantics. It copies the good ideas from the ANSI/IEEE-754 standard for
-double-precision floating-point arithmetic (53-bit mantissa).")
- (license lgpl3+)
- (home-page "http://www.mpfr.org/")))
-
-(define-public mpc
- (package
- (name "mpc")
- (version "1.0.1")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/mpc/mpc-" version ".tar.gz"))
- (sha256 (base32
- "1zq0fidp1jii2j5k5n9hmx55a6wwid33gjzhimvxq9d5zrf82npd"))))
- (build-system gnu-build-system)
- (inputs `(("gmp" ,gmp)
- ("mpfr" ,mpfr)))
- (synopsis "GNU MPC, a library for multiprecision complex arithmetic
-with exact rounding")
- (description
- "GNU MPC is a C library for the arithmetic of complex numbers with
-arbitrarily high precision and correct rounding of the result. It extends
-the principles of the IEEE-754 standard for fixed precision real floating
-point numbers to complex numbers, providing well-defined semantics for
-every operation. At the same time, speed of operation at high precision
-is a major design goal. The library is built upon and follows the same
-principles as GNU MPFR.")
- (license lgpl3+)
- (home-page "http://mpc.multiprecision.org/")))
diff --git a/distro/packages/mysql.scm b/distro/packages/mysql.scm
deleted file mode 100644
index d98271a78b..0000000000
--- a/distro/packages/mysql.scm
+++ /dev/null
@@ -1,87 +0,0 @@
-;;; 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 mysql)
- #:use-module (distro)
- #:use-module (distro packages perl)
- #:use-module (distro packages linux)
- #:use-module (distro packages openssl)
- #:use-module (distro packages compression)
- #:use-module (distro packages ncurses)
- #:use-module ((guix licenses) #:select (gpl2))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public mysql
- (package
- (name "mysql")
- (version "5.1.54")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://downloads.mysql.com/archives/mysql-5.1/mysql-"
- version ".tar.gz"))
- (sha256
- (base32
- "07xbnwk7h1xya8s6dw34nrv7ampzag8l0l1szd2pc9zyqkzhydw4"))))
- (build-system gnu-build-system)
- (inputs
- `(("procps" ,procps)
- ("openssl" ,openssl)
- ("perl" ,perl)
- ("zlib" ,zlib)
- ("ncurses" ,ncurses)))
- (arguments
- '(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (ice-9 ftw)) ; for "rm -rf"
- #:phases (alist-cons-after
- 'install 'clean-up
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Remove the 112 MiB of tests that get installed.
- (let ((out (assoc-ref outputs "out")))
- (define (rm-rf dir)
- (file-system-fold (const #t) ; enter?
- (lambda (file stat result) ; leaf
- (delete-file file))
- (const #t) ; down
- (lambda (dir stat result) ; up
- (rmdir dir))
- (const #t)
- (lambda (file stat errno result)
- (format (current-error-port)
- "error: ~a: ~a~%"
- file (strerror errno)))
- #t
- (string-append out "/" dir)))
- (rm-rf "mysql-test")
- (rm-rf "sql-bench")
-
- ;; Compress the 14 MiB Info file.
- (zero?
- (system* "gzip" "--best"
- (string-append out "/share/info/mysql.info")))))
- %standard-phases)))
- (home-page "http://www.mysql.com/")
- (synopsis "A fast, easy to use, and popular database")
- (description
- "MySQL is a fast, reliable, and easy to use relational database
-management system that supports the standardized Structured Query
-Language.")
- (license gpl2)))
diff --git a/distro/packages/nano.scm b/distro/packages/nano.scm
deleted file mode 100644
index f51702f4f2..0000000000
--- a/distro/packages/nano.scm
+++ /dev/null
@@ -1,52 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 nano)
- #:use-module (guix licenses)
- #:use-module ((distro packages gettext)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages ncurses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public nano
- (package
- (name "nano")
- (version "2.2.6")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/nano/nano-"
- version ".tar.gz"))
- (sha256
- (base32
- "0yp6pid67k8h7394spzw0067fl2r7rxm2b6kfccg87g8nlry2s5y"))))
- (build-system gnu-build-system)
- (inputs
- `(("gettext" ,guix:gettext)
- ("ncurses" ,ncurses)))
- (home-page "http://www.nano-editor.org/")
- (synopsis
- "A small, user-friendly console text editor")
- (description
- "GNU nano is designed to be a free replacement for the Pico text
-editor, part of the Pine email suite from The University of
-Washington. It aims to emulate Pico as closely as possible and perhaps
-include extra functionality.")
- (license gpl3+))) ; some files are under GPLv2+ \ No newline at end of file
diff --git a/distro/packages/ncurses.scm b/distro/packages/ncurses.scm
deleted file mode 100644
index 938d1dc2c4..0000000000
--- a/distro/packages/ncurses.scm
+++ /dev/null
@@ -1,128 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 ncurses)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public ncurses
- (let ((patch-makefile-phase
- '(lambda _
- (for-each patch-makefile-SHELL
- (find-files "." "Makefile.in"))))
- (configure-phase
- '(lambda* (#:key inputs outputs configure-flags
- #:allow-other-keys)
- ;; The `ncursesw5-config' has a #!/bin/sh. We want to patch
- ;; it to point to libc's embedded Bash, to avoid retaining a
- ;; reference to the bootstrap Bash.
- (let* ((libc (assoc-ref inputs "libc"))
- (bash (string-append libc "/bin/bash"))
- (out (assoc-ref outputs "out")))
- (format #t "configure flags: ~s~%" configure-flags)
- (zero? (apply system* bash "./configure"
- (string-append "SHELL=" bash)
- (string-append "CONFIG_SHELL=" bash)
- (string-append "--prefix=" out)
- configure-flags)))))
- (post-install-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; When building a wide-character (Unicode) build, create backward
- ;; compatibility links from the the "normal" libraries to the
- ;; wide-character libraries (e.g. libncurses.so to libncursesw.so).
- (with-directory-excursion (string-append out "/lib")
- (for-each (lambda (lib)
- (define libw.a
- (string-append "lib" lib "w.a"))
- (define lib.a
- (string-append "lib" lib ".a"))
- (define libw.so.x
- (string-append "lib" lib "w.so.5"))
- (define lib.so.x
- (string-append "lib" lib ".so.5"))
- (define lib.so
- (string-append "lib" lib ".so"))
-
- (when (file-exists? libw.a)
- (format #t "creating symlinks for `lib~a'~%" lib)
- (symlink libw.a lib.a)
- (symlink libw.so.x lib.so.x)
- (false-if-exception (delete-file lib.so))
- (call-with-output-file lib.so
- (lambda (p)
- (format p "INPUT (-l~aw)~%" lib)))))
- '("curses" "ncurses" "form" "panel" "menu")))))))
- (package
- (name "ncurses")
- (version "5.9")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/ncurses/ncurses-"
- version ".tar.gz"))
- (sha256
- (base32
- "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"))))
- (build-system gnu-build-system)
- (arguments
- (case-lambda
- ((system)
- `(#:configure-flags
- `("--with-shared" "--without-debug" "--enable-widec"
-
- ;; By default headers land in an `ncursesw' subdir, which is not
- ;; what users expect.
- ,(string-append "--includedir=" (assoc-ref %outputs "out")
- "/include")
-
- ;; C++ bindings fail to build on
- ;; `i386-pc-solaris2.11' with GCC 3.4.3:
- ;; <http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6395191>.
- ,,@(if (string=? system "i686-solaris")
- '("--without-cxx-binding")
- '()))
- #:tests? #f ; no "check" target
- #:phases (alist-cons-after
- 'install 'post-install ,post-install-phase
- (alist-cons-before
- 'configure 'patch-makefile-SHELL
- ,patch-makefile-phase
- (alist-replace
- 'configure
- ,configure-phase
- %standard-phases)))))
- ((system cross-system)
- (arguments cross-system))))
- (self-native-input? #t)
- (synopsis
- "GNU Ncurses, a free software emulation of curses in SVR4 and more")
- (description
- "The Ncurses (new curses) library is a free software emulation of curses
-in System V Release 4.0, and more. It uses Terminfo format, supports pads
-and color and multiple highlights and forms characters and function-key
-mapping, and has all the other SYSV-curses enhancements over BSD Curses.
-
-The ncurses code was developed under GNU/Linux. It has been in use for some
-time with OpenBSD as the system curses library, and on FreeBSD and NetBSD as
-an external package. It should port easily to any ANSI/POSIX-conforming
-UNIX. It has even been ported to OS/2 Warp!")
- (license x11)
- (home-page "http://www.gnu.org/software/ncurses/"))))
diff --git a/distro/packages/nettle.scm b/distro/packages/nettle.scm
deleted file mode 100644
index 2f512a36d0..0000000000
--- a/distro/packages/nettle.scm
+++ /dev/null
@@ -1,60 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 nettle)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages m4))
-
-(define-public nettle
- (package
- (name "nettle")
- (version "2.6")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/nettle/nettle-"
- version ".tar.gz"))
- (sha256
- (base32
- "0mminj3fg0vba8qx4q6dbf0xz6fskamli7z2r8rci5xrcd7n5pv0"))))
- (build-system gnu-build-system)
- (inputs `(("m4" ,m4)))
- (propagated-inputs `(("gmp" ,gmp)))
- (home-page "http://www.lysator.liu.se/~nisse/nettle/")
- (synopsis "GNU Nettle, a cryptographic library")
- (description
- "Nettle is a cryptographic library that is designed to fit easily
-in more or less any context: In crypto toolkits for object-oriented
-languages (C++, Python, Pike, ...), in applications like LSH or GNUPG,
-or even in kernel space. In most contexts, you need more than the basic
-cryptographic algorithms, you also need some way to keep track of
-available algorithms, their properties and variants. You often have
-some algorithm selection process, often dictated by a protocol you want
-to implement.
-
-And as the requirements of applications differ in subtle and not so
-subtle ways, an API that fits one application well can be a pain to use
-in a different context. And that is why there are so many different
-cryptographic libraries around. \nNettle tries to avoid this problem by
-doing one thing, the low-level crypto stuff, and providing a simple but
-general interface to it. In particular, Nettle doesn't do algorithm
-selection. It doesn't do memory allocation. It doesn't do any I/O.")
- (license gpl2+)))
diff --git a/distro/packages/openssl.scm b/distro/packages/openssl.scm
deleted file mode 100644
index 503f593bdd..0000000000
--- a/distro/packages/openssl.scm
+++ /dev/null
@@ -1,68 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 openssl)
- #:use-module (distro)
- #:use-module (distro packages perl)
- #:use-module ((guix licenses) #:renamer (symbol-prefix-proc 'license:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public openssl
- (package
- (name "openssl")
- (version "1.0.1c")
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://ftp.openssl.org/source/openssl-" version
- ".tar.gz"))
- (sha256 (base32
- "1gjy6a7d8nszi9wq8jdzx3cffn0nss23h3cw2ywlw4cb9v6v77ia"))))
- (build-system gnu-build-system)
- (inputs `(("perl" ,perl)))
- (arguments
- (lambda (system)
- `(#:parallel-build? #f
- #:parallel-tests? #f
- #:test-target "test"
- #:phases
- (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (zero?
- (system* "./config"
- "shared" ; build shared libraries
- "--libdir=lib"
- (string-append "--prefix=" out)))))
- (alist-cons-before
- 'patch-source-shebangs 'patch-tests
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bash (assoc-ref inputs "bash")))
- (substitute* (find-files "test" ".*")
- (("/bin/sh")
- (string-append bash "/bin/bash"))
- (("/bin/rm")
- "rm"))))
- %standard-phases)))))
- (synopsis "OpenSSL, an SSL/TLS implementation")
- (description
- "OpenSSL is an implementation of SSL/TLS")
- (license license:openssl)
- (home-page "http://www.openssl.org/")))
diff --git a/distro/packages/patches/bigloo-gc-shebangs.patch b/distro/packages/patches/bigloo-gc-shebangs.patch
deleted file mode 100644
index 07af261887..0000000000
--- a/distro/packages/patches/bigloo-gc-shebangs.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Patch shebangs in source that gets unpacked by `configure'.
-
---- bigloo3.9a/gc/install-gc-7.2d 2013-01-14 15:24:01.000000000 +0100
-+++ bigloo3.9a/gc/install-gc-7.2d 2013-01-14 15:23:51.000000000 +0100
-@@ -29,9 +29,11 @@ fi
- # untar the two versions of the GC
- $tar xfz $src -C ../gc || (echo "$tar xfz $src failed"; exit 1)
- /bin/rm -rf "../gc/$gc"_fth
-+find ../gc/gc-7.2 -perm /111 -type f | xargs sed -i -e"s|/bin/sh|`type -P bash`|g"
- mv ../gc/gc-7.2 "../gc/$gc"_fth || (echo "mv gc-7.2 failed"; exit 1)
-
- $tar xfz $src -C ../gc || (echo "$tar xfz $src failed"; exit 1)
-+find ../gc/gc-7.2 -perm /111 -type f | xargs sed -i -e"s|/bin/sh|`type -P bash`|g"
- mv ../gc/gc-7.2 "../gc/$gc"
-
- # general Bigloo patch
-
diff --git a/distro/packages/patches/binutils-ld-new-dtags.patch b/distro/packages/patches/binutils-ld-new-dtags.patch
deleted file mode 100644
index 5f7a03fc38..0000000000
--- a/distro/packages/patches/binutils-ld-new-dtags.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Turn on --enable-new-dtags by default to make the linker set RUNPATH
-instead of RPATH on binaries. This is important because RUNPATH can
-be overriden using LD_LIBRARY_PATH at runtime.
-
-Patch from Nixpkgs by Eelco Dolstra <eelco.dolstra@logicblox.com>.
-
---- binutils/ld/ldmain.c
-+++ binutils/ld/ldmain.c
-@@ -296,6 +296,7 @@ main (int argc, char **argv)
-
- link_info.allow_undefined_version = TRUE;
- link_info.keep_memory = TRUE;
-+ link_info.new_dtags = TRUE;
- link_info.combreloc = TRUE;
- link_info.strip_discarded = TRUE;
- link_info.callbacks = &link_callbacks;
diff --git a/distro/packages/patches/cpio-gets-undeclared.patch b/distro/packages/patches/cpio-gets-undeclared.patch
deleted file mode 100644
index bc34de6455..0000000000
--- a/distro/packages/patches/cpio-gets-undeclared.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-The upstream fix was:
-
- commit 66712c23388e93e5c518ebc8515140fa0c807348
- Author: Eric Blake <eblake@redhat.com>
- Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
- Gnulib intentionally does not have a gets module, and now that C11
- and glibc have dropped it, we should be more proactive about warning
- any user on a platform that still has a declaration of this dangerous
- interface.
-
- * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
- support.
- * modules/stdio (Makefile.am): Likewise.
- * lib/stdio-read.c (gets): Likewise.
- * tests/test-stdio-c++.cc: Likewise.
- * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
- * lib/stdio.in.h (gets): Make warning occur in more places.
- * doc/posix-functions/gets.texi (gets): Update documentation.
- Reported by Christer Solskogen.
-
- Signed-off-by: Eric Blake <eblake@redhat.com>
-
-This patch just gets rid of the offending part.
-
---- cpio-2.11/gnu/stdio.in.h-orig 2012-11-25 22:17:06.000000000 +0400
-+++ cpio-2.11/gnu/stdio.in.h 2012-11-25 22:18:36.000000000 +0400
-@@ -135,12 +135,6 @@
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/distro/packages/patches/diffutils-gets-undeclared.patch b/distro/packages/patches/diffutils-gets-undeclared.patch
deleted file mode 100644
index b6cdc77caa..0000000000
--- a/distro/packages/patches/diffutils-gets-undeclared.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-
-commit 66712c23388e93e5c518ebc8515140fa0c807348
-Author: Eric Blake <eblake@redhat.com>
-Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
- Gnulib intentionally does not have a gets module, and now that C11
- and glibc have dropped it, we should be more proactive about warning
- any user on a platform that still has a declaration of this dangerous
- interface.
-
- * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
- support.
- * modules/stdio (Makefile.am): Likewise.
- * lib/stdio-read.c (gets): Likewise.
- * tests/test-stdio-c++.cc: Likewise.
- * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
- * lib/stdio.in.h (gets): Make warning occur in more places.
- * doc/posix-functions/gets.texi (gets): Update documentation.
- Reported by Christer Solskogen.
-
- Signed-off-by: Eric Blake <eblake@redhat.com>
-
-diff --git a/lib/stdio.in.h b/lib/stdio.in.h
-index aa7b599..c377b6e 100644
---- a/lib/stdio.in.h
-+++ b/lib/stdio.in.h
-@@ -698,22 +698,11 @@ _GL_WARN_ON_USE (getline, "getline is unportable - "
- # endif
- #endif
-
--#if @GNULIB_GETS@
--# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
--# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
--# undef gets
--# define gets rpl_gets
--# endif
--_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1)));
--_GL_CXXALIAS_RPL (gets, char *, (char *s));
--# else
--_GL_CXXALIAS_SYS (gets, char *, (char *s));
--# undef gets
--# endif
--_GL_CXXALIASWARN (gets);
- /* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
-+ so any use of gets warrants an unconditional warning; besides, C11
-+ removed it. */
-+#undef gets
-+#if HAVE_RAW_DECL_GETS
- _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
- #endif
-
-@@ -1053,9 +1042,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - "
- # endif
- #endif
-
--/* Some people would argue that sprintf should be handled like gets
-- (for example, OpenBSD issues a link warning for both functions),
-- since both can cause security holes due to buffer overruns.
-+/* Some people would argue that all sprintf uses should be warned about
-+ (for example, OpenBSD issues a link warning for it),
-+ since it can cause security holes due to buffer overruns.
- However, we believe that sprintf can be used safely, and is more
- efficient than snprintf in those safe cases; and as proof of our
- belief, we use sprintf in several gnulib modules. So this header
diff --git a/distro/packages/patches/emacs-configure-sh.patch b/distro/packages/patches/emacs-configure-sh.patch
deleted file mode 100644
index fd34d06ced..0000000000
--- a/distro/packages/patches/emacs-configure-sh.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Make sure the right shell is used when creating src/epaths.h.
-
---- emacs-24.2/configure 2013-01-13 17:01:53.000000000 +0100
-+++ emacs-24.2/configure 2013-01-13 17:01:57.000000000 +0100
-@@ -24135,7 +24135,7 @@ done
- ;;
- "epaths":C)
- echo creating src/epaths.h
--${MAKE-make} epaths-force
-+${MAKE-make} epaths-force SHELL="$CONFIG_SHELL"
- ;;
- "gdbinit":C)
- if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
-
diff --git a/distro/packages/patches/findutils-absolute-paths.patch b/distro/packages/patches/findutils-absolute-paths.patch
deleted file mode 100644
index 96341e281f..0000000000
--- a/distro/packages/patches/findutils-absolute-paths.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-Fix use of LFS-style absolute paths.
-
-Patches from Nixpkgs by Armijn Hemel <armijn@gpl-violations.org>
-and Wouter den Breejen <uu@denbreejen.net>.
-
-diff -ruN findutils-4.2.20/locate/updatedb.sh findutils-4.2.20.new/locate/updatedb.sh
---- findutils-4.2.20/locate/updatedb.sh 2005-01-24 17:12:35.000000000 +0100
-+++ findutils-4.2.20.new/locate/updatedb.sh 2005-08-23 14:37:10.000000000 +0200
-@@ -141,7 +141,7 @@
- : ${code:=${LIBEXECDIR}/@code@}
-
-
--PATH=/bin:/usr/bin:${BINDIR}; export PATH
-+PATH=/bin:/usr/bin:${BINDIR}:${PATH}; export PATH
-
- : ${PRUNEFS="nfs NFS proc afs proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs sysfs shfs"}
-
-diff -Naur findutils-4.2.30/xargs/xargs.c findutils-4.2.30_new/xargs/xargs.c
---- findutils-4.2.30/xargs/xargs.c 2007-02-27 11:21:08.000000000 +0100
-+++ findutils-4.2.30_new/xargs/xargs.c 2007-07-17 19:02:05.000000000 +0200
-@@ -402,7 +402,7 @@
- int show_limits = 0; /* --show-limits */
- int always_run_command = 1;
- char *input_file = "-"; /* "-" is stdin */
-- char *default_cmd = "/bin/echo";
-+ char *default_cmd = "echo";
- int (*read_args) PARAMS ((void)) = read_line;
- void (*act_on_init_result)(void) = noop;
- int env_too_big = 0;
diff --git a/distro/packages/patches/flex-bison-tests.patch b/distro/packages/patches/flex-bison-tests.patch
deleted file mode 100644
index 0f372f83bf..0000000000
--- a/distro/packages/patches/flex-bison-tests.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-The `test-bison-yyl{loc,val}' tests fail with "conflicting types for
-'testparse'" because `YYPARSE_PARAM' is undefined; work around that.
-
---- flex-2.5.37/tests/test-bison-yylloc/main.c 2012-11-22 18:17:01.000000000 +0100
-+++ flex-2.5.37/tests/test-bison-yylloc/main.c 2012-11-22 18:17:07.000000000 +0100
-@@ -21,6 +21,7 @@
- * PURPOSE.
- */
-
-+#define YYPARSE_PARAM scanner
- #include "parser.h"
- #include "scanner.h"
-
-
---- flex-2.5.37/tests/test-bison-yylval/main.c 2012-11-22 18:17:42.000000000 +0100
-+++ flex-2.5.37/tests/test-bison-yylval/main.c 2012-11-22 18:17:49.000000000 +0100
-@@ -21,6 +21,7 @@
- * PURPOSE.
- */
-
-+#define YYPARSE_PARAM scanner
- #include "parser.h"
- #include "scanner.h"
-
diff --git a/distro/packages/patches/gawk-shell.patch b/distro/packages/patches/gawk-shell.patch
deleted file mode 100644
index 89b8540a8d..0000000000
--- a/distro/packages/patches/gawk-shell.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-As for libc's `system', change Awk to look for `sh' in $PATH. This patch is
-only meant to be used during bootstrapping, where we don't know in advance the
-absolute file name of `sh'.
-
---- gawk-4.0.0/io.c 2011-05-18 20:47:29.000000000 +0200
-+++ gawk-4.0.0/io.c 2012-12-18 15:56:06.000000000 +0100
-@@ -1759,7 +1759,7 @@ two_way_open(const char *str, struct red
-
- signal(SIGPIPE, SIG_DFL);
-
-- execl("/bin/sh", "sh", "-c", str, NULL);
-+ execlp("sh", "sh", "-c", str, NULL);
- _exit(errno == ENOENT ? 127 : 126);
-
- case -1:
-@@ -1924,7 +1924,7 @@ use_pipes:
- || close(ctop[0]) == -1 || close(ctop[1]) == -1)
- fatal(_("close of pipe failed (%s)"), strerror(errno));
- /* stderr does NOT get dup'ed onto child's stdout */
-- execl("/bin/sh", "sh", "-c", str, NULL);
-+ execlp("sh", "sh", "-c", str, NULL);
- _exit(errno == ENOENT ? 127 : 126);
- }
- #endif /* NOT __EMX__ */
-@@ -2074,7 +2074,7 @@ gawk_popen(const char *cmd, struct redir
- fatal(_("moving pipe to stdout in child failed (dup: %s)"), strerror(errno));
- if (close(p[0]) == -1 || close(p[1]) == -1)
- fatal(_("close of pipe failed (%s)"), strerror(errno));
-- execl("/bin/sh", "sh", "-c", cmd, NULL);
-+ execlp("sh", "sh", "-c", cmd, NULL);
- _exit(errno == ENOENT ? 127 : 126);
- }
- #endif /* NOT __EMX__ */
-
diff --git a/distro/packages/patches/gettext-gets-undeclared.patch b/distro/packages/patches/gettext-gets-undeclared.patch
deleted file mode 100644
index 072a8d94ab..0000000000
--- a/distro/packages/patches/gettext-gets-undeclared.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-The upstream fix was:
-
- commit 66712c23388e93e5c518ebc8515140fa0c807348
- Author: Eric Blake <eblake@redhat.com>
- Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
- Gnulib intentionally does not have a gets module, and now that C11
- and glibc have dropped it, we should be more proactive about warning
- any user on a platform that still has a declaration of this dangerous
- interface.
-
- * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
- support.
- * modules/stdio (Makefile.am): Likewise.
- * lib/stdio-read.c (gets): Likewise.
- * tests/test-stdio-c++.cc: Likewise.
- * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
- * lib/stdio.in.h (gets): Make warning occur in more places.
- * doc/posix-functions/gets.texi (gets): Update documentation.
- Reported by Christer Solskogen.
-
- Signed-off-by: Eric Blake <eblake@redhat.com>
-
-This patch just gets rid of the offending part.
-
---- gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h-orig 2012-11-24 01:13:14.000000000 +0400
-+++ gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h 2012-11-24 01:13:46.000000000 +0400
-@@ -137,12 +137,6 @@
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-
---- gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h-orig 2012-11-24 00:26:49.000000000 +0400
-+++ gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h 2012-11-24 00:45:54.000000000 +0400
-@@ -137,12 +137,6 @@
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
-
---- gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h-orig 2012-11-24 01:00:26.000000000 +0400
-+++ gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h 2012-11-24 01:00:53.000000000 +0400
-@@ -137,12 +137,6 @@
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/distro/packages/patches/glibc-bootstrap-system.patch b/distro/packages/patches/glibc-bootstrap-system.patch
deleted file mode 100644
index 7208cce3f4..0000000000
--- a/distro/packages/patches/glibc-bootstrap-system.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-We want to allow builds in chroots that lack /bin/sh. Thus, system(3)
-and popen(3) need to be tweaked to use the right shell. For the bootstrap
-glibc, we just use whatever `sh' can be found in $PATH. The final glibc
-instead uses the hard-coded absolute file name of `bash'.
-
---- a/sysdeps/posix/system.c
-+++ b/sysdeps/posix/system.c
-@@ -134,7 +134,7 @@ do_system (const char *line)
- INIT_LOCK ();
-
- /* Exec the shell. */
-- (void) __execve (SHELL_PATH, (char *const *) new_argv, __environ);
-+ (void) __execvpe (SHELL_NAME, (char *const *) new_argv, __environ);
- _exit (127);
- }
- else if (pid < (pid_t) 0)
-
---- b/libio/iopopen.c 2012-06-30 21:12:34.000000000 +0200
-+++ b/libio/iopopen.c 2012-12-19 12:52:29.000000000 +0100
-@@ -226,7 +226,7 @@ _IO_new_proc_open (fp, command, mode)
- _IO_close (fd);
- }
-
-- _IO_execl ("/bin/sh", "sh", "-c", command, (char *) 0);
-+ execlp ("sh", "sh", "-c", command, (char *) 0);
- _IO__exit (127);
- }
- _IO_close (child_end);
diff --git a/distro/packages/patches/glibc-no-ld-so-cache.patch b/distro/packages/patches/glibc-no-ld-so-cache.patch
deleted file mode 100644
index 75fff50b47..0000000000
--- a/distro/packages/patches/glibc-no-ld-so-cache.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Disable attempts to use the system-wide /etc/ld.so.cache. This is
-required on LFS distros to avoid loading the distro's libc.so instead
-of ours.
-
-Patch from Nixpkgs. Idea by Eelco Dolstra, initial patch by Jack
-Cummings, minor fixups by Shea Levy.
-
-diff -Naur glibc-2.13-orig/elf/ldconfig.c glibc-2.13/elf/ldconfig.c
---- glibc-2.13-orig/elf/ldconfig.c 2011-01-17 23:34:07.000000000 -0500
-+++ glibc-2.13/elf/ldconfig.c 2012-04-10 23:28:45.957492340 -0400
-@@ -51,7 +51,7 @@
- #endif
-
- #ifndef LD_SO_CONF
--# define LD_SO_CONF SYSCONFDIR "/ld.so.conf"
-+# define LD_SO_CONF PREFIX "/etc/ld.so.conf"
- #endif
-
- /* Get libc version number. */
-
---- glibc-2.16.0/elf/Makefile 2012-06-30 21:12:34.000000000 +0200
-+++ glibc-2.16.0/elf/Makefile 2012-11-12 23:52:21.000000000 +0100
-@@ -415,12 +415,12 @@ $(objpfx)ldconfig: $(ldconfig-modules:%=
-
- $(objpfx)pldd: $(pldd-modules:%=$(objpfx)%.o)
-
--SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"'
--CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
-+PREFIX-FLAGS := -D'PREFIX="$(sysconfdir)"'
-+CFLAGS-ldconfig.c = $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \
- -D'SLIBDIR="$(slibdir)"' -DIS_IN_ldconfig=1
--CFLAGS-dl-cache.c = $(SYSCONF-FLAGS)
--CFLAGS-cache.c = $(SYSCONF-FLAGS)
--CFLAGS-rtld.c = $(SYSCONF-FLAGS)
-+CFLAGS-dl-cache.c = $(PREFIX-FLAGS)
-+CFLAGS-cache.c = $(PREFIX-FLAGS)
-+CFLAGS-rtld.c = $(PREFIX-FLAGS)
-
- CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),\
- -DNOT_IN_libc=1 -DIS_IN_rtld=1 -DIN_LIB=rtld)
-
-diff -Naur glibc-2.13-orig/sysdeps/generic/dl-cache.h glibc-2.13/sysdeps/generic/dl-cache.h
---- glibc-2.13-orig/sysdeps/generic/dl-cache.h 2011-01-17 23:34:07.000000000 -0500
-+++ glibc-2.13/sysdeps/generic/dl-cache.h 2012-04-10 23:28:20.077488815 -0400
-@@ -29,7 +29,7 @@
- #endif
-
- #ifndef LD_SO_CACHE
--# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache"
-+# define LD_SO_CACHE PREFIX "/etc/ld.so.cache"
- #endif
-
- #ifndef add_system_dir
diff --git a/distro/packages/patches/guile-1.8-cpp-4.5.patch b/distro/packages/patches/guile-1.8-cpp-4.5.patch
deleted file mode 100644
index 638d071baf..0000000000
--- a/distro/packages/patches/guile-1.8-cpp-4.5.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix doc snarfing with GCC 4.5+.
-From <http://git.savannah.gnu.org/cgit/guile.git/commit/?h=branch_release-1-8&id=aac41d28358cea594bb30f6e547afb82bb6004a6>.
-
-diff --git a/scripts/snarf-check-and-output-texi b/scripts/snarf-check-and-output-texi
-index ea33e17..8cd42e8 100755
---- a/scripts/snarf-check-and-output-texi
-+++ b/scripts/snarf-check-and-output-texi
-@@ -267,6 +267,17 @@ exec ${GUILE-guile} -l $0 -c "(apply $main (cdr (command-line)))" "$@"
- (set! *file* file)
- (set! *line* line))
-
-+ ;; newer gccs like to throw around more location markers into the
-+ ;; preprocessed source; these (hash . hash) bits are what they translate to
-+ ;; in snarfy terms.
-+ (('location ('string . file) ('int . line) ('hash . 'hash))
-+ (set! *file* file)
-+ (set! *line* line))
-+
-+ (('location ('hash . 'hash) ('string . file) ('int . line) ('hash . 'hash))
-+ (set! *file* file)
-+ (set! *line* line))
-+
- (('arglist rest ...)
- (set! *args* (do-arglist rest)))
diff --git a/distro/packages/patches/guile-default-utf8.patch b/distro/packages/patches/guile-default-utf8.patch
deleted file mode 100644
index 409f435161..0000000000
--- a/distro/packages/patches/guile-default-utf8.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-This hack makes Guile default to UTF-8. This avoids calls to
-`iconv_open'; `iconv_open' tries to open shared objects that aren't
-available during bootstrap, so using UTF-8 avoids that (and UTF-8 has
-built-in conversions in glibc, too.)
-
-diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c
-index cf41f2f..facfb91 100644
---- a/libguile/bytevectors.c
-+++ b/libguile/bytevectors.c
-@@ -1887,7 +1887,7 @@ utf_encoding_name (char *name, size_t utf_width, SCM endianness)
- if (scm_i_is_narrow_string (str)) \
- { \
- err = mem_iconveh (scm_i_string_chars (str), c_strlen, \
-- "ISO-8859-1", c_utf_name, \
-+ "UTF-8", c_utf_name, \
- iconveh_question_mark, NULL, \
- &c_utf, &c_utf_len); \
- if (SCM_UNLIKELY (err)) \
-diff --git a/libguile/ports.c b/libguile/ports.c
-index 301bc44..b0ea2e6 100644
---- a/libguile/ports.c
-+++ b/libguile/ports.c
-@@ -1750,7 +1750,7 @@ scm_ungetc (scm_t_wchar c, SCM port)
- if (pt->encoding != NULL)
- encoding = pt->encoding;
- else
-- encoding = "ISO-8859-1";
-+ encoding = "UTF-8";
-
- len = sizeof (result_buf);
- result = u32_conv_to_encoding (encoding,
-@@ -2212,7 +2212,7 @@ scm_i_set_port_encoding_x (SCM port, const char *encoding)
- pt = SCM_PTAB_ENTRY (port);
-
- if (encoding == NULL)
-- encoding = "ISO-8859-1";
-+ encoding = "UTF-8";
-
- if (pt->encoding != encoding)
- pt->encoding = scm_gc_strdup (encoding, "port");
-diff --git a/libguile/posix.c b/libguile/posix.c
-index 4f8b8ac..fea7f74 100644
---- a/libguile/posix.c
-+++ b/libguile/posix.c
-@@ -1740,7 +1740,7 @@ SCM_DEFINE (scm_setlocale, "setlocale", 1, 1, 0,
- SCM_SYSERROR;
- }
-
-- enc = locale_charset ();
-+ enc = "UTF-8";
-
- /* Set the default encoding for new ports. */
- scm_i_set_default_port_encoding (enc);
-diff --git a/libguile/script.c b/libguile/script.c
-index 83daf8a..083891e 100644
---- a/libguile/script.c
-+++ b/libguile/script.c
-@@ -387,7 +387,7 @@ locale_arguments_to_string_list (int argc, char **const argv)
- SCM lst;
- const char *encoding;
-
-- encoding = environ_locale_charset ();
-+ encoding = "UTF-8";
- for (i = argc - 1, lst = SCM_EOL;
- i >= 0;
- i--)
-diff --git a/libguile/strings.c b/libguile/strings.c
-index 5d0db23..8266247 100644
---- a/libguile/strings.c
-+++ b/libguile/strings.c
-@@ -1576,7 +1576,7 @@ scm_from_locale_string (const char *str)
- SCM
- scm_from_locale_stringn (const char *str, size_t len)
- {
-- return scm_from_stringn (str, len, locale_charset (),
-+ return scm_from_stringn (str, len, "UTF-8",
- scm_i_default_port_conversion_handler ());
- }
-
-@@ -1803,7 +1803,7 @@ char *
- scm_to_locale_stringn (SCM str, size_t *lenp)
- {
- return scm_to_stringn (str, lenp,
-- locale_charset (),
-+ "UTF-8",
- scm_i_default_port_conversion_handler ());
- }
-
-@@ -2054,7 +2054,7 @@ scm_to_stringn (SCM str, size_t *lenp, const char *encoding,
- "string contains #\\nul character: ~S",
- scm_list_1 (str));
-
-- if (scm_i_is_narrow_string (str) && (encoding == NULL))
-+ if (scm_i_is_narrow_string (str))
- {
- /* If using native Latin-1 encoding, just copy the string
- contents. */
-@@ -2079,11 +2079,11 @@ scm_to_stringn (SCM str, size_t *lenp, const char *encoding,
- len = 0;
- enc = encoding;
- if (enc == NULL)
-- enc = "ISO-8859-1";
-+ enc = "UTF-8";
- if (scm_i_is_narrow_string (str))
- {
- ret = mem_iconveh (scm_i_string_chars (str), ilen,
-- "ISO-8859-1", enc,
-+ "UTF-8", enc,
- (enum iconv_ilseq_handler) handler, NULL,
- &buf, &len);
-
diff --git a/distro/packages/patches/guile-relocatable.patch b/distro/packages/patches/guile-relocatable.patch
deleted file mode 100644
index 077394cdde..0000000000
--- a/distro/packages/patches/guile-relocatable.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-This patch changes Guile to use a default search path relative to the
-location of the `guile' binary, allowing it to be relocated.
-
-diff --git a/libguile/load.c b/libguile/load.c
-index af2ca45..19dd338 100644
---- a/libguile/load.c
-+++ b/libguile/load.c
-@@ -26,6 +26,7 @@
-
- #include <string.h>
- #include <stdio.h>
-+#include <libgen.h>
-
- #include "libguile/_scm.h"
- #include "libguile/private-gc.h" /* scm_getenv_int */
-@@ -255,6 +256,32 @@ scm_init_load_path ()
- SCM cpath = SCM_EOL;
-
- #ifdef SCM_LIBRARY_DIR
-+ char *program, *bin_dir, *prefix, *module_dir, *ccache_dir;
-+
-+ /* Determine the source and compiled module directories at run-time,
-+ relative to the executable's location.
-+
-+ Note: Use /proc/self/exe instead of argv[0] because the latter is
-+ not necessarily an absolute, nor a valid file name. */
-+
-+ program = scm_gc_malloc_pointerless (256, "string");
-+ readlink ("/proc/self/exe", program, 256);
-+
-+ bin_dir = dirname (strdupa (program));
-+
-+ prefix = scm_gc_malloc_pointerless (strlen (bin_dir) + 4, "string");
-+ strcpy (prefix, bin_dir);
-+ strcat (prefix, "/..");
-+ prefix = canonicalize_file_name (prefix);
-+
-+ module_dir = scm_gc_malloc_pointerless (strlen (prefix) + 50, "string");
-+ strcpy (module_dir, prefix);
-+ strcat (module_dir, "/share/guile/2.0");
-+
-+ ccache_dir = scm_gc_malloc_pointerless (strlen (prefix) + 50, "string");
-+ strcpy (ccache_dir, prefix);
-+ strcat (ccache_dir, "/lib/guile/2.0/ccache");
-+
- env = getenv ("GUILE_SYSTEM_PATH");
- if (env && strcmp (env, "") == 0)
- /* special-case interpret system-path=="" as meaning no system path instead
-@@ -263,10 +290,7 @@ scm_init_load_path ()
- else if (env)
- path = scm_parse_path (scm_from_locale_string (env), path);
- else
-- path = scm_list_4 (scm_from_locale_string (SCM_LIBRARY_DIR),
-- scm_from_locale_string (SCM_SITE_DIR),
-- scm_from_locale_string (SCM_GLOBAL_SITE_DIR),
-- scm_from_locale_string (SCM_PKGDATA_DIR));
-+ path = scm_list_1 (scm_from_locale_string (module_dir));
-
- env = getenv ("GUILE_SYSTEM_COMPILED_PATH");
- if (env && strcmp (env, "") == 0)
-@@ -276,8 +300,7 @@ scm_init_load_path ()
- cpath = scm_parse_path (scm_from_locale_string (env), cpath);
- else
- {
-- cpath = scm_list_2 (scm_from_locale_string (SCM_CCACHE_DIR),
-- scm_from_locale_string (SCM_SITE_CCACHE_DIR));
-+ cpath = scm_list_1 (scm_from_locale_string (ccache_dir));
- }
-
- #endif /* SCM_LIBRARY_DIR */
diff --git a/distro/packages/patches/libtool-skip-tests.patch b/distro/packages/patches/libtool-skip-tests.patch
deleted file mode 100644
index 6e12615d51..0000000000
--- a/distro/packages/patches/libtool-skip-tests.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Because our GCC `lib' spec automatically adds `-rpath' for each `-L'
-and a couple more `-rpath, there are two test failures:
-demo-hardcode.test, and destdir.at. Disable these.
-
---- libtool-2.4.2/Makefile.in 2011-10-17 12:18:55.000000000 +0200
-+++ libtool-2.4.2/Makefile.in 2012-09-13 23:50:37.000000000 +0200
-@@ -909,7 +908,7 @@ COMMON_TESTS = \
- # but they depend on the other tests being run beforehand.
- INTERACTIVE_TESTS = tests/demo-shared.test tests/demo-shared-make.test \
- tests/demo-shared-exec.test tests/demo-shared-inst.test \
-- tests/demo-hardcode.test tests/demo-relink.test \
-+ tests/demo-relink.test \
- tests/demo-noinst-link.test tests/demo-shared-unst.test \
- tests/depdemo-shared.test tests/depdemo-shared-make.test \
- tests/depdemo-shared-exec.test tests/depdemo-shared-inst.test \
-@@ -2580,8 +2579,7 @@ tests/cdemo-static-make.log: tests/cdemo
-
- tests/demo-shared-unst.log: tests/demo-noinst-link.log
- tests/demo-noinst-link.log: tests/demo-relink.log
--tests/demo-relink.log: tests/demo-hardcode.log
--tests/demo-hardcode.log: tests/demo-shared-inst.log
-+tests/demo-relink.log: tests/demo-shared-inst.log
- tests/demo-shared-inst.log: tests/demo-shared-exec.log
- tests/demo-shared-exec.log: tests/demo-shared-make.log
- tests/demo-shared-make.log: tests/demo-shared.log
-
---- libtool-2.4.2/tests/testsuite 2011-10-17 12:19:52.000000000 +0200
-+++ libtool-2.4.2/tests/testsuite 2012-09-14 00:28:45.000000000 +0200
-@@ -14443,6 +14443,6 @@ read at_status <"$at_status_file"
- #AT_START_69
- at_fn_group_banner 69 'destdir.at:75' \
- "DESTDIR with in-package deplibs" " " 4
--at_xfail=no
-+at_xfail=yes
- eval `$LIBTOOL --config | grep '^fast_install='`
- case $fast_install in no) :;; *) false;; esac && at_xfail=yes
-
diff --git a/distro/packages/patches/lsh-guile-compat.patch b/distro/packages/patches/lsh-guile-compat.patch
deleted file mode 100644
index 0fe0484580..0000000000
--- a/distro/packages/patches/lsh-guile-compat.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-Use (ice-9 rdelim) for `read-line'.
-
---- lsh-2.0.4/src/scm/guile-compat.scm 2012-12-03 23:28:01.000000000 +0100
-+++ lsh-2.0.4/src/scm/guile-compat.scm 2012-12-03 23:28:04.000000000 +0100
-@@ -21,3 +21,4 @@
- ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
- (use-syntax (ice-9 syncase))
-+(use-modules (ice-9 rdelim))
diff --git a/distro/packages/patches/lsh-no-root-login.patch b/distro/packages/patches/lsh-no-root-login.patch
deleted file mode 100644
index 9dd81de3fb..0000000000
--- a/distro/packages/patches/lsh-no-root-login.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Correctly handle the `--no-root-login' option.
-
---- lsh-2.0.4/src/lshd.c 2006-05-01 13:47:44.000000000 +0200
-+++ lsh-2.0.4/src/lshd.c 2009-09-08 12:20:36.000000000 +0200
-@@ -758,6 +758,10 @@ main_argp_parser(int key, char *arg, str
- self->allow_root = 1;
- break;
-
-+ case OPT_NO_ROOT_LOGIN:
-+ self->allow_root = 0;
-+ break;
-+
- case OPT_KERBEROS_PASSWD:
- self->pw_helper = PATH_KERBEROS_HELPER;
- break;
-
diff --git a/distro/packages/patches/lsh-pam-service-name.patch b/distro/packages/patches/lsh-pam-service-name.patch
deleted file mode 100644
index 6a6156855c..0000000000
--- a/distro/packages/patches/lsh-pam-service-name.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Tell `lsh-pam-checkpw', the PAM password helper program, to use a more
-descriptive service name.
-
---- lsh-2.0.4/src/lsh-pam-checkpw.c 2003-02-16 22:30:10.000000000 +0100
-+++ lsh-2.0.4/src/lsh-pam-checkpw.c 2008-11-28 16:16:58.000000000 +0100
-@@ -38,7 +38,7 @@
- #include <security/pam_appl.h>
-
- #define PWD_MAXLEN 1024
--#define SERVICE_NAME "other"
-+#define SERVICE_NAME "lshd"
- #define TIMEOUT 600
-
- static int
diff --git a/distro/packages/patches/m4-gets-undeclared.patch b/distro/packages/patches/m4-gets-undeclared.patch
deleted file mode 100644
index d28f0cdcc4..0000000000
--- a/distro/packages/patches/m4-gets-undeclared.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-The upstream fix was:
-
- commit 66712c23388e93e5c518ebc8515140fa0c807348
- Author: Eric Blake <eblake@redhat.com>
- Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
- Gnulib intentionally does not have a gets module, and now that C11
- and glibc have dropped it, we should be more proactive about warning
- any user on a platform that still has a declaration of this dangerous
- interface.
-
- * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
- support.
- * modules/stdio (Makefile.am): Likewise.
- * lib/stdio-read.c (gets): Likewise.
- * tests/test-stdio-c++.cc: Likewise.
- * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
- * lib/stdio.in.h (gets): Make warning occur in more places.
- * doc/posix-functions/gets.texi (gets): Update documentation.
- Reported by Christer Solskogen.
-
- Signed-off-by: Eric Blake <eblake@redhat.com>
-
-This patch just gets rid of the offending part.
-
---- m4-1.4.16/lib/stdio.in.h.orig 2012-09-01 01:05:36.000000000 +0200
-+++ m4-1.4.16/lib/stdio.in.h 2012-09-01 01:05:42.000000000 +0200
-@@ -158,12 +158,6 @@ _GL_WARN_ON_USE (fflush, "fflush is not
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/distro/packages/patches/m4-readlink-EINVAL.patch b/distro/packages/patches/m4-readlink-EINVAL.patch
deleted file mode 100644
index dd371584a7..0000000000
--- a/distro/packages/patches/m4-readlink-EINVAL.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Newer Linux kernels would return EINVAL instead of ENOENT.
-The patch below, taken from Gnulib, allows the test to pass when
-these Linux versions are in use:
-https://lists.gnu.org/archive/html/bug-gnulib/2011-03/msg00308.html .
-
-diff --git a/tests/test-readlink.h b/tests/test-readlink.h
-index 08d5662..7247fc4 100644
---- a/tests/test-readlink.h
-+++ b/tests/test-readlink.h
-@@ -38,7 +38,7 @@ test_readlink (ssize_t (*func) (char const *, char *, size_t), bool print)
- ASSERT (errno == ENOENT);
- errno = 0;
- ASSERT (func ("", buf, sizeof buf) == -1);
-- ASSERT (errno == ENOENT);
-+ ASSERT (errno == ENOENT || errno == EINVAL);
- errno = 0;
- ASSERT (func (".", buf, sizeof buf) == -1);
- ASSERT (errno == EINVAL);
diff --git a/distro/packages/patches/m4-s_isdir.patch b/distro/packages/patches/m4-s_isdir.patch
deleted file mode 100644
index a009a4ba44..0000000000
--- a/distro/packages/patches/m4-s_isdir.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Fails to build with glibc 2.12.1 without this patch.
-
-http://lists.gnu.org/archive/html/bug-m4/2010-05/msg00002.html
-
---- a/src/path.c
-+++ b/src/path.c
-@@ -22,6 +22,7 @@
- /* Handling of path search of included files via the builtins "include"
- and "sinclude". */
-
- #include "m4.h"
-+#include "sys/stat.h"
-
- struct includes
diff --git a/distro/packages/patches/make-impure-dirs.patch b/distro/packages/patches/make-impure-dirs.patch
deleted file mode 100644
index 83a5fbe3a5..0000000000
--- a/distro/packages/patches/make-impure-dirs.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-Purity: don't look for library dependencies (of the form `-lfoo') in
-/lib and /usr/lib. Likewise, when searching for included Makefiles,
-don't look in /usr/include and friends.
-
-Patch from Nixpkgs, by Eelco Dolstra.
-
-diff -rc make-3.81-orig/read.c make-3.81/read.c
-*** make-3.81-orig/read.c 2006-03-17 15:24:20.000000000 +0100
---- make-3.81/read.c 2007-05-24 17:16:31.000000000 +0200
-***************
-*** 99,107 ****
---- 99,109 ----
- #endif
- INCLUDEDIR,
- #ifndef _AMIGA
-+ #if 0
- "/usr/gnu/include",
- "/usr/local/include",
- "/usr/include",
-+ #endif
- #endif
- 0
- };
-diff -rc make-3.81-orig/remake.c make-3.81/remake.c
-*** make-3.81-orig/remake.c 2006-03-20 03:36:37.000000000 +0100
---- make-3.81/remake.c 2007-05-24 17:06:54.000000000 +0200
-***************
-*** 1452,1460 ****
---- 1452,1462 ----
- static char *dirs[] =
- {
- #ifndef _AMIGA
-+ #if 0
- "/lib",
- "/usr/lib",
- #endif
-+ #endif
- #if defined(WINDOWS32) && !defined(LIBDIR)
- /*
- * This is completely up to the user at product install time. Just define
diff --git a/distro/packages/patches/perl-no-sys-dirs.patch b/distro/packages/patches/perl-no-sys-dirs.patch
deleted file mode 100644
index 3aba4d7529..0000000000
--- a/distro/packages/patches/perl-no-sys-dirs.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-Don't long for headers and libraries in "traditional" locations.
-
-Patch from Nixpkgs by Eelco Dolstra <eelco.dolstra@logicblox.com>.
-
-diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
---- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200
-+++ perl-5.14.2/Configure 2012-01-20 17:05:23.089223129 +0100
-@@ -106,15 +106,7 @@
- fi
-
- : Proper PATH setting
--paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
--paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
--paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
--paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
--paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
--paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
--paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
--paths="$paths /sbin /usr/sbin /usr/libexec"
--paths="$paths /system/gnu_library/bin"
-+paths=''
-
- for p in $paths
- do
-@@ -1311,8 +1303,7 @@
- archname=''
- : Possible local include directories to search.
- : Set locincpth to "" in a hint file to defeat local include searches.
--locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
--locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
-+locincpth=""
- :
- : no include file wanted by default
- inclwanted=''
-@@ -1328,17 +1319,12 @@
- archobjs=''
- libnames=''
- : change the next line if compiling for Xenix/286 on Xenix/386
--xlibpth='/usr/lib/386 /lib/386'
-+xlibpth=''
- : Possible local library directories to search.
--loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
--loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
-+loclibpth=""
-
- : general looking path for locating libraries
--glibpth="/lib /usr/lib $xlibpth"
--glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
--test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
--test -f /shlib/libc.so && glibpth="/shlib $glibpth"
--test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"
-+glibpth=""
-
- : Private path used by Configure to find libraries. Its value
- : is prepended to libpth. This variable takes care of special
-@@ -1371,8 +1357,6 @@
- libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
- : We probably want to search /usr/shlib before most other libraries.
- : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
--glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
--glibpth="/usr/shlib $glibpth"
- : Do not use vfork unless overridden by a hint file.
- usevfork=false
-
-@@ -2380,7 +2364,6 @@
- zip
- "
- pth=`echo $PATH | sed -e "s/$p_/ /g"`
--pth="$pth /lib /usr/lib"
- for file in $loclist; do
- eval xxx=\$$file
- case "$xxx" in
-@@ -4785,7 +4768,7 @@
- : Set private lib path
- case "$plibpth" in
- '') if ./mips; then
-- plibpth="$incpath/usr/lib /usr/local/lib /usr/ccs/lib"
-+ plibpth="$incpath/usr/lib"
- fi;;
- esac
- case "$libpth" in
-@@ -8390,13 +8373,8 @@
- echo " "
- case "$sysman" in
- '')
-- syspath='/usr/share/man/man1 /usr/man/man1'
-- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
-- syspath="$syspath /usr/man/u_man/man1"
-- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
-- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
-- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
-- sysman=`./loc . /usr/man/man1 $syspath`
-+ syspath=''
-+ sysman=''
- ;;
- esac
- if $test -d "$sysman"; then
-@@ -19721,9 +19699,10 @@
- case "$full_ar" in
- '') full_ar=$ar ;;
- esac
-+full_ar=ar
-
- : Store the full pathname to the sed program for use in the C program
--full_sed=$sed
-+full_sed=sed
-
- : see what type gids are declared as in the kernel
- echo " "
-diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Errno_pm.PL
---- perl-5.14.2-orig/ext/Errno/Errno_pm.PL 2011-09-26 11:44:34.000000000 +0200
-+++ perl-5.14.2/ext/Errno/Errno_pm.PL 2012-01-20 17:02:07.938138311 +0100
-@@ -137,11 +137,7 @@
- if ($dep =~ /(\S+errno\.h)/) {
- $file{$1} = 1;
- }
-- } elsif ($^O eq 'linux' &&
-- $Config{gccversion} ne '' &&
-- $Config{gccversion} !~ /intel/i
-- # might be using, say, Intel's icc
-- ) {
-+ } elsif (0) {
- # Some Linuxes have weird errno.hs which generate
- # no #file or #line directives
- my $linux_errno_h = -e '/usr/include/errno.h' ?
-diff -ru -x '*~' perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh
---- perl-5.14.2-orig/hints/freebsd.sh 2011-09-19 15:18:22.000000000 +0200
-+++ perl-5.14.2/hints/freebsd.sh 2012-01-20 17:10:37.267924044 +0100
-@@ -118,21 +118,21 @@
- objformat=`/usr/bin/objformat`
- if [ x$objformat = xaout ]; then
- if [ -e /usr/lib/aout ]; then
-- libpth="/usr/lib/aout /usr/local/lib /usr/lib"
-- glibpth="/usr/lib/aout /usr/local/lib /usr/lib"
-+ libpth=""
-+ glibpth=""
- fi
- lddlflags='-Bshareable'
- else
-- libpth="/usr/lib /usr/local/lib"
-- glibpth="/usr/lib /usr/local/lib"
-+ libpth=""
-+ glibpth=""
- ldflags="-Wl,-E "
- lddlflags="-shared "
- fi
- cccdlflags='-DPIC -fPIC'
- ;;
- *)
-- libpth="/usr/lib /usr/local/lib"
-- glibpth="/usr/lib /usr/local/lib"
-+ libpth=""
-+ glibpth=""
- ldflags="-Wl,-E "
- lddlflags="-shared "
- cccdlflags='-DPIC -fPIC'
diff --git a/distro/packages/patches/procps-make-3.82.patch b/distro/packages/patches/procps-make-3.82.patch
deleted file mode 100644
index 7bf53e2ccc..0000000000
--- a/distro/packages/patches/procps-make-3.82.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Fix compilation with GNU Make 3.82 (patch from Nixpkgs).
-
-diff --git a/Makefile b/Makefile
-index 09fb3ed..59eba16 100644
---- a/Makefile
-+++ b/Makefile
-@@ -174,7 +174,7 @@ INSTALL := $(BINFILES) $(MANFILES)
- # want this rule first, use := on ALL, and ALL not filled in yet
- all: do_all
-
---include */module.mk
-+-include proc/module.mk ps/module.mk
-
- do_all: $(ALL)
diff --git a/distro/packages/patches/readline-link-ncurses.patch b/distro/packages/patches/readline-link-ncurses.patch
deleted file mode 100644
index 0fd0598f46..0000000000
--- a/distro/packages/patches/readline-link-ncurses.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-This patch is to make sure that `libncurses' is among the `NEEDED'
-dependencies of `libreadline.so' and `libhistory.so'.
-
-Failing to do that, applications linking against Readline are
-forced to explicitly link against libncurses as well; in addition,
-this trick doesn't work when using GNU ld's `--as-needed'.
-
---- shlib/Makefile.in 2009-01-06 18:03:22.000000000 +0100
-+++ shlib/Makefile.in 2009-07-27 14:43:25.000000000 +0200
-@@ -84,7 +84,7 @@ SHOBJ_LDFLAGS = @SHOBJ_LDFLAGS@
- SHOBJ_XLDFLAGS = @SHOBJ_XLDFLAGS@
- SHOBJ_LIBS = @SHOBJ_LIBS@
-
--SHLIB_XLDFLAGS = @LDFLAGS@ @SHLIB_XLDFLAGS@
-+SHLIB_XLDFLAGS = @LDFLAGS@ @SHLIB_XLDFLAGS@ -lncurses
- SHLIB_LIBS = @SHLIB_LIBS@
-
- SHLIB_DOT = @SHLIB_DOT@
diff --git a/distro/packages/patches/shishi-gets-undeclared.patch b/distro/packages/patches/shishi-gets-undeclared.patch
deleted file mode 100644
index a3d6d0cca2..0000000000
--- a/distro/packages/patches/shishi-gets-undeclared.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-
-commit 66712c23388e93e5c518ebc8515140fa0c807348
-Author: Eric Blake <eblake@redhat.com>
-Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
- Gnulib intentionally does not have a gets module, and now that C11
- and glibc have dropped it, we should be more proactive about warning
- any user on a platform that still has a declaration of this dangerous
- interface.
-
- * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets
- support.
- * modules/stdio (Makefile.am): Likewise.
- * lib/stdio-read.c (gets): Likewise.
- * tests/test-stdio-c++.cc: Likewise.
- * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment.
- * lib/stdio.in.h (gets): Make warning occur in more places.
- * doc/posix-functions/gets.texi (gets): Update documentation.
- Reported by Christer Solskogen.
-
- Signed-off-by: Eric Blake <eblake@redhat.com>
-
-diff --git a/gl/stdio.in.h b/gl/stdio.in.h
-index aa7b599..c377b6e 100644
---- a/gl/stdio.in.h
-+++ b/gl/stdio.in.h
-@@ -698,22 +698,11 @@ _GL_WARN_ON_USE (getline, "getline is unportable - "
- # endif
- #endif
-
--#if @GNULIB_GETS@
--# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
--# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
--# undef gets
--# define gets rpl_gets
--# endif
--_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1)));
--_GL_CXXALIAS_RPL (gets, char *, (char *s));
--# else
--_GL_CXXALIAS_SYS (gets, char *, (char *s));
--# undef gets
--# endif
--_GL_CXXALIASWARN (gets);
- /* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
-+ so any use of gets warrants an unconditional warning; besides, C11
-+ removed it. */
-+#undef gets
-+#if HAVE_RAW_DECL_GETS
- _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
- #endif
-
-@@ -1053,9 +1042,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - "
- # endif
- #endif
-
--/* Some people would argue that sprintf should be handled like gets
-- (for example, OpenBSD issues a link warning for both functions),
-- since both can cause security holes due to buffer overruns.
-+/* Some people would argue that all sprintf uses should be warned about
-+ (for example, OpenBSD issues a link warning for it),
-+ since it can cause security holes due to buffer overruns.
- However, we believe that sprintf can be used safely, and is more
- efficient than snprintf in those safe cases; and as proof of our
- belief, we use sprintf in several gnulib modules. So this header
diff --git a/distro/packages/patches/tar-gets-undeclared.patch b/distro/packages/patches/tar-gets-undeclared.patch
deleted file mode 100644
index 301a09dde1..0000000000
--- a/distro/packages/patches/tar-gets-undeclared.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch is needed to allow builds with newer versions of
-the GNU libc (2.16+).
-
-This is a backport of this patch:
-
-commit 66712c23388e93e5c518ebc8515140fa0c807348
-Author: Eric Blake <eblake@redhat.com>
-Date: Thu Mar 29 13:30:41 2012 -0600
-
- stdio: don't assume gets any more
-
---- tar-1.26/gnu/stdio.in.h 2012-07-02 14:28:45.000000000 +0200
-+++ tar-1.26/gnu/stdio.in.h 2012-07-02 14:28:50.000000000 +0200
-@@ -160,12 +160,6 @@ _GL_WARN_ON_USE (fflush, "fflush is not
- "use gnulib module fflush for portable POSIX compliance");
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning. Assume it is
-- always declared, since it is required by C89. */
--#undef gets
--_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
--
- #if @GNULIB_FOPEN@
- # if @REPLACE_FOPEN@
- # if !(defined __cplusplus && defined GNULIB_NAMESPACE)
diff --git a/distro/packages/perl.scm b/distro/packages/perl.scm
deleted file mode 100644
index b6357875b6..0000000000
--- a/distro/packages/perl.scm
+++ /dev/null
@@ -1,73 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 perl)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public perl
- ;; Yeah, Perl... It is required early in the bootstrap process by Linux.
- (package
- (name "perl")
- (version "5.16.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://www.cpan.org/src/5.0/perl-"
- version ".tar.gz"))
- (sha256
- (base32
- "15qxzba3a50c9nik5ydgyfp62x7h9vxxn12yd1jgl93hb1wj96km"))))
- (build-system gnu-build-system)
- (arguments
- (lambda (system)
- `(#:tests? #f
- #:patches (list (assoc-ref %build-inputs "patch/no-sys-dirs"))
- #:phases
- (alist-replace
- 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (libc (assoc-ref inputs "libc")))
- ;; Use the right path for `pwd'.
- (substitute* "dist/Cwd/Cwd.pm"
- (("/bin/pwd")
- (which "pwd")))
-
- (zero?
- (system* "./Configure"
- (string-append "-Dprefix=" out)
- (string-append "-Dman1dir=" out "/share/man/man1")
- (string-append "-Dman3dir=" out "/share/man/man3")
- "-de" "-Dcc=gcc"
- "-Uinstallusrbinperl"
- "-Dinstallstyle=lib/perl5"
- "-Duseshrplib"
- (string-append "-Dlocincpth=" libc "/include")
- (string-append "-Dloclibpth=" libc "/lib")))))
- %standard-phases))))
- (inputs `(("patch/no-sys-dirs" ,(search-patch "perl-no-sys-dirs.patch"))))
- (synopsis "Implementation of the Perl programming language")
- (description
- "Perl 5 is a highly capable, feature-rich programming language with over
-24 years of development.")
- (home-page "http://www.perl.org/")
- (license gpl1+))) ; or "Artistic"
diff --git a/distro/packages/pkg-config.scm b/distro/packages/pkg-config.scm
deleted file mode 100644
index 499e3fdc86..0000000000
--- a/distro/packages/pkg-config.scm
+++ /dev/null
@@ -1,51 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 pkg-config)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public pkg-config
- (package
- (name "pkg-config")
- (version "0.27.1")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "http://pkgconfig.freedesktop.org/releases/pkg-config-"
- version ".tar.gz"))
- (sha256
- (base32
- "05wc5nwkqz7saj2v33ydmz1y6jdg659dll4jjh91n41m63gx0qsg"))))
- (build-system gnu-build-system)
- (arguments `(#:configure-flags '("--with-internal-glib")))
- (home-page "http://www.freedesktop.org/wiki/Software/pkg-config")
- (license gpl2+)
- (synopsis "a helper tool used when compiling applications and
-libraries")
- (description
- "pkg-config is a helper tool used when compiling applications and
-libraries. It helps you insert the correct compiler options on the
-command line so an application can use gcc -o test test.c `pkg-config
---libs --cflags glib-2.0` for instance, rather than hard-coding values
-on where to find glib (or other libraries). It is language-agnostic, so
-it can be used for defining the location of documentation tools, for
-instance.")))
diff --git a/distro/packages/pth.scm b/distro/packages/pth.scm
deleted file mode 100644
index 4c52079544..0000000000
--- a/distro/packages/pth.scm
+++ /dev/null
@@ -1,61 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 pth)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public pth
- (package
- (name "pth")
- (version "2.0.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/pth/pth-" version
- ".tar.gz"))
- (sha256
- (base32
- "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj"))))
- (build-system gnu-build-system)
- (arguments '(#:parallel-build? #f))
- (home-page "http://www.gnu.org/software/pth")
- (synopsis "The GNU Portable Threads library")
- (description
- "Pth is a very portable POSIX/ANSI-C based library for Unix
-platforms which provides non-preemptive priority-based scheduling for
-multiple threads of execution (aka ``multithreading'') inside
-event-driven applications. All threads run in the same address space of
-the server application, but each thread has it's own individual
-program-counter, run-time stack, signal mask and errno variable.
-
-The thread scheduling itself is done in a cooperative way, i.e., the
-threads are managed by a priority- and event-based non-preemptive
-scheduler. The intention is that this way one can achieve better
-portability and run-time performance than with preemptive
-scheduling. The event facility allows threads to wait until various
-types of events occur, including pending I/O on file descriptors,
-asynchronous signals, elapsed timers, pending I/O on message ports,
-thread and process termination, and even customized callback functions.
-
-Additionally Pth provides an optional emulation API for POSIX.1c
-threads (\"Pthreads\") which can be used for backward compatibility to
-existing multithreaded applications.")
- (license lgpl2.1+)))
diff --git a/distro/packages/python.scm b/distro/packages/python.scm
deleted file mode 100644
index 5692cd5bd5..0000000000
--- a/distro/packages/python.scm
+++ /dev/null
@@ -1,58 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
-;;; 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 python)
- #:use-module ((guix licenses) #:select (psfl))
- #:use-module (distro packages compression)
- #:use-module (distro packages openssl)
- #:use-module (distro packages base)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public python
- (package
- (name "python")
- (version "2.7.3")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://www.python.org/ftp/python/"
- version "/Python-" version ".tar.xz"))
- (sha256
- (base32
- "11f9aw855lrmknr6c82gm1ijr3n0smc6idyp94y7774yivjnplv1"))))
- (build-system gnu-build-system)
- (arguments `(#:tests? #f)) ; XXX: some tests fail
- (inputs
- `(("zlib" ,zlib)
- ("openssl" ,openssl)
- ("bzip2" ,bzip2)))
- (home-page "http://python.org")
- (synopsis
- "Python, a high-level dynamically-typed programming language")
- (description
- "Python is a remarkably powerful dynamic programming language that
-is used in a wide variety of application domains. Some of its key
-distinguishing features include: clear, readable syntax; strong
-introspection capabilities; intuitive object orientation; natural
-expression of procedural code; full modularity, supporting hierarchical
-packages; exception-based error handling; and very high level dynamic
-data types.")
- (license psfl)))
diff --git a/distro/packages/readline.scm b/distro/packages/readline.scm
deleted file mode 100644
index 5498f15b52..0000000000
--- a/distro/packages/readline.scm
+++ /dev/null
@@ -1,79 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 readline)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages ncurses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public readline
- (let ((post-install-phase
- '(lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lib (string-append out "/lib")))
- ;; Make libraries writable so that `strip' can work.
- ;; Failing to do that, it bails out with "Permission
- ;; denied".
- (for-each (lambda (f) (chmod f #o755))
- (find-files lib "\\.so"))
- (for-each (lambda (f) (chmod f #o644))
- (find-files lib "\\.a"))))))
- (package
- (name "readline")
- (version "6.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/readline/readline-"
- version ".tar.gz"))
- (sha256
- (base32
- "10ckm2bd2rkxhvdmj7nmbsylmihw0abwcsnxf8y27305183rd9kr"))))
- (build-system gnu-build-system)
- (propagated-inputs `(("ncurses" ,ncurses)))
- (inputs `(("patch/link-ncurses"
- ,(search-patch "readline-link-ncurses.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs
- "patch/link-ncurses"))
- #:patch-flags '("-p0")
- #:configure-flags
- (list (string-append "LDFLAGS=-Wl,-rpath -Wl,"
- (assoc-ref %build-inputs "ncurses")
- "/lib"))
-
- #:phases (alist-cons-after
- 'install 'post-install
- ,post-install-phase
- %standard-phases)))
- (synopsis "GNU Readline, a library for interactive line editing")
- (description
- "The GNU Readline library provides a set of functions for use by
-applications that allow users to edit command lines as they are typed in.
-Both Emacs and vi editing modes are available. The Readline library includes
-additional functions to maintain a list of previously-entered command lines,
-to recall and perhaps reedit those lines, and perform csh-like history
-expansion on previous commands.
-
-The history facilites are also placed into a separate library, the History
-library, as part of the build process. The History library may be used
-without Readline in applications which desire its capabilities.")
- (license gpl3+)
- (home-page "http://savannah.gnu.org/projects/readline/"))))
diff --git a/distro/packages/recutils.scm b/distro/packages/recutils.scm
deleted file mode 100644
index 484dd232bb..0000000000
--- a/distro/packages/recutils.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 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 recutils)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages emacs)
- #:use-module (distro packages check)
- #:use-module (distro packages algebra))
-
-(define-public recutils
- (package
- (name "recutils")
- (version "1.5")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/recutils/recutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "1v2xzwwwhc5j5kmvg4sv6baxjpsfqh8ln7ilv4mgb1408rs7xmky"))))
- (build-system gnu-build-system)
- (inputs `(;; TODO: Enable optional deps when they're packaged.
- ;; ("curl" ,(nixpkgs-derivation "curl"))
- ("emacs" ,emacs)
- ("check" ,check)
- ("bc" ,bc)
- ("patch/gets"
- ,(search-patch "diffutils-gets-undeclared.patch"))))
- (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))))
- (synopsis "GNU recutils, tools and libraries to access human-editable,
-text-based databases")
- (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 gpl3+)
- (home-page "http://www.gnu.org/software/recutils/")))
diff --git a/distro/packages/rsync.scm b/distro/packages/rsync.scm
deleted file mode 100644
index 8dc0acb118..0000000000
--- a/distro/packages/rsync.scm
+++ /dev/null
@@ -1,51 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 rsync)
- #:use-module (distro)
- #:use-module (distro packages perl)
- #:use-module (distro packages acl)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-
-(define-public rsync
- (package
- (name "rsync")
- (version "3.0.9")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://rsync.samba.org/ftp/rsync/rsync-"
- version ".tar.gz"))
- (sha256
- (base32
- "01bw4klqsrlhh3i9lazd485sd9qx5djvnwa21lj2h3a9sn6hzw9h"))))
- (build-system gnu-build-system)
- (inputs `(("perl" ,perl)
- ("acl" ,acl)))
- (synopsis "rsync, a remote (and local) file copying tool")
- (description
- "rsync is a fast and versatile file copying tool. It can copy locally,
-to/from another host over any remote shell, or to/from a remote rsync daemon.
-Its delta-transfer algorithm reduces the amount of data sent over the network
-by sending only the differences between the source files and the existing
-files in the destination.")
- (license gpl3+)
- (home-page "http://rsync.samba.org/")))
diff --git a/distro/packages/scheme.scm b/distro/packages/scheme.scm
deleted file mode 100644
index b18697cb08..0000000000
--- a/distro/packages/scheme.scm
+++ /dev/null
@@ -1,168 +0,0 @@
-;;; 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 scheme)
- #:use-module (distro)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages m4)
- #:use-module (distro packages multiprecision)
- #:use-module (distro packages emacs)
- #:use-module (distro packages texinfo)
- #:use-module (ice-9 match))
-
-(define-public mit-scheme
- (package
- (name "mit-scheme")
- (version "9.1.1")
- (source #f) ; see below
- (build-system gnu-build-system)
- (arguments
- `(#:tests? #f ; no "check" target
- #:phases
- (alist-replace
- 'unpack
- (lambda* (#:key inputs #:allow-other-keys)
- (and (zero? (system* "tar" "xzvf"
- (assoc-ref inputs "source")))
- (chdir ,(string-append name "-" version))
- (begin
- ;; Delete these dangling symlinks since they break
- ;; `patch-shebangs'.
- (for-each delete-file
- (append (find-files "src/lib/lib" "\\.so$")
- (find-files "src/lib" "^ffi-test")))
- (chdir "src")
- #t)))
- (alist-replace
- 'build
- (lambda* (#:key system outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (if (or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system))
- (zero? (system* "make" "compile-microcode"))
- (zero? (system* "./etc/make-liarc.sh"
- (string-append "--prefix=" out))))))
- %standard-phases))))
- (inputs
- `(;; TODO: Build doc when TeX Live is available.
- ;; ("automake" ,automake)
- ;; ("texlive-core" ,texlive-core)
- ("texinfo" ,texinfo)
- ("m4" ,m4)
-
- ("source"
- ,(lambda (system)
- ;; MIT/GNU Scheme is not bootstrappable, so it's recommended to
- ;; compile from the architecture-specific tarballs, which contain
- ;; pre-built binaries. It leads to more efficient code than when
- ;; building the tarball that contains generated C code instead of
- ;; those binaries.
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/mit-scheme/stable.pkg/"
- version "/mit-scheme-"
- version "-"
- (match system
- ("x86_64-linux" "x86-64")
- ("i686-linux" "i386")
- (_ "c"))
- ".tar.gz"))
- (sha256
- (match system
- ("x86_64-linux"
- (base32
- "1wcxm9hyfc53myvlcn93fyqrnnn4scwkknl9hkbp1cphc6mp291x"))
- ("i686-linux"
- (base32
- "0vi760fy550d9db538m0vzbq1mpdncvw9g8bk4lswk0kcdira55z"))
- (_
- (base32
- "0pclakzwxbqgy6wqwvs6ml62wgby8ba8xzmwzdwhx1v8wv05yw1j")))))))))
- (home-page "http://www.gnu.org/software/mit-scheme/")
- (synopsis "MIT/GNU Scheme, a native code Scheme compiler")
- (description
- "MIT/GNU Scheme is an implementation of the Scheme programming
-language, providing an interpreter, compiler, source-code debugger,
-integrated Emacs-like editor, and a large runtime library. MIT/GNU
-Scheme is best suited to programming large applications with a rapid
-development cycle.")
- (license gpl2+)))
-
-(define-public bigloo
- (package
- (name "bigloo")
- (version "3.9a")
- (source (origin
- (method url-fetch)
- (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo"
- version ".tar.gz"))
- (sha256
- (base32
- "0v1q0gcbn38ackdzsnvpkdgaj6ydkfdya31l2hag21aig087px1y"))))
- (build-system gnu-build-system)
- (arguments
- '(#:patches (list (assoc-ref %build-inputs "patch/shebangs"))
- #:test-target "test"
- #:phases (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
-
- (substitute* "configure"
- (("^shell=.*$")
- (string-append "shell=" (which "bash") "\n")))
-
- ;; Those variables are used by libgc's `configure'.
- (setenv "SHELL" (which "bash"))
- (setenv "CONFIG_SHELL" (which "bash"))
-
- ;; The `configure' script doesn't understand options
- ;; of those of Autoconf.
- (let ((out (assoc-ref outputs "out")))
- (zero?
- (system* "./configure"
- (string-append "--prefix=" out)
- (string-append"--mv=" (which "mv"))
- (string-append "--rm=" (which "rm"))))))
- (alist-cons-after
- 'patch 'patch-absolute-file-names
- (lambda _
- (substitute* (cons "configure"
- (find-files "gc" "^install-gc"))
- (("/bin/rm") (which "rm"))
- (("/bin/mv") (which "mv"))))
- %standard-phases))))
- (inputs
- `(("gmp" ,gmp)
- ("emacs" ,emacs)
- ("patch/shebangs" ,(search-patch "bigloo-gc-shebangs.patch"))))
- (home-page "http://www-sop.inria.fr/indes/fp/Bigloo/")
- (synopsis "Bigloo, an efficient Scheme compiler")
- (description
- "Bigloo is a Scheme implementation devoted to one goal: enabling
-Scheme based programming style where C(++) is usually
-required. Bigloo attempts to make Scheme practical by offering
-features usually presented by traditional programming languages
-but not offered by Scheme and functional programming. Bigloo
-compiles Scheme modules. It delivers small and fast stand alone
-binary executables. Bigloo enables full connections between
-Scheme and C programs, between Scheme and Java programs, and
-between Scheme and C# programs.")
- (license gpl2+)))
diff --git a/distro/packages/shishi.scm b/distro/packages/shishi.scm
deleted file mode 100644
index acbb1ed5c0..0000000000
--- a/distro/packages/shishi.scm
+++ /dev/null
@@ -1,71 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2012 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 shishi)
- #:use-module (guix licenses)
- #:use-module (distro)
- #:use-module (distro packages gnutls)
- #:use-module (distro packages gnupg)
- #:use-module ((distro packages compression)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public shishi
- (package
- (name "shishi")
- (version "1.0.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/shishi/shishi-"
- version
- ".tar.gz"))
- (sha256
- (base32
- "13c6w9rpaqb3am65nrn86byvmll5r78pld2vb0i68491vww4fzlx"))))
- (build-system gnu-build-system)
- (arguments
- `(#:make-flags
- '("CPPFLAGS=-DMAX_ERROR_DESCRIPTION_SIZE=ASN1_MAX_ERROR_DESCRIPTION_SIZE")
- #:patches (list (assoc-ref %build-inputs
- "patch/gets"))))
- (inputs
- `(("gnutls" ,gnutls)
- ("zlib" ,guix:zlib)
- ("libgcrypt" ,libgcrypt)
- ("libtasn1" ,libtasn1)
- ("patch/gets" ,(search-patch "shishi-gets-undeclared.patch"))))
- (home-page "http://www.gnu.org/software/shishi/")
- (synopsis
- "GNU Shishi, free implementation of the Kerberos 5 network security system")
- (description
- " GNU Shishi is an implementation of the Kerberos 5 network
- authentication system, as specified in RFC 4120. Shishi can be
- used to authenticate users in distributed systems.
-
- Shishi contains a library (`libshishi') that can be used by
- application developers to add support for Kerberos 5. Shishi
- contains a command line utility (1shishi') that is used by
- users to acquire and manage tickets (and more). The server
- side, a Key Distribution Center, is implemented by `shishid'.
-")
- (license gpl3+))) ; some files are under GPLv2+
diff --git a/distro/packages/system.scm b/distro/packages/system.scm
deleted file mode 100644
index f2a031ccd7..0000000000
--- a/distro/packages/system.scm
+++ /dev/null
@@ -1,91 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 system)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro)
- #:use-module (distro packages ncurses))
-
-(define-public pies
- (package
- (name "pies")
- (version "1.2")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/pies/pies-"
- version ".tar.bz2"))
- (sha256
- (base32
- "18w0dbg77i56cx1bwa789w0qi3l4xkkbascxcv2b6gbm0zmjg1g6"))))
- (build-system gnu-build-system)
- (home-page "http://www.gnu.org/software/pies/")
- (synopsis
- "GNU Pies, a program invocation and execution supervisor")
- (description
- "The name Pies (pronounced \"p-yes\") stands for Program Invocation
-and Execution Supervisor. This utility starts and controls execution of
-external programs, called components. Each component is a stand-alone
-program, which is executed in the foreground. Upon startup, pies reads
-the list of components from its configuration file, starts them, and
-remains in the background, controlling their execution. If any of the
-components terminates, the default action of Pies is to restart it.
-However, it can also be programmed to perform a variety of another
-actions such as, e.g., sending mail notifications to the system
-administrator, invoking another external program, etc.
-
-Pies can be used for a wide variety of tasks. Its most obious use is to
-put in backgound a program which normally cannot detach itself from the
-controlling terminal, such as, e.g., minicom. It can launch and control
-components of some complex system, such as Jabberd or MeTA1 (and it
-offers much more control over them than the native utilities). Finally,
-it can replace the inetd utility!")
- (license gpl3+)))
-
-(define-public inetutils
- (package
- (name "inetutils")
- (version "1.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/inetutils/inetutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "0azzg6njgq79byl6960kb0wihfhhzf49snslhxgvi30ribgfpa82"))))
- (build-system gnu-build-system)
- (arguments `(#:patches (list (assoc-ref %build-inputs "patch/gets"))
-
- ;; FIXME: `tftp.sh' relies on `netstat' from utils-linux,
- ;; which is currently missing.
- #:tests? #f))
- (inputs `(("patch/gets" ,(search-patch "diffutils-gets-undeclared.patch"))
- ("ncurses" ,ncurses)))
- (home-page "http://www.gnu.org/software/inetutils/")
- (synopsis
- "GNU Inetutils, a collection of common network programs")
- (description
- "The GNU network utilities suite provides the following tools:
-ftp(d), hostname, ifconfig, inetd, logger, ping, rcp, rexec(d),
-rlogin(d), rsh(d), syslogd, talk(d), telnet(d), tftp(d), traceroute,
-uucpd, and whois.")
- (license gpl3+)))
diff --git a/distro/packages/tcl.scm b/distro/packages/tcl.scm
deleted file mode 100644
index d764f6b8ad..0000000000
--- a/distro/packages/tcl.scm
+++ /dev/null
@@ -1,109 +0,0 @@
-;;; 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))
-
- ;; XXX: There are a few test failures (related to HTTP, most
- ;; likely related to name resolution), but that doesn't cause
- ;; `make' to fail.
- #: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")))
-
- #:phases (alist-cons-before
- 'configure 'set-path-to-stty
- (lambda _
- (substitute* "configure"
- (("STTY_BIN=/bin/stty")
- (string-append "STTY_BIN=" (which "stty")))))
- %standard-phases)
-
- #: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'
diff --git a/distro/packages/texinfo.scm b/distro/packages/texinfo.scm
deleted file mode 100644
index 99925eeb53..0000000000
--- a/distro/packages/texinfo.scm
+++ /dev/null
@@ -1,61 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 texinfo)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages compression)
- #:use-module (distro packages ncurses))
-
-(define-public texinfo
- (package
- (name "texinfo")
- (version "4.13a")
- (source
- (origin
- (method url-fetch)
- (uri (string-append
- "mirror://gnu/texinfo/texinfo-"
- version
- ".tar.lzma"))
- (sha256
- (base32
- "1rf9ckpqwixj65bw469i634897xwlgkm5i9g2hv3avl6mv7b0a3d"))))
- (build-system gnu-build-system)
- (inputs `(("ncurses" ,ncurses) ("xz" ,xz)))
- (home-page
- "http://www.gnu.org/software/texinfo/")
- (synopsis
- "GNU Texinfo, the GNU documentation system")
- (description
- "Texinfo is the official documentation format of the GNU project.
-It was invented by Richard Stallman and Bob Chassell many years
-ago, loosely based on Brian Reid's Scribe and other formatting
-languages of the time. It is used by many non-GNU projects as
-well.
-
-Texinfo uses a single source file to produce output in a number
-of formats, both online and printed (dvi, html, info, pdf, xml,
-etc.). This means that instead of writing different documents
-for online information and another for a printed manual, you
-need write only one document. And when the work is revised, you
-need revise only that one document. The Texinfo system is
-well-integrated with GNU Emacs.")
- (license gpl3+)))
diff --git a/distro/packages/time.scm b/distro/packages/time.scm
deleted file mode 100644
index 0b7bde9a1b..0000000000
--- a/distro/packages/time.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
-;;; 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 time)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public time
- (package
- (name "time")
- (version "1.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/time/time-"
- version ".tar.gz"))
- (sha256
- (base32
- "0va9063fcn7xykv658v2s9gilj2fq4rcdxx2mn2mmy1v4ndafzp3"))))
- (build-system gnu-build-system)
- (arguments
- '(#:phases
- (alist-replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- ;; This old `configure' script doesn't support
- ;; variables passed as arguments.
- (let ((out (assoc-ref outputs "out")))
- (setenv "CONFIG_SHELL" (which "bash"))
- (zero?
- (system* "./configure"
- (string-append "--prefix=" out)))))
- %standard-phases)))
- (home-page "http://www.gnu.org/software/time/")
- (synopsis
- "GNU Time, a tool that runs programs and summarizes the system
-resources they use")
- (description
- "The 'time' command runs another program, then displays information
-about the resources used by that program, collected by the system while
-the program was running. You can select which information is reported
-and the format in which it is shown, or have 'time' save the information
-in a file instead of displaying it on the screen.
-
-The resources that 'time' can report on fall into the general categories
-of time, memory, and I/O and IPC calls. Some systems do not provide
-much information about program resource use; 'time' reports unavailable
-information as zero values.")
- (license gpl2+)))
diff --git a/distro/packages/wget.scm b/distro/packages/wget.scm
deleted file mode 100644
index 08b16f167b..0000000000
--- a/distro/packages/wget.scm
+++ /dev/null
@@ -1,61 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 wget)
- #:use-module (guix licenses)
- #:use-module ((distro packages gettext)
- #:renamer (symbol-prefix-proc 'guix:))
- #:use-module (distro packages gnutls)
- #:use-module (distro packages perl)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public wget
- (package
- (name "wget")
- (version "1.14")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/wget/wget-"
- version ".tar.xz"))
- (sha256
- (base32
- "0yqllj3nv9p3vqbdm6j4nvpjcwf1y19rq8sd966nrbd2qvvxfq8p"))))
- (build-system gnu-build-system)
- (inputs
- `(("gnutls" ,gnutls)
- ("perl" ,perl)
- ("gettext" ,guix:gettext)))
- (arguments
- '(#:phases
- (alist-cons-before 'build 'patch-/usr/bin/env
- (lambda _
- (for-each patch-shebang
- '("doc/texi2pod.pl" "tests/run-px")))
- %standard-phases)))
- (home-page "http://www.gnu.org/software/wget/")
- (synopsis
- "GNU Wget, a tool for retrieving files using HTTP, HTTPS, and FTP")
- (description
- "GNU Wget is a free software package for retrieving files using HTTP,
-HTTPS and FTP, the most widely-used Internet protocols. It is a
-non-interactive commandline tool, so it may easily be called from
-scripts, cron jobs, terminals without X-Windows support, etc.")
- (license gpl3+))) ; some files are under GPLv2+
diff --git a/distro/packages/which.scm b/distro/packages/which.scm
deleted file mode 100644
index 8cdd36841c..0000000000
--- a/distro/packages/which.scm
+++ /dev/null
@@ -1,48 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.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 which)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public which
- (package
- (name "which")
- (version "2.20")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/which/which-"
- version ".tar.gz"))
- (sha256
- (base32
- "1y2p50zadb36izzh2zw4dm5hvdiydqf3qa88l8kav20dcmfbc5yl"))))
- (build-system gnu-build-system)
- (home-page "https://gnu.org/software/which/")
- (synopsis
- "GNU Which shows the full path of (shell) commands")
- (description
- "GNU Which takes one or more arguments. For each of its arguments
-it prints to stdout the full path of the executables that would have
-been executed when this argument had been entered at the shell
-prompt. It does this by searching for an executable or script in the
-directories listed in the environment variable PATH using the same
-algorithm as bash(1).")
- (license gpl3+))) ; some files are under GPLv2+
diff --git a/distro/packages/xml.scm b/distro/packages/xml.scm
deleted file mode 100644
index 5962e35d86..0000000000
--- a/distro/packages/xml.scm
+++ /dev/null
@@ -1,44 +0,0 @@
-;;; 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 xml)
- #:use-module ((guix licenses)
- #:renamer (symbol-prefix-proc 'license:))
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu))
-
-(define-public expat
- (package
- (name "expat")
- (version "2.1.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/expat/expat/"
- version "/expat-" version ".tar.gz"))
- (sha256
- (base32
- "11pblz61zyxh68s5pdcbhc30ha1b2vfjd83aiwfg4vc15x3hadw2"))))
- (build-system gnu-build-system)
- (home-page "http://www.libexpat.org/")
- (synopsis "A stream-oriented XML parser library written in C")
- (description
- "Expat is an XML parser library written in C. It is a
-stream-oriented parser in which an application registers handlers for
-things the parser might find in the XML document (like start tags).")
- (license license:expat)))
diff --git a/distro/packages/zile.scm b/distro/packages/zile.scm
deleted file mode 100644
index 9eae6d4b9f..0000000000
--- a/distro/packages/zile.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 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 zile)
- #:use-module (guix licenses)
- #:use-module (guix download)
- #:use-module (guix packages)
- #:use-module (guix build-system gnu)
- #:use-module (distro packages bdw-gc)
- #:use-module (distro packages perl)
- #:use-module (distro packages help2man)
- #:use-module (distro packages ncurses))
-
-(define-public zile
- (package
- (name "zile")
- (version "2.4.9")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/zile/zile-"
- version ".tar.gz"))
- (sha256
- (base32
- "0j801c28ypm924rw3lqyb6khxyslg6ycrv16wmmwcam0mk3mj6f7"))))
- (build-system gnu-build-system)
- (inputs
- `(("boehm-gc" ,libgc)
- ("ncurses" ,ncurses)
- ("perl" ,perl)
- ("help2man" ,help2man)))
- (home-page "http://www.gnu.org/software/zile/")
- (synopsis "GNU Zile, a lightweight Emacs clone")
- (description
- "GNU Zile, which is a lightweight Emacs clone. Zile is short
-for Zile Is Lossy Emacs. Zile has been written to be as
-similar as possible to Emacs; every Emacs user should feel at
-home.
-
-Zile has all of Emacs's basic editing features: it is 8-bit
-clean (though it currently lacks Unicode support), and the
-number of editing buffers and windows is only limited by
-available memory and screen space respectively. Registers,
-minibuffer completion and auto fill are available. Function
-and variable names are identical with Emacs's (except those
-containing the word \"emacs\", which instead contain the word
-\"zile\"!).
-
-However, all of this is packed into a program which typically
-compiles to about 130Kb.")
- (license gpl3+)))