diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-01-25 17:07:21 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-01-25 17:07:21 +0100 |
commit | 200a97e64f29dc904961e99bcbc0f20fef431dd2 (patch) | |
tree | 4b8d5c809925320e74efb8c9657037ee6f00d718 /gnu/packages | |
parent | fcaa7523d4f37d5b3c4bf459784e826f98252fe8 (diff) | |
parent | 1909431c5b6413c496eb93d3d74be3e3e936951b (diff) | |
download | guix-200a97e64f29dc904961e99bcbc0f20fef431dd2.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages')
34 files changed, 1079 insertions, 95 deletions
diff --git a/gnu/packages/system.scm b/gnu/packages/admin.scm index 536234f4aa..dfbf20d56f 100644 --- a/gnu/packages/system.scm +++ b/gnu/packages/admin.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -17,7 +17,7 @@ ;;; 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 system) +(define-module (gnu packages admin) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) @@ -25,10 +25,13 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages base) #:use-module (gnu packages ncurses) + #:use-module (gnu packages readline) #:use-module (gnu packages linux) #:use-module (gnu packages guile) #:use-module (gnu packages gettext) + #:use-module (gnu packages perl) #:use-module ((gnu packages base) #:select (tar)) #:use-module ((gnu packages compression) @@ -130,21 +133,20 @@ re-executing them as necessary.") (define-public inetutils (package (name "inetutils") - (version "1.9.1") + (version "1.9.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/inetutils/inetutils-" version ".tar.gz")) (sha256 (base32 - "0azzg6njgq79byl6960kb0wihfhhzf49snslhxgvi30ribgfpa82")) - (patches - (list (search-patch "diffutils-gets-undeclared.patch"))))) + "04wrm0v7l4890mmbaawd6wjwdv08bkglgqhpz0q4dkb0l50fl8q4")))) (build-system gnu-build-system) (arguments `(;; FIXME: `tftp.sh' relies on `netstat' from utils-linux, ;; which is currently missing. #:tests? #f)) - (inputs `(("ncurses" ,ncurses))) + (inputs `(("ncurses" ,ncurses) + ("readline" ,readline))) ; for 'ftp' (home-page "http://www.gnu.org/software/inetutils/") (synopsis "Basic networking utilities") (description @@ -343,3 +345,86 @@ would need and has several interesting built-in capabilities.") "GNU Alive sends periodic pings to a server, generally to keep a connection alive.") (license gpl3+))) + +(define-public isc-dhcp + (package + (name "isc-dhcp") + (version "4.3.0a1") + (source (origin + (method url-fetch) + (uri (string-append "http://ftp.isc.org/isc/dhcp/" + version "/dhcp-" version ".tar.gz")) + (sha256 + (base32 + "0001n26m4488nl95h53wg60sywbli4d246vz2h8lpv70jlrq9q1p")))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-cons-after + 'configure 'post-configure + (lambda* (#:key outputs #:allow-other-keys) + ;; Point to the right client script, which will be + ;; installed in a later phase. + (substitute* "includes/dhcpd.h" + (("#define[[:blank:]]+_PATH_DHCLIENT_SCRIPT.*") + (let ((out (assoc-ref outputs "out"))) + (string-append "#define _PATH_DHCLIENT_SCRIPT \"" + out "/libexec/dhclient-script" + "\"\n")))) + + ;; During the 'build' phase, 'bind.tar.gz' is extracted, so + ;; we must patch shebangs in there and make sure the right + ;; shell is used. + (with-directory-excursion "bind" + (substitute* "Makefile" + (("\\./configure") + (let ((sh (which "sh"))) + (string-append "./configure CONFIG_SHELL=" + sh " SHELL=" sh)))) + + (system* "tar" "xf" "bind.tar.gz") + (for-each patch-shebang + (find-files "bind-9.9.5b1" ".*")) + (zero? (system* "tar" "cf" "bind.tar.gz" + "bind-9.9.5b1")))) + (alist-cons-after + 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Install the dhclient script for GNU/Linux and make sure + ;; if finds all the programs it needs. + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec")) + (coreutils (assoc-ref inputs "coreutils")) + (net-tools (assoc-ref inputs "net-tools")) + (sed (assoc-ref inputs "sed"))) + (substitute* "client/scripts/linux" + (("/sbin/ip") + (string-append (assoc-ref inputs "iproute") + "/sbin/ip"))) + + (mkdir-p libexec) + (copy-file "client/scripts/linux" + (string-append libexec "/dhclient-script")) + + (wrap-program (string-append libexec "/dhclient-script") + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin:" + dir "/sbin")) + (list net-tools coreutils sed)))))) + %standard-phases)))) + + (native-inputs `(("perl" ,perl))) + + ;; Even Coreutils and sed are needed here in case we're cross-compiling. + (inputs `(("coreutils" ,coreutils) + ("sed" ,sed) + ("net-tools" ,net-tools) + ("iproute" ,iproute))) + + (home-page "http://www.isc.org/products/DHCP/") + (synopsis "Dynamic Host Configuration Protocol (DHCP) tools") + (description + "ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a +reference implementation of all aspects of DHCP, through a suite of DHCP +tools: server, client, and relay agent.") + (license isc))) diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm index c1db358a3b..122daa7136 100644 --- a/gnu/packages/aspell.scm +++ b/gnu/packages/aspell.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> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,7 +21,8 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix licenses) - #:use-module (gnu packages perl)) + #:use-module (gnu packages perl) + #:use-module (gnu packages which)) (define-public aspell (package @@ -45,3 +46,71 @@ a standalone program. Notable features of Aspell include its full support of documents written in the UTF-8 encoding and its ability to use multiple dictionaries, including personal ones.") (license lgpl2.1+))) + + +;;; +;;; Dictionaries. +;;; +;;; Use 'export ASPELL_CONF="dict-dir $HOME/.guix-profile/lib/aspell"' to use them. +;;; + +(define* (aspell-dictionary dict-name full-name + #:key version sha256 (prefix "aspell6-")) + (package + (name (string-append "aspell-dict-" dict-name)) + (version version) + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/aspell/dict/" dict-name + "/" prefix dict-name "-" + version ".tar.bz2")) + (sha256 sha256))) + (build-system gnu-build-system) + (arguments + `(#:phases (alist-replace + 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure")))) + %standard-phases) + #:make-flags (let ((out (assoc-ref %outputs "out"))) + (list (string-append "dictdir=" out "/lib/aspell") + (string-append "datadir=" out "/lib/aspell"))) + #:tests? #f)) + (native-inputs `(("aspell" ,aspell) + ("which" ,which))) + (synopsis (string-append full-name " dictionary for GNU Aspell")) ; XXX: i18n + (description + "This package provides a dictionary for the GNU Aspell spell checker.") + (license gpl2+) + (home-page "http://aspell.net/"))) + + +(define-public aspell-dict-en + (aspell-dictionary "en" "English" + #:version "7.1-0" + #:sha256 + (base32 + "02ldfiny4iakgfgy4sdrzjqdzi7l1rmb6y30lv31kfy5x31g77gz"))) + +(define-public aspell-dict-eo + (aspell-dictionary "eo" "Esperanto" + #:version "2.1.20000225a-2" + #:sha256 + (base32 + "09vf0mbiicbmyb4bwb7v7lgpabnylg0wy7m3hlhl5rjdda6x3lj1"))) + +(define-public aspell-dict-es + (aspell-dictionary "es" "Spanish" + #:version "1.11-2" + #:sha256 + (base32 + "1k5g328ac1hdpp6fsg57d8md6i0aqcwlszp3gbmp5706wyhpydmd"))) + +(define-public aspell-dict-fr + (aspell-dictionary "fr" "French" + #:version "0.50-3" + #:prefix "aspell-" + #:sha256 + (base32 + "14ffy9mn5jqqpp437kannc3559bfdrpk7r36ljkzjalxa53i0hpr"))) diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm index 7cce9671d1..b223721520 100644 --- a/gnu/packages/bdw-gc.scm +++ b/gnu/packages/bdw-gc.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,7 +20,8 @@ #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system gnu)) + #:use-module (guix build-system gnu) + #:use-module (gnu packages pkg-config)) (define-public libgc (package @@ -59,6 +60,49 @@ 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))) + (license + (x11-style "http://www.hpl.hp.com/personal/Hans_Boehm/gc/license.txt")))) + +(define-public libatomic-ops + (package + (name "libatomic-ops") + (version "7.4.0") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/libatomic_ops-" + version ".tar.gz")) + (sha256 + (base32 + "0njv3n63zw6v45k68z6dz14g2hpk5p230ncwmdfkglsljb1cqx98")))) + (build-system gnu-build-system) + (outputs '("out" "debug")) + (synopsis "Accessing hardware atomic memory update operations") + (description + "This C library provides semi-portable access to hardware-provided atomic +memory update operations on a number architectures. These might allow you to +write code that does more interesting things in signal handlers, write +lock-free code, experiment with thread programming paradigms, etc.") + (home-page "http://www.hpl.hp.com/research/linux/atomic_ops/") + + ;; Some source files are X11-style, others are GPLv2+. + (license gpl2+))) + +(define-public libgc-7.4 + (package (inherit libgc) + (version "7.4.0") + (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 + "10z2nph62ilab063wygg2lv0jxlsbcf2az9w1lx01jzqj5lzry31")))) + + ;; New dependencies. + (native-inputs `(("pkg-config" ,pkg-config))) + (inputs `(("libatomic-ops" ,libatomic-ops))) + + ;; 'USE_LIBC_PRIVATES' is now the default. + (arguments '()))) diff --git a/gnu/packages/dc.scm b/gnu/packages/dc.scm new file mode 100644 index 0000000000..75ed5f4af7 --- /dev/null +++ b/gnu/packages/dc.scm @@ -0,0 +1,60 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in> +;;; +;;; 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 dc) + #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnutls) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages sqlite) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module ((guix licenses) + #:renamer (symbol-prefix-proc 'license:))) + +(define-public ncdc + (package + (name "ncdc") + (version "1.18.1") + (source + (origin + (method url-fetch) + (uri (string-append "http://dev.yorhel.nl/download/ncdc-" version + ".tar.gz")) + (sha256 (base32 + "11c6z9c3vv2vg01q02r53m28q3cx6x66j1l63f1mbk1crlqpf9fc")))) + (build-system gnu-build-system) + (inputs + `(("bzip2" ,bzip2) + ("glib" ,glib) + ("gnutls" ,gnutls) + ("ncurses" ,ncurses) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://dev.yorhel.nl/ncdc") + (synopsis + "Lightweight direct connect client with a friendly ncurses interface") + (description + "Ncdc is a client for the Direct Connect peer-to-peer protocol implemented +using ncurses. It is known for its smaller footprint and ease of use.") + (license license:x11))) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm new file mode 100644 index 0000000000..4520c2149f --- /dev/null +++ b/gnu/packages/dictionaries.scm @@ -0,0 +1,78 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 dictionaries) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system trivial) + #:use-module (gnu packages base) + #:use-module (gnu packages texinfo) + #:use-module ((gnu packages compression) + #:select (gzip))) + +(define-public vera + (package + (name "vera") + (version "1.21a") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/vera/vera-" version + ".tar.gz")) + (sha256 + (base32 + "09qz1g8js8qw735wmd8kraqbk1d1997v3px2lcc58frf1r66bp8f")))) + (build-system trivial-build-system) + (arguments + `(#:builder (begin + (use-modules (guix build utils)) + + (let* ((out (assoc-ref %outputs "out")) + (info (string-append out "/share/info")) + (html (string-append out "/share/html")) + (source (assoc-ref %build-inputs "source")) + (tar (assoc-ref %build-inputs "tar")) + (gz (assoc-ref %build-inputs "gzip")) + (texi (assoc-ref %build-inputs "texinfo"))) + (setenv "PATH" (string-append gz "/bin")) + (system* (string-append tar "/bin/tar") "xvf" source) + + (chdir (string-append "vera-" ,version)) + (mkdir-p info) + (mkdir-p html) + + ;; XXX: Use '--force' because the document is unhappy + ;; with Texinfo 5 (yes, documents can be unhappy.) + (and (zero? + (system* (string-append texi "/bin/makeinfo") + "vera.texi" "--force" "-o" + (string-append info "/vera.info"))) + (zero? + (system* (string-append texi "/bin/makeinfo") + "vera.texi" "--force" "--html" "-o" + (string-append html "/vera.html")))))) + #:modules ((guix build utils)))) + (native-inputs `(("texinfo" ,texinfo) + ("tar" ,tar) + ("gzip" ,gzip))) + (home-page "http://savannah.gnu.org/projects/vera/") + (synopsis "List of acronyms") + (description + "V.E.R.A. (Virtual Entity of Relevant Acronyms) is a list of computing +acronyms distributed as an info document.") + (license fdl1.3+))) diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm new file mode 100644 index 0000000000..f6d20097e4 --- /dev/null +++ b/gnu/packages/docbook.scm @@ -0,0 +1,100 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 docbook) + #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module ((gnu packages base) + #:select (tar)) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system trivial) + #:autoload (gnu packages zip) (unzip)) + +(define-public docbook-xml + (package + (name "docbook-xml") + (version "4.5") + (source (origin + (method url-fetch) + (uri (string-append "http://www.docbook.org/xml/" version + "/docbook-xml-" version ".zip")) + (sha256 + (base32 + "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf")))) + (build-system trivial-build-system) + (arguments + '(#:builder (begin + (use-modules (guix build utils)) + + (let* ((unzip + (string-append (assoc-ref %build-inputs "unzip") + "/bin/unzip")) + (source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (dtd (string-append out "/xml/dtd/docbook"))) + (mkdir-p dtd) + (with-directory-excursion dtd + (system* unzip source)))) + #:modules ((guix build utils)))) + (native-inputs `(("unzip" ,unzip))) + (home-page "http://docbook.org") + (synopsis "DocBook XML DTDs for document authoring") + (description + "DocBook is general purpose XML and SGML document type particularly well +suited to books and papers about computer hardware and software (though it is +by no means limited to these applications.) This package provides XML DTDs.") + (license (x11-style "" "See file headers.")))) + +(define-public docbook-xsl + (package + (name "docbook-xsl") + (version "1.72.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/docbook/docbook-xsl-" + version ".tar.bz2")) + (sha256 + (base32 + "1cnrfgqz8pc9wnlgqjch2338ad7jki6d4h6b2fhaxn1a2201df5k")))) + (build-system trivial-build-system) + (arguments + `(#:builder (begin + (use-modules (guix build utils)) + + (let* ((bzip2 (assoc-ref %build-inputs "bzip2")) + (tar (assoc-ref %build-inputs "tar")) + (source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (xsl (string-append out "/xml/xsl"))) + (setenv "PATH" (string-append bzip2 "/bin")) + (system* (string-append tar "/bin/tar") "xvf" source) + + (mkdir-p xsl) + (copy-recursively (string-append ,name "-" ,version) + (string-append xsl "/" ,name + "-" ,version)))) + #:modules ((guix build utils)))) + (native-inputs `(("bzip2" ,bzip2) + ("tar" ,tar))) + (home-page "http://docbook.org") + (synopsis "DocBook XSL style sheets for document authoring") + (description + "This package provides XSL style sheets for DocBook.") + (license (x11-style "" "See 'COPYING' file.")))) diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm new file mode 100644 index 0000000000..4c8fc3f2c7 --- /dev/null +++ b/gnu/packages/fltk.scm @@ -0,0 +1,63 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 John Darrington <jmd@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 fltk) + #:use-module (guix licenses) + #:use-module (gnu packages xorg) + #:use-module (gnu packages gl) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public fltk + (package + (name "fltk") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://fltk.org/pub/fltk/" version "/fltk-" version "-source.tar.gz")) + (sha256 + (base32 + "1974brlk723095vf8z72kazq1cbqr9a51kq6b0xda6zkjkgl8q0p")))) + (build-system gnu-build-system) + (inputs + `(("libx11" ,libx11) + ("mesa" ,mesa))) + (arguments + `(#:phases + (alist-replace + 'check + (lambda* (#:key inputs #:allow-other-keys) #t) ;; fltk does not have a + ;; check target + (alist-replace + 'configure + (lambda* (#:key outputs #:allow-other-keys #:rest args) + (let ((configure (assoc-ref %standard-phases 'configure))) + (substitute* "makeinclude.in" + (("/bin/sh") (which "sh"))) + (apply configure args))) + %standard-phases)))) + (home-page "https://www.fltk.org") + (synopsis "3D C++ GUI library") + (description "FLTK is a C++ GUI toolkit providing modern GUI functionality without the +bloat. It supports 3D graphics via OpenGL and its built-in GLUT emulation. +FLTK is designed to be small and modular enough to be statically linked, but +works fine as a shared library. FLTK also includes an excellent UI builder +called FLUID that can be used to create applications in minutes.") + (license lgpl2.0))) ; plus certain additional permissions diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 0f5ae4174d..46fbd21805 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -86,10 +86,11 @@ representation of the playing board.") (native-inputs `(("gettext" ,gnu-gettext) ("pkg-config" ,pkg-config))) (home-page "https://www.gnu.org/software/gnubik/") - (synopsis "3d Rubik's cube game.") - (description "GNUbik is a puzzle game in which you must manipulate a cube to make + (synopsis "3d Rubik's cube game") + (description + "GNUbik is a puzzle game in which you must manipulate a cube to make each of its faces have a uniform color. The game is customizable, allowing you to set the size of the cube (the default is 3x3) or to change the colors. -You may even apply photos to the faces instead of colors. The game is + You may even apply photos to the faces instead of colors. The game is scriptable with Guile.") (license gpl3+))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index ee8aed9284..796f7f0211 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -1,4 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Guy Grant <gzg@riseup.net> ;;; ;;; This file is part of GNU Guix. @@ -138,12 +139,12 @@ Polygon meshes, and Extruded polygon meshes") (propagated-inputs `(("glproto" ,glproto) ("libdrm" ,libdrm-2.4.33) + ("libx11" ,libx11) ("libxdamage" ,libxdamage) ("libxxf86vm" ,libxxf86vm))) (inputs `(("dri2proto" ,dri2proto) ("expat" ,expat) - ("libx11" ,libx11) ("libxfixes" ,libxfixes) ("libxml2" ,libxml2) ("makedepend" ,makedepend))) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 6fc283467c..0560915b24 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.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> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; @@ -106,14 +106,14 @@ shared NFS home directories.") (define glib (package (name "glib") - (version "2.38.0") + (version "2.39.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-" version ".tar.xz")) (sha256 - (base32 "0cpzqadqk6z6bmb79p04pykxc8x57rvshh33414cnk41bvgaf4vm")) + (base32 "0lqi6z47068vgh91fm59jn0kq969wf3g2q8k4m33jsb0amprg36h")) (patches (list (search-patch "glib-tests-homedir.patch") (search-patch "glib-tests-desktop.patch") (search-patch "glib-tests-prlimit.patch") @@ -155,7 +155,11 @@ shared NFS home directories.") ;; Note: `--docdir' and `--htmldir' are not honored, so work around it. #:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") - "/share/gtk-doc")))) + "/share/gtk-doc")) + + ;; In 'gio/tests', 'gdbus-test-codegen-generated.h' is #included in a + ;; file that gets compiled possibly before it has been fully generated. + #:parallel-tests? #f)) (synopsis "Thread-safe general utility library; basis of GTK+ and GNOME") (description "GLib provides data structure handling for C, portability wrappers, diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index df5b1e337c..52a434a61c 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -28,10 +28,10 @@ #:use-module (gnu packages gstreamer) #:use-module (gnu packages libjpeg) #:use-module (gnu packages libtiff) - #:use-module (gnu packages oggvorbis) #:use-module (gnu packages openssl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages video) + #:use-module (gnu packages xiph) #:use-module ((guix licenses) #:renamer (symbol-prefix-proc 'license:)) #:use-module (guix packages) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index c3f717e60e..0be19c6177 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; ;;; This file is part of GNU Guix. @@ -27,6 +27,10 @@ #:use-module (gnu packages readline) #:use-module ((gnu packages compression) #:renamer (symbol-prefix-proc 'guix:)) + #:use-module (gnu packages gtk) + #:use-module (gnu packages glib) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages ncurses) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu)) @@ -389,3 +393,28 @@ including tools for signing keys, keyring analysis, and party preparation. ;; http://packages.debian.org/changelogs/pool/main/s/signing-party/current/copyright (license gpl2) (home-page "http://pgp-tools.alioth.debian.org/"))) + +(define-public pinentry + (package + (name "pinentry") + (version "0.8.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnupg/pinentry/pinentry-" + version ".tar.bz2")) + (sha256 + (base32 + "1bd047crf7xb8g61mval8v6qww98rddlsw2dz6j8h8qbnl4hp2sn")))) + (build-system gnu-build-system) + (inputs + `(("ncurses" ,ncurses) + ("gtk+" ,gtk+-2) + ("glib" ,glib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://gnupg.org/aegypten2/") + (synopsis "GnuPG's interface to passphrase input") + (description + "Pinentry provides a console and a GTK+ GUI that allows users to +enter a passphrase when `gpg' or `gpg2' is run and needs it.") + (license gpl2+))) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 3dbb5d8429..29ec1096dc 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,7 +35,9 @@ #:use-module (gnu packages which) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system gnu)) + #:use-module (guix build-system gnu) + #:use-module (guix utils) + #:use-module (ice-9 match)) ;;; Commentary: ;;; @@ -134,7 +136,7 @@ without requiring the source code to be rewritten.") ;; The headers and/or `guile-2.0.pc' refer to these packages, so they ;; must be propagated. - ("bdw-gc" ,libgc) + ("bdw-gc" ,libgc-7.4) ("gmp" ,gmp))) (self-native-input? #t) @@ -173,7 +175,15 @@ without requiring the source code to be rewritten.") (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) + (package (inherit guile-2.0) + (location (source-properties->location (current-source-location))) + + ;; Keep using the stable libgc. + (propagated-inputs (map (match-lambda + (("bdw-gc" _) + `("bdw-gc" ,libgc)) + (x x)) + (package-propagated-inputs guile-2.0))))) ;;; diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm index dacbe31a31..1106a8aa83 100644 --- a/gnu/packages/libcanberra.scm +++ b/gnu/packages/libcanberra.scm @@ -25,8 +25,8 @@ #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages linux) - #:use-module (gnu packages oggvorbis) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages xiph)) (define-public libcanberra (package diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 826a5d7a73..5e80a5837d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; ;;; This file is part of GNU Guix. @@ -819,3 +819,24 @@ an interactive mode where the user can experiment various power management settings for cases where the operating system has not enabled these settings.") (license gpl2))) + +(define-public aumix + (package + (name "aumix") + (version "2.9.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.jpj.net/~trevor/aumix/releases/aumix-" + version ".tar.bz2")) + (sha256 + (base32 + "0a8fwyxnc5qdxff8sl2sfsbnvgh6pkij4yafiln0fxgg6bal7knj")))) + (build-system gnu-build-system) + (inputs `(("ncurses" ,ncurses))) + (home-page "http://www.jpj.net/~trevor/aumix.html") + (synopsis "Audio mixer for X and the console") + (description + "Aumix adjusts an audio mixer from X, the console, a terminal, +the command line or a script.") + (license gpl2+))) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index d46fd160ad..640d502783 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -125,7 +125,7 @@ LP/MIP solver is included in the package.") (define-public pspp (package (name "pspp") - (version "0.8.1") + (version "0.8.2") (source (origin (method url-fetch) @@ -133,8 +133,7 @@ LP/MIP solver is included in the package.") version ".tar.gz")) (sha256 (base32 - "0qhxsdbwxd3cn1shc13wxvx2lg32lp4z6sz24kv3jz7p5xfi8j7x")) - (patches (list (search-patch "pspp-tests.patch"))))) + "1w7h3dglgx0jlq1wb605b8pgfsk2vr1q2q2rj7bsajh9ihbcsixr")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index a8eeb952b9..7e324703a6 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -23,12 +23,13 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages cdrom) #:use-module (gnu packages compression) + #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) - #:use-module (gnu packages oggvorbis) #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages xiph) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu)) @@ -266,3 +267,64 @@ a few mouse clicks to convert an entire album. It supports CDDB lookups for album and track information.") (license license:gpl2) (home-page "http://sourceforge.net/projects/ripperx/"))) + +(define-public libmpcdec + (package + (name "libmpcdec") + (version "1.2.6") + (source (origin + (method url-fetch) + (uri (string-append + "http://files.musepack.net/source/libmpcdec-" + version ".tar.bz2")) + (sha256 + (base32 + "1a0jdyga1zfi4wgkg3905y6inghy3s4xfs5m4x7pal08m0llkmab")))) + (build-system gnu-build-system) + (synopsis "Decoding library for the Musepack audio format") + (description + "This library supports decoding of the Musepack (MPC) audio compression +format.") + (license license:bsd-3) + (home-page "http://musepack.net"))) + +(define-public mpc123 + (package + (name "mpc123") + (version "0.2.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/mpc123/version%20" + version "/mpc123-" version ".tar.gz")) + (sha256 + (base32 + "0sf4pns0245009z6mbxpx7kqy4kwl69bc95wz9v23wgappsvxgy1")))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-replace + 'configure + (lambda _ + (substitute* "Makefile" + (("CC[[:blank:]]*:=.*") + "CC := gcc\n"))) + (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 "mpc123" (string-append bin "/mpc123")))) + %standard-phases)) + #:tests? #f)) + + (native-inputs + `(("gettext" ,gnu-gettext))) + (inputs + `(("libao" ,ao) + ("libmpcdec" ,libmpcdec))) + (home-page "http://mpc123.sourceforge.net/") + (synopsis "Audio player for Musepack-formatted files") + (description + "mpc123 is a command-line player for files in the Musepack audio +compression format (.mpc files.)") + (license license:gpl2+))) diff --git a/gnu/packages/ncdu.scm b/gnu/packages/ncdu.scm new file mode 100644 index 0000000000..7052567530 --- /dev/null +++ b/gnu/packages/ncdu.scm @@ -0,0 +1,48 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 John Darrington <jmd@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 ncdu) + #:use-module (gnu packages) + #:use-module (gnu packages ncurses) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public ncdu + (package + (name "ncdu") + (version "1.10") + (source (origin + (method url-fetch) + (uri (string-append "http://dev.yorhel.nl/download/ncdu-" + version ".tar.gz")) + (sha256 + (base32 + "0rqc5wpqcbfqpcwxgh3jxwa0yw2py0hv0acpsf0a9g6v9144m6gm")))) + (inputs + `(("ncurses" ,ncurses))) + (build-system gnu-build-system) + (synopsis "Ncurses based disk usage analyzer") + (description "A disk usage analyzer with an ncurses interface, aimed to be +run on a remote server where you don't have an entire gaphical setup, but have +to do with a simple SSH connection. ncdu aims to be fast, simple and easy to +use, and should be able to run in any minimal POSIX-like environment with +ncurses installed.") + (license (x11-style "http://g.blicky.net/ncdu.git/plain/COPYING?id=v1.10")) + (home-page "http://dev.yorhel.nl/ncdu"))) diff --git a/gnu/packages/onc-rpc.scm b/gnu/packages/onc-rpc.scm new file mode 100644 index 0000000000..8861b0e8db --- /dev/null +++ b/gnu/packages/onc-rpc.scm @@ -0,0 +1,55 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 onc-rpc) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public libtirpc + (package + (name "libtirpc") + (version "0.2.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/libtirpc/" + version "/libtirpc-" + version ".tar.bz2")) + (sha256 + (base32 + "18a337wa4amf0k21wnimp3yzs5l3cxqndz4x3x8bm993zhfy5hs5")))) + (build-system gnu-build-system) + (arguments + '(;; Doesn't work with GNU GSS. + #:configure-flags '("--disable-gssapi") + + #:phases (alist-cons-after + 'unpack 'remote-dangling-symlink + (lambda _ + ;; Remote the dangling symlinks since it breaks the + ;; 'patch-source-shebangs' file tree traversal. + (delete-file "INSTALL")) + %standard-phases))) + (home-page "http://sourceforge.net/projects/libtirpc/") + (synopsis "Transport-independent Sun/ONC RPC implementation") + (description + "This package provides a library that implements the Sun/ONC RPC (remote +procedure calls) protocol in a transport-independent manner. It supports both +IPv4 and IPv6. ONC RPC is notably used by the network file system (NFS).") + (license bsd-3))) diff --git a/gnu/packages/patches/glib-tests-desktop.patch b/gnu/packages/patches/glib-tests-desktop.patch index 0824e68963..efa877c59e 100644 --- a/gnu/packages/patches/glib-tests-desktop.patch +++ b/gnu/packages/patches/glib-tests-desktop.patch @@ -38,12 +38,13 @@ database, the `update-desktop-database' program, which we don't provide. return g_test_run (); } ---- glib-2.37.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:28.000000000 +0200 -+++ glib-2.37.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:32.000000000 +0200 -@@ -385,6 +385,7 @@ main (int argc, + +--- glib-2.39.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:28.000000000 +0200 ++++ glib-2.39.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:32.000000000 +0200 +@@ -699,6 +699,7 @@ main (int argc, g_setenv ("XDG_DATA_HOME", basedir, TRUE); cleanup_subdirs (basedir); - + + return 0; g_test_add_func ("/desktop-app-info/delete", test_delete); g_test_add_func ("/desktop-app-info/default", test_default); @@ -54,9 +55,9 @@ database, the `update-desktop-database' program, which we don't provide. The hunk below removes tests that depend on `gdbus-testserver.py', because that script depends on python-gobject. ---- glib-2.38.0.orig/gio/tests/Makefile.in 2013-09-23 23:07:46.000000000 +0200 -+++ glib-2.38.0/gio/tests/Makefile.in 2013-09-30 21:55:35.000000000 +0200 -@@ -172,19 +172,12 @@ +--- glib-2.39.1/gio/tests/Makefile.in 2014-01-20 00:18:16.000000000 +0100 ++++ glib-2.39.1/gio/tests/Makefile.in 2014-01-20 00:18:47.000000000 +0100 +@@ -171,20 +171,13 @@ check_PROGRAMS = $(am__EXEEXT_14) @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-auth \ @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-bz627724 \ @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-close-pending \ @@ -72,10 +73,11 @@ because that script depends on python-gobject. @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-proxy-threads \ -@HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-proxy-well-known-name \ @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-test-codegen \ + @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-test-codegen-old \ -@HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gdbus-threading \ @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ gmenumodel \ @HAVE_DBUS_DAEMON_TRUE@@OS_UNIX_TRUE@ $(NULL) - + The test below depends on the availability /etc/passwd to dbus-daemon. @@ -105,3 +107,17 @@ The test dbus-appinfo is dropped as it hangs indefinitely since 2.37.5, see session_bus_up (); + +The test below fails for unknown reasons (!). + +--- glib-2.39.1/gio/tests/gsettings.c.orig 2014-01-20 00:45:04.000000000 +0100 ++++ glib-2.39.1/gio/tests/gsettings.c 2014-01-20 00:45:10.000000000 +0100 +@@ -2489,7 +2489,6 @@ main (int argc, char *argv[]) + g_test_add_func ("/gsettings/range/subprocess/high", test_range_high); + g_test_add_func ("/gsettings/range/subprocess/low", test_range_low); + g_test_add_func ("/gsettings/list-items", test_list_items); +- g_test_add_func ("/gsettings/list-schemas", test_list_schemas); + g_test_add_func ("/gsettings/mapped", test_get_mapped); + g_test_add_func ("/gsettings/get-range", test_get_range); + g_test_add_func ("/gsettings/schema-source", test_schema_source); + diff --git a/gnu/packages/patches/pspp-tests.patch b/gnu/packages/patches/pspp-tests.patch deleted file mode 100644 index 3e61b68804..0000000000 --- a/gnu/packages/patches/pspp-tests.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/tests/output/render-test.c b/tests/output/render-test.c -index 5f4c1da..e9df96c 100644 ---- a/tests/output/render-test.c -+++ b/tests/output/render-test.c -@@ -142,7 +142,7 @@ configure_drivers (int width, int length) - string_map_insert (&options, "left-margin", "0"); - string_map_insert (&options, "right-margin", "0"); - string_map_insert_nocopy (&options, xstrdup ("paper-size"), -- xasprintf ("%dx%dpt", width * 5, length * 8)); -+ xasprintf ("%dx%dpt", width * 5, length * 16)); - driver = output_driver_create (&options); - if (driver == NULL) - exit (EXIT_FAILURE); diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm new file mode 100644 index 0000000000..8bc2079f4c --- /dev/null +++ b/gnu/packages/photo.scm @@ -0,0 +1,121 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 photo) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages libusb) + #:use-module (gnu packages autotools) + #:use-module (gnu packages readline) + #:use-module (gnu packages popt) + #:use-module ((gnu packages base) #:select (tzdata))) + +(define-public libexif + (package + (name "libexif") + (version "0.6.21") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/libexif/libexif-" + version ".tar.bz2")) + (sha256 + (base32 + "06nlsibr3ylfwp28w8f5466l6drgrnydgxrm4jmxzrmk5svaxk8n")))) + (build-system gnu-build-system) + (home-page "http://libexif.sourceforge.net/") + (synopsis "Read and manipulate EXIF data in digital photographs") + (description + "The libexif C library allows applications to read, edit, and save EXIF +data as produced by digital cameras.") + (license lgpl2.1+))) + +(define-public libgphoto2 + (package + (name "libgphoto2") + (version "2.5.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/gphoto/libgphoto2-" + version ".tar.bz2")) + (sha256 + (base32 + "0f1818l1vs5fbmrihzyv3qasddbqi3r01jik5crrxddwalsi2bd3")))) + (build-system gnu-build-system) + (native-inputs `(("pkg-config" ,pkg-config))) + (inputs + `(;; ("libjpeg-turbo" ,libjpeg-turbo) + ("libtool" ,libtool) + ("libusb" ,libusb))) + (propagated-inputs + `(;; The .pc refers to libexif. + ("libexif" ,libexif))) + (home-page "http://www.gphoto.org/proj/libgphoto2/") + (synopsis "Accessing digital cameras") + (description + "This is the library backend for gphoto2. It contains the code for PTP, +MTP, and other vendor specific protocols for controlling and transferring data +from digital cameras.") + + ;; 'COPYING' says LGPLv2.1+, but in practices files are under LGPLv2+. + (license lgpl2.1+))) + +(define-public gphoto2 + (package + (name "gphoto2") + (version "2.5.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/gphoto/gphoto2-" + version ".tar.bz2")) + (sha256 + (base32 + "16c8k1cxfypg7v5h8xi87grclw7a5ayaamn548ys3zkj727r5fcf")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("readline" ,readline) + ;; ("libjpeg-turbo" ,libjpeg-turbo) + ("popt" ,popt) + ("libexif" ,libexif) + ("libgphoto2" ,libgphoto2))) + (arguments + '(#:phases (alist-cons-before + 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (find-files "tests/data" "\\.param$") + (("/usr/bin/env") + (which "env")))) + %standard-phases) + + ;; FIXME: There are 2 test failures, most likely related to the build + ;; environment. + #:tests? #f)) + + (home-page "http://www.gphoto.org/") + (synopsis "Command-line tools to access digital cameras") + (description + "Gphoto2 is a set of command line utilities for manipulating a large +number of different digital cameras. Through libgphoto2, it supports PTP, +MTP, and much more.") + + ;; Files are typically under LGPLv2+, but 'COPYING' says GPLv2+. + (license gpl2+))) diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index 91bbe2d77a..8bf48c2a89 100644 --- a/gnu/packages/pulseaudio.scm +++ b/gnu/packages/pulseaudio.scm @@ -23,18 +23,18 @@ #:renamer (symbol-prefix-proc 'l:)) #:use-module (guix build-system gnu) #:use-module (gnu packages) - #:use-module (gnu packages linux) - #:use-module (gnu packages oggvorbis) - #:use-module (gnu packages pkg-config) + #:use-module (gnu packages algebra) + #:use-module ((gnu packages autotools) #:select (libtool)) #:use-module (gnu packages avahi) + #:use-module (gnu packages check) + #:use-module (gnu packages gdbm) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages libcanberra) - #:use-module (gnu packages algebra) - #:use-module ((gnu packages autotools) #:select (libtool)) - #:use-module (gnu packages gdbm) + #:use-module (gnu packages linux) #:use-module (gnu packages m4) - #:use-module (gnu packages check) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages xiph) #:export (libsndfile libsamplerate json-c diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 86b403503b..25ae1b0721 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -28,10 +28,10 @@ #:use-module (gnu packages libtiff) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) - #:use-module (gnu packages oggvorbis) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages gl) + #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) #:export (sdl sdl2 diff --git a/gnu/packages/sqlite.scm b/gnu/packages/sqlite.scm index ae083cd74f..f688e137d5 100644 --- a/gnu/packages/sqlite.scm +++ b/gnu/packages/sqlite.scm @@ -26,7 +26,7 @@ (define-public sqlite (package (name "sqlite") - (version "3.7.15.2") + (version "3.8.2") (source (origin (method url-fetch) ;; TODO: Download from sqlite.org once this bug : @@ -34,10 +34,10 @@ ;; has been fixed. (uri (string-append "mirror://sourceforge/sqlite.mirror/SQLite%20" - version "/sqlite-autoconf-3071502.tar.gz")) + version "/sqlite-autoconf-3080200.tar.gz")) (sha256 (base32 - "135s6r5z12q56brywpxnraqbqm7bdkxs76v7dygqgjpnjyvicbbq")))) + "14pg9zlwbwsj5w7f3qr25d3nniyv82gmczwlvpj0i0ic1431v1d0")))) (build-system gnu-build-system) (home-page "http://www.sqlite.org/") (synopsis "The SQLite database management system") diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 2197388902..7589408e47 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -199,12 +199,6 @@ Additionally, various channel-specific options can be negotiated.") '(#:phases (alist-cons-before 'configure 'autoreconf (lambda* (#:key inputs #:allow-other-keys) - ;; The 'configure' script would want libssh 0.5.4, but that - ;; doesn't exist. - (substitute* "configure.ac" - (("0\\.5\\.4") - "0.5.3")) - (substitute* "src/Makefile.am" (("-lssh_threads" match) (string-append "-L" (assoc-ref inputs "libssh") @@ -244,3 +238,46 @@ programs written in GNU Guile interpreter. It is a wrapper to the underlying libssh library.") (home-page "https://github.com/artyom-poptsov/libguile-ssh") (license license:gpl3+))) + +(define-public corkscrew + (package + (name "corkscrew") + (version "2.0") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.agroman.net/corkscrew/corkscrew-" + version ".tar.gz")) + (sha256 (base32 + "1gmhas4va6gd70i2x2mpxpwpgww6413mji29mg282jms3jscn3qd")))) + (build-system gnu-build-system) + (arguments + ;; Replace configure phase as the ./configure script does not link + ;; CONFIG_SHELL and SHELL passed as parameters + '(#:phases + (alist-replace + 'configure + (lambda* (#:key outputs inputs system target + #:allow-other-keys #:rest args) + (let* ((configure (assoc-ref %standard-phases 'configure)) + (prefix (assoc-ref outputs "out")) + (bash (which "bash")) + ;; Set --build and --host flags as the provided config.guess + ;; is not able to detect them + (flags `(,(string-append "--prefix=" prefix) + ,(string-append "--build=" system) + ,(string-append "--host=" + (or target system))))) + (setenv "CONFIG_SHELL" bash) + (zero? (apply system* bash + (string-append "." "/configure") + flags)))) + %standard-phases))) + (home-page "http://www.agroman.net/corkscrew") + (synopsis "A tool for tunneling SSH through HTTP proxies") + (description + "Corkscrew allows creating TCP tunnels through HTTP proxies. WARNING: +At the moment only plain text authentication is supported, should you require +to use it with your HTTP proxy. Digest based authentication may be supported +in future and NTLM based authentication is most likey never be supported.") + (license license:gpl2+))) diff --git a/gnu/packages/uucp.scm b/gnu/packages/uucp.scm new file mode 100644 index 0000000000..b412bed9d9 --- /dev/null +++ b/gnu/packages/uucp.scm @@ -0,0 +1,56 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 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 uucp) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public uucp + (package + (name "uucp") + (version "1.07") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/uucp/uucp-" + version ".tar.gz")) + (sha256 + (base32 + "0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306")))) + (build-system gnu-build-system) + (arguments + '(#:phases (alist-replace + 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; The old 'configure' script doesn't support the arguments + ;; that we pass by default. + (setenv "CONFIG_SHELL" (which "sh")) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure" + (string-append "--prefix=" out) + (string-append "--infodir=" out + "/share/info"))))) + %standard-phases))) + (home-page "http://www.gnu.org/software/uucp/uucp.html") + (synopsis "UUCP protocol implementation") + (description + "Taylor UUCP is the GNU implementation of UUCP (Unix-to-Unix Copy), a +set of utilities for remotely transferring files, email and net news +between computers.") + (license gpl2+))) diff --git a/gnu/packages/valgrind.scm b/gnu/packages/valgrind.scm index 8eb5a48190..183adb0271 100644 --- a/gnu/packages/valgrind.scm +++ b/gnu/packages/valgrind.scm @@ -28,14 +28,14 @@ (define-public valgrind (package (name "valgrind") - (version "3.8.1") + (version "3.9.0") (source (origin (method url-fetch) (uri (string-append "http://valgrind.org/downloads/valgrind-" version ".tar.bz2")) (sha256 (base32 - "1nsqk70ry3221sd62s4f0njcrncppszs4xxjcak13lxyfq2y0fs7")) + "1w6n5qvxy2ssbczcl1c2yd2ggjn3ipay2hvpn10laly2dfh73bz6")) (patches (list (search-patch "valgrind-glibc.patch"))))) (build-system gnu-build-system) (arguments diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 82ccc1fd28..3d69eee5cd 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> -;;; 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. @@ -35,7 +35,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages sqlite) - #:use-module (gnu packages system) + #:use-module (gnu packages admin) #:use-module (gnu packages xml) #:use-module (gnu packages emacs) #:use-module (gnu packages compression) @@ -83,10 +83,12 @@ as well as the classic centralized workflow.") (base32 "156bwqqgaw65rsvbb4wih5jfg94bxyf6p16mdwf0ky3f4ln55s2i")))) (build-system gnu-build-system) + (native-inputs + `(("native-perl" ,perl) + ("gettext" ,gnu-gettext))) (inputs `(("curl" ,curl) ("expat" ,expat) - ("gettext" ,gnu-gettext) ("openssl" ,openssl) ("perl" ,perl) ("python" ,python-2) ; CAVEAT: incompatible with python-3 according to INSTALL @@ -136,7 +138,9 @@ as well as the classic centralized workflow.") (git-cit (string-append out "/libexec/git-core/git-citool")) (git-cit* (string-append gui "/libexec/git-core/git-citool")) (git-svn (string-append out "/libexec/git-core/git-svn")) - (git-svn* (string-append svn "/libexec/git-core/git-svn"))) + (git-svn* (string-append svn "/libexec/git-core/git-svn")) + (git-sm (string-append out + "/libexec/git-core/git-submodule"))) (mkdir-p (string-append gui "/bin")) (mkdir-p (string-append gui "/libexec/git-core")) (mkdir-p (string-append svn "/libexec/git-core")) @@ -163,6 +167,12 @@ as well as the classic centralized workflow.") (,(string-append (assoc-ref inputs "subversion") "/lib")))) + ;; Tell 'git-submodule' where Perl is. + (wrap-program git-sm + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "perl") + "/bin")))) + ;; Tell 'git' to look for core programs in the user's profile. ;; This allows user to install other outputs of this package and ;; have them transparently taken into account. There's a diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index b1d1270c05..369f29f7ac 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,28 +25,29 @@ #:use-module (gnu packages compression) #:use-module (gnu packages elf) #:use-module (gnu packages fontutils) - #:use-module (gnu packages oggvorbis) #:use-module (gnu packages openssl) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages xiph) #:use-module (gnu packages yasm)) (define-public ffmpeg (package (name "ffmpeg") - (version "2.1.1") + (version "2.1.3") (source (origin (method url-fetch) (uri (string-append "http://www.ffmpeg.org/releases/ffmpeg-" version ".tar.bz2")) (sha256 (base32 - "1qnspbpwa6cflsb6mkm84ay4nfx60ism6d7lgvnasidck9dmxydy")))) + "18qkdpka94rp44x17q7d2bvmw26spxf41c69nvzy31szsdzjwcqx")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) ("freetype" ,freetype) + ("opus" ,opus) ("libtheora" ,libtheora) ("libvorbis" ,libvorbis) ("patchelf" ,patchelf) @@ -107,7 +108,6 @@ ;; --enable-libopencore-amrwb enable AMR-WB decoding via libopencore-amrwb [no] ;; --enable-libopencv enable video filtering via libopencv [no] ;; --enable-libopenjpeg enable JPEG 2000 de/encoding via OpenJPEG [no] -;; --enable-libopus enable Opus decoding via libopus [no] ;; --enable-libpulse enable Pulseaudio input via libpulse [no] ;; --enable-libquvi enable quvi input via libquvi [no] ;; --enable-librtmp enable RTMP[E] support via librtmp [no] @@ -142,6 +142,7 @@ "--enable-fontconfig" ;; "--enable-gnutls" ; causes test failures "--enable-libfreetype" + "--enable-libopus" "--enable-libspeex" "--enable-libtheora" "--enable-libvorbis" diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 0b532ae4e2..4d05567a22 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -25,7 +25,7 @@ #:use-module (gnu packages gawk) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) - #:use-module (gnu packages system) ; For GNU hostname + #:use-module (gnu packages admin) ; For GNU hostname #:use-module (gnu packages tcsh)) (define-public vim diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 0d34a27c14..fb5fbf6343 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> +;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,7 +19,6 @@ (define-module (gnu packages wget) #:use-module (guix licenses) - #:use-module (gnu packages gettext) #:use-module (gnu packages gnutls) #:use-module (gnu packages perl) #:use-module (guix packages) @@ -28,7 +28,7 @@ (define-public wget (package (name "wget") - (version "1.14") + (version "1.15") (source (origin (method url-fetch) @@ -36,12 +36,12 @@ version ".tar.xz")) (sha256 (base32 - "0yqllj3nv9p3vqbdm6j4nvpjcwf1y19rq8sd966nrbd2qvvxfq8p")))) + "1yw0sk4mrs7bvga3c79rkbhxivmw8cs3b5wq3cglp1f9ai1mz2ni")))) (build-system gnu-build-system) (inputs - `(("gnutls" ,gnutls) - ("perl" ,perl) - ("gettext" ,gnu-gettext))) + `(("gnutls" ,gnutls))) + (native-inputs + `(("perl" ,perl))) (home-page "http://www.gnu.org/software/wget/") (synopsis "Non-interactive command-line utility for downloading files") (description diff --git a/gnu/packages/oggvorbis.scm b/gnu/packages/xiph.scm index 0bce731f45..0e8cb5fafc 100644 --- a/gnu/packages/oggvorbis.scm +++ b/gnu/packages/xiph.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2013 David Thompson <dthompson2@worcester.edu> +;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,7 +19,7 @@ ;;; 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 oggvorbis) +(define-module (gnu packages xiph) #:use-module (gnu packages) #:use-module (gnu packages bison) #:use-module (gnu packages compression) @@ -40,7 +41,8 @@ ao flac libkate - vorbis-tools)) + vorbis-tools + opus)) (define libogg (package @@ -155,7 +157,7 @@ stereo encoding, and voice activity detection.") ;; FIXME: Add further backends, see the summary printed after configure. ;; XXX: Should back-ends be pushed to different outputs? For instance, ;; "out" would include only the ALSA back-end, while "pulse" would - ;; contains 'lib/ao/plugins-4/libpulse.*'. + ;; contain 'lib/ao/plugins-4/libpulse.*'. (inputs `(("pkg-config" ,pkg-config) ("alsa-lib" ,alsa-lib) ("pulseaudio" ,pulseaudio))) @@ -278,3 +280,26 @@ ogginfo, to obtain information (tags, bitrate, length, etc.) about an ogg vorbis file.") (license license:gpl2) (home-page "http://xiph.org/vorbis/"))) + +(define opus + (package + (name "opus") + (version "1.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://downloads.xiph.org/releases/opus/opus-" version + ".tar.gz")) + (sha256 + (base32 + "158xprn2086arvdib3vbbygz7z6jqkw2nci7nlywzzwallap0wmr")))) + (build-system gnu-build-system) + (synopsis "highly versatile audio codec") + (description + "Opus is a totally open, royalty-free, highly versatile audio codec. Opus +is unmatched for interactive speech and music transmission over the Internet, +but is also intended for storage and streaming applications. It is +standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which +incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec.") + (license license:bsd-3) + (home-page "http://www.opus-codec.org/"))) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index dfdd82c8b8..6c17170eef 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -1257,10 +1257,12 @@ tracking.") (base32 "1gdv6559cdz1lfw73x7wsvax1fkvphmayrymprljhyyb5nwk5kkz")))) (build-system gnu-build-system) + (propagated-inputs + ;; xft.pc refers to 'xrender'. + `(("libxrender" ,libxrender))) (inputs `(("libx11" ,libx11) ("xproto" ,xproto) - ("libxrender" ,libxrender) ("freetype" ,freetype) ("fontconfig" ,fontconfig))) (native-inputs |