summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-09-08 17:48:03 +0200
committerLudovic Courtès <ludo@gnu.org>2014-09-08 17:48:57 +0200
commit5f96f303eb9438d0395ad0b66e92e435531d7700 (patch)
tree543561461535bd69b0439babcc0c589fb0908afc
parent971863fb45af749639a556e905997f48e895cfa8 (diff)
downloadguix-5f96f303eb9438d0395ad0b66e92e435531d7700.tar.gz
gnu: Consolidate databases in (gnu packages databases).
* gnu/packages/databases.scm: New file, with the contents of the
  following deleted files.
* gnu/packages/mysql.scm, gnu/packages/postgresql.scm,
  gnu/packages/recutils.scm, gnu/packages/sqlite.scm,
  gnu/packages/bdb.scm: Remove.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/apl.scm, gnu/packages/dc.scm, gnu/packages/games.scm,
  gnu/packages/gnunet.scm, gnu/packages/linux.scm, gnu/packages/mail.scm,
  gnu/packages/mpd.scm, gnu/packages/nvi.scm, gnu/packages/openldap.scm,
  gnu/packages/package-management.scm, gnu/packages/python.scm,
  gnu/packages/qt.scm, gnu/packages/rdf.scm,
  gnu/packages/version-control.scm: Adjust to new module name.
-rw-r--r--gnu-system.am6
-rw-r--r--gnu/packages/apl.scm2
-rw-r--r--gnu/packages/bdb.scm68
-rw-r--r--gnu/packages/databases.scm245
-rw-r--r--gnu/packages/dc.scm2
-rw-r--r--gnu/packages/games.scm2
-rw-r--r--gnu/packages/gnunet.scm2
-rw-r--r--gnu/packages/linux.scm2
-rw-r--r--gnu/packages/mail.scm3
-rw-r--r--gnu/packages/mpd.scm2
-rw-r--r--gnu/packages/mysql.scm87
-rw-r--r--gnu/packages/nvi.scm2
-rw-r--r--gnu/packages/openldap.scm4
-rw-r--r--gnu/packages/package-management.scm2
-rw-r--r--gnu/packages/postgresql.scm52
-rw-r--r--gnu/packages/python.scm2
-rw-r--r--gnu/packages/qt.scm2
-rw-r--r--gnu/packages/rdf.scm2
-rw-r--r--gnu/packages/recutils.scm66
-rw-r--r--gnu/packages/sqlite.scm63
-rw-r--r--gnu/packages/version-control.scm2
21 files changed, 261 insertions, 357 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 9328d13083..b3d6123468 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -41,7 +41,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/backup.scm			\
   gnu/packages/base.scm				\
   gnu/packages/bash.scm				\
-  gnu/packages/bdb.scm				\
   gnu/packages/bdw-gc.scm			\
   gnu/packages/bittorrent.scm			\
   gnu/packages/bison.scm			\
@@ -67,6 +66,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/curl.scm				\
   gnu/packages/cursynth.scm			\
   gnu/packages/cyrus-sasl.scm			\
+  gnu/packages/databases.scm			\
   gnu/packages/datamash.scm			\
   gnu/packages/dc.scm				\
   gnu/packages/dejagnu.scm			\
@@ -172,7 +172,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/mpi.scm				\
   gnu/packages/multiprecision.scm		\
   gnu/packages/mtools.scm			\
-  gnu/packages/mysql.scm			\
   gnu/packages/nano.scm				\
   gnu/packages/ncdu.scm				\
   gnu/packages/ncurses.scm			\
@@ -199,7 +198,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/pkg-config.scm			\
   gnu/packages/plotutils.scm			\
   gnu/packages/popt.scm				\
-  gnu/packages/postgresql.scm			\
   gnu/packages/pth.scm				\
   gnu/packages/pulseaudio.scm			\
   gnu/packages/pretty-print.scm			\
@@ -210,7 +208,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/ratpoison.scm			\
   gnu/packages/rdf.scm				\
   gnu/packages/readline.scm			\
-  gnu/packages/recutils.scm			\
   gnu/packages/rrdtool.scm			\
   gnu/packages/rsync.scm			\
   gnu/packages/rush.scm				\
@@ -224,7 +221,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/skribilo.scm			\
   gnu/packages/slim.scm				\
   gnu/packages/smalltalk.scm			\
-  gnu/packages/sqlite.scm			\
   gnu/packages/ssh.scm				\
   gnu/packages/stalonetray.scm			\
   gnu/packages/swig.scm				\
diff --git a/gnu/packages/apl.scm b/gnu/packages/apl.scm
index a08886c252..7da3b5eb4a 100644
--- a/gnu/packages/apl.scm
+++ b/gnu/packages/apl.scm
@@ -24,7 +24,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages maths)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages readline))
 
 (define-public apl
diff --git a/gnu/packages/bdb.scm b/gnu/packages/bdb.scm
deleted file mode 100644
index e82a683332..0000000000
--- a/gnu/packages/bdb.scm
+++ /dev/null
@@ -1,68 +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 (gnu packages bdb)
-  #:use-module (gnu packages)
-  #: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)
-   (outputs '("out"                             ; programs, libraries, headers
-              "doc"))                           ; 94 MiB of HTML docs
-   (arguments
-    '(#:tests? #f                            ; no check target available
-      #:phases
-      (alist-replace
-       'configure
-       (lambda* (#:key outputs #:allow-other-keys)
-         (let ((out (assoc-ref outputs "out"))
-               (doc (assoc-ref outputs "doc")))
-           ;; '--docdir' is not honored, so we need to patch.
-           (substitute* "dist/Makefile.in"
-             (("docdir[[:blank:]]*=.*")
-              (string-append "docdir = " doc "/share/doc/bdb")))
-
-           (zero?
-            (system* "./dist/configure"
-                     (string-append "--prefix=" out)
-                     (string-append "CONFIG_SHELL=" (which "bash"))
-                     (string-append "SHELL=" (which "bash"))
-
-                     ;; The compatibility mode is needed by some packages,
-                     ;; notably iproute2.
-                     "--enable-compat185"))))
-       %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/gnu/packages/databases.scm b/gnu/packages/databases.scm
new file mode 100644
index 0000000000..553a078a88
--- /dev/null
+++ b/gnu/packages/databases.scm
@@ -0,0 +1,245 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
+;;; Copyright © 2014 David Thompson <davet@gnu.org>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.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 packages databases)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages readline)
+  #:use-module (gnu packages emacs)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages algebra)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages gnupg)
+  #:use-module ((guix licenses)
+                #:select (gpl2 gpl3+ x11-style bsd-style
+                          public-domain))
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (srfi srfi-26)
+  #:use-module (ice-9 match))
+
+(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)
+    (outputs '("out"                             ; programs, libraries, headers
+               "doc"))                           ; 94 MiB of HTML docs
+    (arguments
+     '(#:tests? #f                            ; no check target available
+                #:phases
+                (alist-replace
+                 'configure
+                 (lambda* (#:key outputs #:allow-other-keys)
+                   (let ((out (assoc-ref outputs "out"))
+                         (doc (assoc-ref outputs "doc")))
+                     ;; '--docdir' is not honored, so we need to patch.
+                     (substitute* "dist/Makefile.in"
+                       (("docdir[[:blank:]]*=.*")
+                        (string-append "docdir = " doc "/share/doc/bdb")))
+
+                     (zero?
+                      (system* "./dist/configure"
+                               (string-append "--prefix=" out)
+                               (string-append "CONFIG_SHELL=" (which "bash"))
+                               (string-append "SHELL=" (which "bash"))
+
+                               ;; The compatibility mode is needed by some packages,
+                               ;; notably iproute2.
+                               "--enable-compat185"))))
+                 %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")))
+
+(define-public mysql
+  (package
+    (name "mysql")
+    (version "5.1.73")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   "http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-"
+                   version ".tar.gz"))
+             (sha256
+              (base32
+               "1dfwi4ck0vq6sdci6gz0031s7zz5lc3pddqlgm0292s00l9y5sq5"))))
+    (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)))
+
+(define-public postgresql
+  (package
+    (name "postgresql")
+    (version "9.3.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://ftp.postgresql.org/pub/source/v"
+                                  version "/postgresql-" version ".tar.gz"))
+              (sha256
+               (base32
+                "08kga00izykgvnx7hn995wc4zjqslspapaa8z63045p1ya14mr4g"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("readline" ,readline)
+       ("zlib" ,zlib)))
+    (home-page "http://www.postgresql.org/")
+    (synopsis "Powerful object-relational database system")
+    (description
+     "PostgreSQL is a powerful object-relational database system.  It is fully
+ACID compliant, has full support for foreign keys, joins, views, triggers, and
+stored procedures (in multiple languages).  It includes most SQL:2008 data
+types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and
+TIMESTAMP.  It also supports storage of binary large objects, including
+pictures, sounds, or video.")
+    (license (x11-style "file://COPYRIGHT"))))
+
+(define-public recutils
+  (package
+    (name "recutils")
+    (version "1.7")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/recutils/recutils-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0cdwa4094x3yx7vn98xykvnlp9rngvd58d19vs3vh5hrvggccg93"))))
+    (build-system gnu-build-system)
+
+    ;; Running tests in parallel leads to test failures and crashes in
+    ;; torture/utils.
+    (arguments '(#:parallel-tests? #f))
+
+    (native-inputs `(("emacs" ,emacs)
+                     ("bc" ,bc)))
+
+    ;; TODO: Add more optional inputs.
+    ;; FIXME: Our Bash doesn't have development headers (need for the 'readrec'
+    ;; built-in command), but it's not clear how to get them installed.
+    ;; See <https://lists.gnu.org/archive/html/bug-bash/2014-03/msg00125.html>.
+    (inputs `(("curl" ,curl)
+              ("libgcrypt" ,libgcrypt)
+              ("check" ,check)))
+    (synopsis "Manipulate plain text files as databases")
+    (description
+     "GNU Recutils is a set of tools and libraries for creating and
+manipulating text-based, human-editable databases.  Despite being text-based,
+databases created with Recutils carry all of the expected features such as
+unique fields, primary keys, time stamps and more. Many different field types
+are supported, as is encryption.")
+    (license gpl3+)
+    (home-page "http://www.gnu.org/software/recutils/")))
+
+(define-public sqlite
+  (package
+   (name "sqlite")
+   (version "3.8.4.3")
+   (source (origin
+            (method url-fetch)
+            ;; TODO: Download from sqlite.org once this bug :
+            ;; http://lists.gnu.org/archive/html/bug-guile/2013-01/msg00027.html
+            ;; has been fixed.
+            (uri (let ((numeric-version
+                        (match (string-split version #\.)
+                          ((first-digit other-digits ...)
+                           (string-append first-digit
+                                          (string-pad-right
+                                           (string-concatenate
+                                            (map (cut string-pad <> 2 #\0)
+                                                 other-digits))
+                                           6 #\0))))))
+                   (string-append
+                    "mirror://sourceforge/sqlite.mirror/SQLite%20" version
+                    "/sqlite-autoconf-" numeric-version ".tar.gz")))
+            (sha256
+             (base32
+              "0rcdsk5sz34w8vy0g5yhfms4saiq81i872jxx5m5sjij7bi9bsg0"))
+            (patches
+             (list (search-patch "sqlite-large-page-size-fix.patch")))))
+   (build-system gnu-build-system)
+   (home-page "http://www.sqlite.org/")
+   (synopsis "The SQLite database management system")
+   (description
+    "SQLite is a software library that implements a self-contained, serverless,
+zero-configuration, transactional SQL database engine. SQLite is the most
+widely deployed SQL database engine in the world. The source code for SQLite is
+in the public domain.")
+   (license public-domain)))
diff --git a/gnu/packages/dc.scm b/gnu/packages/dc.scm
index 0cb7c5b4f0..0e65d886d0 100644
--- a/gnu/packages/dc.scm
+++ b/gnu/packages/dc.scm
@@ -23,7 +23,7 @@
   #:use-module (gnu packages gnutls)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 84e09aaee7..f3c88c92d4 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -38,7 +38,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages texinfo)
   #:use-module (guix build-system gnu))
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index e4ef3d4871..d5a1930bbe 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -38,7 +38,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module ((guix licenses)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 442f80103a..fbf70cca55 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -30,7 +30,7 @@
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages pciutils)
-  #:use-module (gnu packages bdb)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index a9e862ac88..2a742cdc56 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -31,7 +31,7 @@
   #:use-module (gnu packages guile)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages m4)
-  #:use-module (gnu packages mysql)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
@@ -43,7 +43,6 @@
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages flex)
-  #:use-module (gnu packages bdb)
   #:use-module (gnu packages gdb)
   #:use-module (gnu packages samba)
   #:use-module ((guix licenses)
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index a20103df4f..634bc7c6bd 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -35,7 +35,7 @@
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:export (libmpdclient
diff --git a/gnu/packages/mysql.scm b/gnu/packages/mysql.scm
deleted file mode 100644
index e89770e907..0000000000
--- a/gnu/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 (gnu packages mysql)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages perl)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages openssl)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu 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.73")
-    (source (origin
-             (method url-fetch)
-             (uri (string-append
-                   "http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-"
-                   version ".tar.gz"))
-             (sha256
-              (base32
-               "1dfwi4ck0vq6sdci6gz0031s7zz5lc3pddqlgm0292s00l9y5sq5"))))
-    (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/gnu/packages/nvi.scm b/gnu/packages/nvi.scm
index 3037e5bafc..8fd736d180 100644
--- a/gnu/packages/nvi.scm
+++ b/gnu/packages/nvi.scm
@@ -18,7 +18,7 @@
 
 (define-module (gnu packages nvi)
   #:use-module (gnu packages)
-  #:use-module (gnu packages bdb)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages ncurses)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index 574f11904a..23c32488e9 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -19,7 +19,7 @@
 
 (define-module (gnu packages openldap)
   #:use-module (gnu packages autotools)
-  #:use-module (gnu packages bdb)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages gnupg)
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 66e71df284..9f35de1819 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -27,7 +27,7 @@
   #:use-module (gnu packages guile)
   #:use-module ((gnu packages compression) #:select (bzip2 gzip))
   #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages autotools)
diff --git a/gnu/packages/postgresql.scm b/gnu/packages/postgresql.scm
deleted file mode 100644
index d6b505f6a2..0000000000
--- a/gnu/packages/postgresql.scm
+++ /dev/null
@@ -1,52 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 David Thompson <davet@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 packages postgresql)
-  #:use-module ((guix licenses) #:select (x11-style))
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages readline))
-
-(define-public postgresql
-  (package
-   (name "postgresql")
-   (version "9.3.5")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "http://ftp.postgresql.org/pub/source/v"
-                                version "/postgresql-" version ".tar.gz"))
-            (sha256
-             (base32
-              "08kga00izykgvnx7hn995wc4zjqslspapaa8z63045p1ya14mr4g"))))
-   (build-system gnu-build-system)
-   (inputs
-    `(("readline" ,readline)
-      ("zlib" ,zlib)))
-   (home-page "http://www.postgresql.org/")
-   (synopsis "Powerful object-relational database system")
-   (description
-    "PostgreSQL is a powerful object-relational database system.  It is fully
-ACID compliant, has full support for foreign keys, joins, views, triggers, and
-stored procedures (in multiple languages).  It includes most SQL:2008 data
-types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and
-TIMESTAMP.  It also supports storage of binary large objects, including
-pictures, sounds, or video.")
-   (license (x11-style "file://COPYRIGHT"))))
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 81b6c956a9..3046c3b1e1 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -36,7 +36,7 @@
   #:use-module (gnu packages openssl)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages zip)
   #:use-module (gnu packages multiprecision)
   #:use-module (guix packages)
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 4d367d8ab7..ced7e90575 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -30,7 +30,7 @@
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages linux)
-  #:use-module (gnu packages mysql)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages openssl)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm
index 7634e48018..19a68be229 100644
--- a/gnu/packages/rdf.scm
+++ b/gnu/packages/rdf.scm
@@ -23,7 +23,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
-  #:use-module (gnu packages bdb)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
diff --git a/gnu/packages/recutils.scm b/gnu/packages/recutils.scm
deleted file mode 100644
index 7e78ac121d..0000000000
--- a/gnu/packages/recutils.scm
+++ /dev/null
@@ -1,66 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014 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 packages recutils)
-  #:use-module (guix licenses)
-  #:use-module (gnu packages)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (gnu packages emacs)
-  #:use-module (gnu packages check)
-  #:use-module (gnu packages algebra)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages gnupg))
-
-(define-public recutils
-  (package
-   (name "recutils")
-   (version "1.7")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "mirror://gnu/recutils/recutils-"
-                                version ".tar.gz"))
-            (sha256
-             (base32
-              "0cdwa4094x3yx7vn98xykvnlp9rngvd58d19vs3vh5hrvggccg93"))))
-   (build-system gnu-build-system)
-
-   ;; Running tests in parallel leads to test failures and crashes in
-   ;; torture/utils.
-   (arguments '(#:parallel-tests? #f))
-
-   (native-inputs `(("emacs" ,emacs)
-                    ("bc" ,bc)))
-
-   ;; TODO: Add more optional inputs.
-   ;; FIXME: Our Bash doesn't have development headers (need for the 'readrec'
-   ;; built-in command), but it's not clear how to get them installed.
-   ;; See <https://lists.gnu.org/archive/html/bug-bash/2014-03/msg00125.html>.
-   (inputs `(("curl" ,curl)
-             ("libgcrypt" ,libgcrypt)
-             ("check" ,check)))
-   (synopsis "Manipulate plain text files as databases")
-   (description
-    "GNU Recutils is a set of tools and libraries for creating and
-manipulating text-based, human-editable databases.  Despite being text-based,
-databases created with Recutils carry all of the expected features such as
-unique fields, primary keys, time stamps and more. Many different field types
-are supported, as is encryption.")
-   (license gpl3+)
-   (home-page "http://www.gnu.org/software/recutils/")))
diff --git a/gnu/packages/sqlite.scm b/gnu/packages/sqlite.scm
deleted file mode 100644
index e19160a864..0000000000
--- a/gnu/packages/sqlite.scm
+++ /dev/null
@@ -1,63 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
-;;; Copyright © 2014 Mark H Weaver <mhw@netris.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 packages sqlite)
-  #:use-module (guix licenses)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (gnu packages)
-  #:use-module (srfi srfi-26)
-  #:use-module (ice-9 match))
-
-(define-public sqlite
-  (package
-   (name "sqlite")
-   (version "3.8.4.3")
-   (source (origin
-            (method url-fetch)
-            ;; TODO: Download from sqlite.org once this bug :
-            ;; http://lists.gnu.org/archive/html/bug-guile/2013-01/msg00027.html
-            ;; has been fixed.
-            (uri (let ((numeric-version
-                        (match (string-split version #\.)
-                          ((first-digit other-digits ...)
-                           (string-append first-digit
-                                          (string-pad-right
-                                           (string-concatenate
-                                            (map (cut string-pad <> 2 #\0)
-                                                 other-digits))
-                                           6 #\0))))))
-                   (string-append
-                    "mirror://sourceforge/sqlite.mirror/SQLite%20" version
-                    "/sqlite-autoconf-" numeric-version ".tar.gz")))
-            (sha256
-             (base32
-              "0rcdsk5sz34w8vy0g5yhfms4saiq81i872jxx5m5sjij7bi9bsg0"))
-            (patches
-             (list (search-patch "sqlite-large-page-size-fix.patch")))))
-   (build-system gnu-build-system)
-   (home-page "http://www.sqlite.org/")
-   (synopsis "The SQLite database management system")
-   (description
-    "SQLite is a software library that implements a self-contained, serverless,
-zero-configuration, transactional SQL database engine. SQLite is the most
-widely deployed SQL database engine in the world. The source code for SQLite is
-in the public domain.")
-   (license public-domain)))
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 83ad35fb77..89b26e69df 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -44,7 +44,7 @@
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
-  #:use-module (gnu packages sqlite)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages emacs)