summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk12
-rw-r--r--gnu/packages/admin.scm12
-rw-r--r--gnu/packages/algebra.scm2
-rw-r--r--gnu/packages/base.scm1
-rw-r--r--gnu/packages/bioinformatics.scm40
-rw-r--r--gnu/packages/boost.scm2
-rw-r--r--gnu/packages/code.scm23
-rw-r--r--gnu/packages/dav.scm9
-rw-r--r--gnu/packages/education.scm69
-rw-r--r--gnu/packages/elixir.scm99
-rw-r--r--gnu/packages/emacs.scm24
-rw-r--r--gnu/packages/fish.scm65
-rw-r--r--gnu/packages/games.scm116
-rw-r--r--gnu/packages/gnome.scm2
-rw-r--r--gnu/packages/gtk.scm7
-rw-r--r--gnu/packages/kde-frameworks.scm8
-rw-r--r--gnu/packages/linux.scm10
-rw-r--r--gnu/packages/lisp.scm9
-rw-r--r--gnu/packages/maths.scm2
-rw-r--r--gnu/packages/package-management.scm18
-rw-r--r--gnu/packages/patches/elixir-disable-failing-tests.patch261
-rw-r--r--gnu/packages/patches/openssh-CVE-2015-8325.patch31
-rw-r--r--gnu/packages/patches/openssh-CVE-2016-6210-1.patch114
-rw-r--r--gnu/packages/patches/openssh-CVE-2016-6210-2.patch111
-rw-r--r--gnu/packages/patches/openssh-CVE-2016-6210-3.patch60
-rw-r--r--gnu/packages/patches/python-statsmodels-fix-tests.patch196
-rw-r--r--gnu/packages/perl.scm79
-rw-r--r--gnu/packages/python.scm22
-rw-r--r--gnu/packages/qt.scm98
-rw-r--r--gnu/packages/rc.scm72
-rw-r--r--gnu/packages/ruby.scm55
-rw-r--r--gnu/packages/shells.scm215
-rw-r--r--gnu/packages/ssh.scm11
-rw-r--r--gnu/packages/statistics.scm6
-rw-r--r--gnu/packages/tcsh.scm86
-rw-r--r--gnu/packages/telephony.scm34
-rw-r--r--gnu/packages/tex.scm2
-rw-r--r--gnu/packages/tls.scm4
-rw-r--r--gnu/packages/vim.scm2
-rw-r--r--gnu/system.scm7
-rw-r--r--gnu/system/mapped-devices.scm49
-rw-r--r--gnu/tests/base.scm12
42 files changed, 1335 insertions, 722 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 0428cd3a66..4a19e33414 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -105,6 +105,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/ed.scm \
%D%/packages/education.scm \
%D%/packages/elf.scm \
+ %D%/packages/elixir.scm \
%D%/packages/emacs.scm \
%D%/packages/enchant.scm \
%D%/packages/engineering.scm \
@@ -117,7 +118,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/file.scm \
%D%/packages/finance.scm \
%D%/packages/firmware.scm \
- %D%/packages/fish.scm \
%D%/packages/flashing-tools.scm \
%D%/packages/flex.scm \
%D%/packages/fltk.scm \
@@ -291,7 +291,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/ragel.scm \
%D%/packages/rails.scm \
%D%/packages/ratpoison.scm \
- %D%/packages/rc.scm \
%D%/packages/rdesktop.scm \
%D%/packages/rdf.scm \
%D%/packages/readline.scm \
@@ -309,6 +308,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/search.scm \
%D%/packages/serialization.scm \
%D%/packages/serveez.scm \
+ %D%/packages/shells.scm \
%D%/packages/shellutils.scm \
%D%/packages/shishi.scm \
%D%/packages/skarnet.scm \
@@ -328,7 +328,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/task-management.scm \
%D%/packages/tbb.scm \
%D%/packages/tcl.scm \
- %D%/packages/tcsh.scm \
%D%/packages/telephony.scm \
%D%/packages/terminals.scm \
%D%/packages/texinfo.scm \
@@ -481,6 +480,7 @@ dist_patch_DATA = \
%D%/packages/patches/duplicity-piped-password.patch \
%D%/packages/patches/duplicity-test_selection-tmp.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
+ %D%/packages/patches/elixir-disable-failing-tests.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
@@ -681,10 +681,6 @@ dist_patch_DATA = \
%D%/packages/patches/openexr-missing-samples.patch \
%D%/packages/patches/openjpeg-CVE-2015-6581.patch \
%D%/packages/patches/openjpeg-use-after-free-fix.patch \
- %D%/packages/patches/openssh-CVE-2015-8325.patch \
- %D%/packages/patches/openssh-CVE-2016-6210-1.patch \
- %D%/packages/patches/openssh-CVE-2016-6210-2.patch \
- %D%/packages/patches/openssh-CVE-2016-6210-3.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \
%D%/packages/patches/openssl-CVE-2016-2177.patch \
@@ -724,6 +720,7 @@ dist_patch_DATA = \
%D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \
+ %D%/packages/patches/procps-non-linux.patch \
%D%/packages/patches/pt-scotch-build-parallelism.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
@@ -743,6 +740,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-ipython-inputhook-ctype.patch \
%D%/packages/patches/python-rarfile-fix-tests.patch \
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
+ %D%/packages/patches/python-statsmodels-fix-tests.patch \
%D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-paste-remove-website-test.patch \
%D%/packages/patches/python-paste-remove-timing-test.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 195959efd1..eada7962d2 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -183,14 +183,14 @@ graphs and can export its output to different formats.")
(define-public htop
(package
(name "htop")
- (version "2.0.1")
+ (version "2.0.2")
(source (origin
(method url-fetch)
(uri (string-append "http://hisham.hm/htop/releases/"
version "/htop-" version ".tar.gz"))
(sha256
(base32
- "0rjn9ybqx5sav7z4gn18f1q6k23nmqyb6yydfgghzdznz9nn447l"))))
+ "11zlwadm6dpkrlfvf3z3xll26yyffa7qrxd1w72y1kl0rgffk6qp"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)))
@@ -981,18 +981,18 @@ network, which causes enabled computers to power on.")
(define-public dmidecode
(package
(name "dmidecode")
- (version "2.12")
+ (version "3.0")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://savannah/dmidecode/dmidecode-"
- version ".tar.bz2"))
+ version ".tar.xz"))
(sha256
(base32
- "122hgaw8mpqdfra159lfl6pyk3837giqx6vq42j64fjnbl2z6gwi"))))
+ "0iby0xfk5x3cdr0x0gxj5888jjyjhafvaq0l79civ73jjfqmphvy"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-delete 'configure %standard-phases)
+ '(#:phases (modify-phases %standard-phases (delete 'configure))
#:tests? #f ; no 'check' target
#:make-flags (list (string-append "prefix="
(assoc-ref %outputs "out")))))
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 92b4d4c27e..4fb15c6471 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -36,7 +36,7 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages flex)
#:use-module (gnu packages python)
- #:use-module (gnu packages tcsh)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages tex)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xorg)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 5edf3eb493..a476837102 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -535,6 +535,7 @@ store.")
;;
;; `--localedir' is not honored, so work around it.
;; See <http://sourceware.org/ml/libc-alpha/2013-03/msg00093.html>.
+ ;; FIXME: This hack no longer works on 2.23!
(string-append "libc_cv_localedir=/run/current-system/locale/"
,version)
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 9cdc692d07..c3ba9634ba 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -51,7 +51,9 @@
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages image)
+ #:use-module (gnu packages imagemagick)
#:use-module (gnu packages java)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
@@ -70,6 +72,7 @@
#:use-module (gnu packages ruby)
#:use-module (gnu packages statistics)
#:use-module (gnu packages tbb)
+ #:use-module (gnu packages tex)
#:use-module (gnu packages textutils)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
@@ -1603,6 +1606,33 @@ data and settings.")
(license (license:non-copyleft "file://src/COPYING"
"See src/COPYING in the distribution."))))
+(define-public discrover
+ (package
+ (name "discrover")
+ (version "1.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/maaskola/discrover/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0rah9ja4m0rl5mldd6vag9rwrivw1zrqxssfq8qx64m7961fp68k"))))
+ (build-system cmake-build-system)
+ (arguments `(#:tests? #f)) ; there are no tests
+ (inputs
+ `(("boost" ,boost)
+ ("cairo" ,cairo)))
+ (native-inputs
+ `(("texlive" ,texlive)
+ ("imagemagick" ,imagemagick)))
+ (home-page "http://dorina.mdc-berlin.de/public/rajewsky/discrover/")
+ (synopsis "Discover discriminative nucleotide sequence motifs")
+ (description "Discrover is a motif discovery method to find binding sites
+of nucleic acid binding proteins.")
+ (license license:gpl3+)))
+
(define-public eigensoft
(let ((revision "1")
(commit "b14d1e202e21e532536ff8004f0419cd5e259dc7"))
@@ -2108,6 +2138,8 @@ basic tasks but can change to using POSIX regular expressions, PCRE, hash
lookups or multi-pattern searching as required. By default fxtract looks in
the sequence of each record but can also be told to look in the header,
comment or quality sections.")
+ ;; 'util' requires SSE instructions.
+ (supported-systems '("x86_64-linux"))
(license license:expat))))
(define-public grit
@@ -4645,13 +4677,13 @@ CAGE.")
(define-public r-variantannotation
(package
(name "r-variantannotation")
- (version "1.18.1")
+ (version "1.18.6")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "VariantAnnotation" version))
(sha256
(base32
- "1jdpdnp7l81xfprba2ykfnj6i64fd84vxaax0wvrz6qahxvnjzyw"))))
+ "17q2b3wlv3250v6qm114srkarxykpd5rqmg4kzymmqsn1b8hynhv"))))
(properties
`((upstream-name . "VariantAnnotation")))
(inputs
@@ -5273,7 +5305,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
(define-public r-genomationdata
(package
(name "r-genomationdata")
- (version "1.4.0")
+ (version "1.4.2")
(source (origin
(method url-fetch)
;; We cannot use bioconductor-uri here because this tarball is
@@ -5283,7 +5315,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
"genomationData_" version ".tar.gz"))
(sha256
(base32
- "1xzq2j722d8lcn5bc3aq3yb34xwis2d0bpsf6jsq4xw1bg0bsy79"))))
+ "1zl7gg144fs7zfycsmq5492sm1bqy7l527xbc2zj04schd9wsan2"))))
(build-system r-build-system)
;; As this package provides little more than large data files, it doesn't
;; make sense to build substitutes.
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index fd8f4e80e3..8fe8c8e899 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -28,7 +28,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages python)
- #:use-module (gnu packages tcsh)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages perl))
(define-public boost
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 64df95ded6..63a9280708 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -229,6 +229,29 @@ files, but compared to grep is much faster and respects files like .gitignore,
.hgignore, etc.")
(license license:asl2.0)))
+(define-public trio
+ (package
+ (name "trio")
+ (version "1.16")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/ctrio/trio/trio-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "02pwd5m5vq7hbrffgm2na1dfc249z50yyr5jv73vdw15bd7ygl44"))))
+ (build-system gnu-build-system)
+ (home-page "http://daniel.haxx.se/projects/trio/")
+ (synopsis "Portable and extendable printf and string functions")
+ (description
+ "Trio is a set of @code{printf} and string functions designed be used by
+applications with a focus on portability or with the need for additional
+features that are not supported by the standard @code{stdio} implementation.")
+ ;; This license is very similar to the ISC license, but the wording is
+ ;; slightly different.
+ (license (license:non-copyleft
+ "http://sourceforge.net/p/ctrio/git/ci/master/tree/README"))))
+
(define-public withershins
(package
(name "withershins")
diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm
index 4aa954bd6f..7d3e43d7cd 100644
--- a/gnu/packages/dav.scm
+++ b/gnu/packages/dav.scm
@@ -52,16 +52,13 @@ clients.")
(define-public vdirsyncer
(package
(name "vdirsyncer")
- (version "0.11.2")
+ (version "0.11.3")
(source (origin
(method url-fetch)
- (uri (string-append
- "https://pypi.python.org/packages/"
- "6c/fb/20c32861134579fdce67060bf4cc074e171d30c70590137adc73924f94a6/"
- name "-" version ".tar.gz"))
+ (uri (pypi-uri name version))
(sha256
(base32
- "15isw2jhjfxi213wdj9d8mwq2m58k8bwf831qnxrjcz7j7bwy7mj"))))
+ "10majl58vdpxgbddjqgwblvl7akvvr4c2c8iaxnf3kgyh01jq6k9"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index fde1e1b342..14c1bac322 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
+;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,8 +22,17 @@
#:use-module (gnu packages)
#:use-module (gnu packages qt)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages gettext)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages sdl)
+ #:use-module (gnu packages texinfo)
+ #:use-module (gnu packages xml)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@@ -69,3 +79,62 @@
can be used to control telescopes over a serial port for tracking celestial
objects.")
(license license:gpl2+)))
+
+(define-public gcompris
+ (package
+ (name "gcompris")
+ (version "15.10")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://gcompris.net/download/gtk/src/gcompris-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "0f7wa27vvpn9ansp2aald1pajqlx5d51mvj07ba503yvl7i77fka"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags
+ ;; Use SDL mixer because otherwise GCompris would need an old version
+ ;; of Gstreamer.
+ (list "--enable-sdlmixer"
+ "LDFLAGS=-lgmodule-2.0")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'set-paths 'set-sdl-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CPATH"
+ (string-append (assoc-ref inputs "sdl-mixer")
+ "/include/SDL"))
+ #t)))))
+ (inputs
+ `(("gtk+" ,gtk+-2)
+ ("librsvg" ,librsvg)
+ ("libxml2" ,libxml2)
+ ("sdl-mixer" ,sdl-mixer)
+ ("sqlite" ,sqlite)
+ ("glib:bin" ,glib)
+ ("python" ,python)))
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("texinfo" ,texinfo)
+ ("texi2html" ,texi2html)
+ ("glib:bin" ,glib "bin")
+ ("pkg-config" ,pkg-config)))
+ (home-page "http://gcompris.net")
+ (synopsis "Educational software suite")
+ (description "GCompris is an educational software suite comprising of
+numerous activities for children aged 2 to 10. Some of the activities are
+game orientated, but nonetheless still educational. Below you can find a list
+of categories with some of the activities available in that category.
+
+@enumerate
+@item computer discovery: keyboard, mouse, different mouse gestures, ...
+@item arithmetic: table memory, enumeration, double entry table, mirror image, ...
+@item science: the canal lock, the water cycle, the submarine, electric simulation ...
+@item geography: place the country on the map
+@item games: chess, memory, connect 4, oware, sudoku ...
+@item reading: reading practice
+@item other: learn to tell time, puzzle of famous paintings, vector drawing, cartoon making, ...
+@end enumerate
+")
+ (license license:gpl3+)))
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
new file mode 100644
index 0000000000..4e430b323f
--- /dev/null
+++ b/gnu/packages/elixir.scm
@@ -0,0 +1,99 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016 Pjotr Prins <pjotr.public12@thebird.nl>
+;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
+;;;
+;;; 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 elixir)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix packages)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages erlang)
+ #:use-module (gnu packages version-control))
+
+(define-public elixir
+ (package
+ (name "elixir")
+ (version "1.3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/elixir-lang/elixir"
+ "/archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jsc6kl7f74yszcypdv3w3vhyc9qfqav8nwc41in082m0vpfy95y"))
+ ;; FIXME: Some tests had to be disabled as they fail in the
+ ;; build environment. Common failures are:
+ ;; - Mix.Shell.cmd() fails with error 130
+ ;; - The git_repo fixture cannot be found
+ ;; - Communication with spawned processes fails with EPIPE
+ ;; - Failure to copy files
+ (patches (search-patches "elixir-disable-failing-tests.patch"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:test-target "test"
+ #:make-flags (list (string-append "PREFIX="
+ (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'replace-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* '("lib/elixir/lib/system.ex"
+ "lib/mix/lib/mix/scm/git.ex")
+ (("(cmd\\(['\"])git" _ prefix)
+ (string-append prefix (which "git"))))
+ (substitute* "bin/elixir"
+ (("ERL_EXEC=\"erl\"")
+ (string-append "ERL_EXEC=" (which "erl"))))
+ #t))
+ (add-after 'unpack 'fix-or-disable-tests
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Some tests require access to a home directory.
+ (setenv "HOME" "/tmp")
+
+ ;; FIXME: These tests fail because the "git_repo" fixture does
+ ;; not exist or cannot be found.
+ (delete-file "lib/mix/test/mix/tasks/deps.git_test.exs")
+
+ ;; FIXME: Mix.Shell.cmd() always fails with error code 130.
+ (delete-file "lib/mix/test/mix/shell_test.exs")
+ #t))
+ (add-before 'build 'make-current
+ ;; The Elixir compiler checks whether or not to compile files by
+ ;; inspecting their timestamps. When the timestamp is equal to the
+ ;; epoch no compilation will be performed. Some tests fail when
+ ;; files are older than Jan 1, 2000.
+ (lambda _
+ (for-each (lambda (file)
+ (let ((recent 1400000000))
+ (utime file recent recent 0 0)))
+ (find-files "." ".*"))
+ #t))
+ (delete 'configure))))
+ (inputs
+ `(("erlang" ,erlang)
+ ("git" ,git)))
+ (home-page "http://elixir-lang.org/")
+ (synopsis "Elixir programming language")
+ (description "Elixir is a dynamic, functional language used to build
+scalable and maintainable applications. Elixir leverages the Erlang VM, known
+for running low-latency, distributed and fault-tolerant systems, while also
+being successfully used in web development and the embedded software domain.")
+ (license license:asl2.0)))
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 97c21f1bc0..825a355d63 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -2697,6 +2697,30 @@ identifiers based on their names. Each identifier gets a color based on a hash
of its name.")
(license license:bsd-2)))
+(define-public emacs-visual-fill-column
+ (package
+ (name "emacs-visual-fill-column")
+ (version "1.7")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://codeload.github.com/joostkremers/"
+ "visual-fill-column/tar.gz/" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "12vn7kdq2mpz9hgibbn1vhpf23lcm7c26k3fkz8nidhygwl5x5lq"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/joostkremers/visual-fill-column")
+ (synopsis "Fill-column for visual-line-mode")
+ (description
+ "@code{visual-fill-column-mode} is a small Emacs minor mode that mimics
+the effect of @code{fill-column} in @code{visual-line-mode}. Instead of
+wrapping lines at the window edge, which is the standard behaviour of
+@code{visual-line-mode}, it wraps lines at @code{fill-column}. If
+@code{fill-column} is too large for the window, the text is wrapped at the
+window edge.")
+ (license license:gpl3+)))
+
(define-public emacs-ido-completing-read+
(package
(name "emacs-ido-completing-read+")
diff --git a/gnu/packages/fish.scm b/gnu/packages/fish.scm
deleted file mode 100644
index a8b88e7c10..0000000000
--- a/gnu/packages/fish.scm
+++ /dev/null
@@ -1,65 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015 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 fish)
- #:use-module (guix licenses)
- #:use-module (gnu packages documentation)
- #:use-module (gnu packages ncurses)
- #:use-module (gnu packages python)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix utils)
- #:use-module (guix build-system gnu))
-
-(define-public fish
- (package
- (name "fish")
- (version "2.3.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://fishshell.com/files/"
- version "/fish-" version ".tar.gz"))
- (sha256
- (base32
- "0r46p64lg6da3v6chsa4gisvl04kd3rpy60yih8r870kbp9wm2ij"))
- (modules '((guix build utils)))
- ;; Don't try to install /etc/fish/config.fish.
- (snippet
- '(substitute* "Makefile.in"
- ((".*INSTALL.*sysconfdir.*fish.*") "")))))
- (build-system gnu-build-system)
- (native-inputs
- `(("doxygen" ,doxygen)))
- (inputs
- `(("ncurses" ,ncurses)
- ("python" ,python-wrapper))) ;for fish_config and manpage completions
- (arguments
- '(#:tests? #f ; no check target
- #:configure-flags '("--sysconfdir=/etc")))
- (synopsis "The friendly interactive shell")
- (description
- "Fish (friendly interactive shell) is a shell focused on interactive use,
-discoverability, and friendliness. Fish has very user-friendly and powerful
-tab-completion, including descriptions of every completion, completion of
-strings with wildcards, and many completions for specific commands. It also
-has extensive and discoverable help. A special help command gives access to
-all the fish documentation in your web browser. Other features include smart
-terminal handling based on terminfo, an easy to search history, and syntax
-highlighting.")
- (home-page "https://fishshell.com/")
- (license gpl2)))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 07a419a8ca..e467dbe04c 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2088,7 +2088,7 @@ is attributed to Albert Einstein.")
(source (origin
(method url-fetch)
(uri (string-append
- "http://www.hoopajoo.net/static/projects/powwow-"
+ "https://www.hoopajoo.net/static/projects/powwow-"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
@@ -2108,42 +2108,42 @@ http://lavachat.symlynx.com/unix/")
(define-public red-eclipse
(let ((data-sources
- '(("acerspyro" "0gxxr6nbac918b49x1cp72nw951hqm5m4iyi2shb1612ly384w8q")
- ("actors" "1jq9q82m6nx07nwpb5cnpdcwa33jrcgg0j2yir8zk6zpnxdmp0il")
- ("appleflap" "1cn41c6xs68l88rmphqh4rlsh6h04xnkkvklxdpqpvvr4zlsmi85")
- ("blendbrush" "0wjbgnniirl9arv274m8mpdqbbq7d09g0pq1z9dl56sazmbk5yy0")
- ("caustics" "0gxv1pqhi6c27mqi9mwqyfnzv9rq5sva1vgxhb9ljh231rmkdc15")
- ("crosshairs" "0vlyhd10mly2qnjpwvss9ani7dg3v2njpf7457ilx7fk9a3hlbkk")
- ("elyvisions" "0s0l77rd9fd09imvj05pwcz4bqrn3j8qsw8prv5pi5bqa50mbn19")
- ("fonts" "0apn8j9lf43nmnidq1f0azhrr1n896g7si4djbix1bwll6ild0mq")
- ("freezurbern" "0y60s3g8v8bl2m6pk2yr9fzl67ymv821x6l2f9hszzydlcjwlscn")
- ("john" "1lmwn0r7qpyac2qrnkv9llhsbyzqpgr27hxq2qn1rfbq12fja0ld")
- ("jojo" "0sh3ricqlqw868a0mz2n9iw7lhp650pysd2wkcdizhcmw2hlayx9")
- ("jwin" "1r459jhxx64j3vdw886ypkm6zg0yg6cr2qark54i1zdskjhp762k")
- ("luckystrike" "08xq87crcz0jq45q1g6p8h4xrm1bcqzd019zp7n0f9c3p9j6al91")
- ("maps" "1f0hqh8mbd4nzqi4hja4k5f380nszhx8igajg5ini4p9cp39x9vi")
- ("mayhem" "1hn9jp64aiz8k6p2nxyg82h2nc8fadgghzhrm26y7i4bz9xwxacm")
- ("mikeplus64" "1kj2zznxykgm3f1h1fvd8xzim5f292lyh96l2gj5km1nynzjmaap")
- ("misc" "1phmzjs5rmika3568b7jb6ywbsi40r711rhg8cbsflllcp7hdidf")
- ("nobiax" "08in9c24m2pq7x371q10ny4q3l1l3zb8m029iypy2lx9gr99i7hm")
- ("particles" "0wcd3s6vhrjknffnfqrcpkcqk1r01f1fiz6q7n4srhpdv3i4d6vm")
- ("philipk" "1s0kmap8iv5sddanrhycblskj3ywvz9xg2m11f6vnfy108palkga")
- ("projectiles" "0xdhrs9rsncd1f88s5igdbfksli7h0irg5jdbj6p2a3rgdzb3gnj")
- ("props" "1sbh3a94pmzic78bil0dvdh4fd8s6gh52f77jdram3w0gwv79x3r")
- ("skyboxes" "0hy95a6ps0fk4cq8j6pjipk8rnsjna9bm0ly2l373gbshlfg6zgi")
- ("sounds" "1pnyd7acm19sj1k1cy9hq3n3dnzzaiak7j5f0h7fikiybq5rdk7b")
- ("textures" "0gxfnc4xm0kp3pd7lhd4yy1dqq00g727h21l64nyiw2b2d6n1755")
- ("torley" "1cri5mf8ls8mvpn1x1p9hacyg9ibilaiz07gqv2hl2q8ww5xc1s6")
- ("trak" "0xyk5z59kn9ym9n5fdcrwhqig6gjcjgnrgi9rqbbai713w9vpsbq")
- ("ulukai" "0ziv9c4inmza40mas1w9dp048y6f646x00bs7kqv33hd1snbg3v3")
- ("unnamed" "0hm291k9azilnp0m04zhm52vml1rhxk1z4l74v66spbikr6s2zdx")
- ("vanities" "1qbc2v67kdrlvq10miw3dfmg3j9w9bq1hgqrzjcbph0l4gra1ndw")
- ("vegetation" "13928yw0wflcj620cmp8rqwplaw8508f3j4zi32vxida1ksz6xn0")
- ("weapons" "1ghn6nfcnd5lyl8dnj22csldvf9hrb32wjzpab4sjjz3iyv0zmr3")
- ("wicked" "0q9badvg6ix5rhl05s83kw2v6a49jpnbkqk4ls89qahaddfagi8g"))))
+ '(("acerspyro" "0s6q56i5marpm67lx70g5109lir5d6r45y45i8kbz6arc1spa7pp")
+ ("actors" "0jclmciz64i81ngxwbag8x5m8wvxkhraa9c7plix566y6rh28fv1")
+ ("appleflap" "1iz5igzdksamldhy0zh4vdjkxqhmg5c0n5g64pd3kan6h8vlbkq4")
+ ("blendbrush" "1hz3x5npp25dixcadp020xyahmd1i3ihs4cdf77iy84i9njbp7bv")
+ ("caustics" "05sbj46lrc6lkf7j6ls6jwc21n0qzxvfhfy9j7hdw482p9gvz54h")
+ ("crosshairs" "05vfxc6vm91dyf1kzig550fglgydp9szl9135q677lk4g60w5dfh")
+ ("elyvisions" "0fzdbxc40ggqmv4v1llx6sys2gjc6l1nxsbi5scpxqvm86dbddi9")
+ ("fonts" "0sbvnd96aip49dy1ja01s36p8fwwczibpic7myfw1frs110m0zgr")
+ ("freezurbern" "0k60dzzq42mfq360qf7bsf4alhy6k5gjfaidg2i1wsz5zssgmqwn")
+ ("john" "1ln9v8vfm0ggavvdyl438cy4mizzm1i87r9msx1sbja30q8f57c1")
+ ("jojo" "0cdgl82s4bm6qlv07fsq5l7anbywvvw13d0mng831yn6scf0hxb1")
+ ("jwin" "0yg5vriffyckgfjmi4487sw07hsp44b3gfw90f0v4jsgbjjm2v20")
+ ("luckystrike" "0f82caq09znsr9m08qnlbh3jl9j5w0ysga0b7d5ayqr5lpqxfk9k")
+ ("maps" "14m23h3mip12anhx7i9k5xlapwkjbw4n0l7lj1b7dfcimf71gjll")
+ ("mayhem" "0dxrr6craqi7ag724qfj9y0lb0pmwyrfpap02cndmjbbacdya0ra")
+ ("mikeplus64" "040giyrk3hdd26sxhdx37q4mk923g5v3jbrinq1fw2yfvsl6n1cs")
+ ("misc" "07xfs9hngshg27rl2vf65nyxilgnak3534h8msaan0fjgmzvlk0q")
+ ("nobiax" "1n3nghi5426r2zav4rsfih8gn37sfa85absvhdwhir8wycsvbkh6")
+ ("particles" "0yj0nykal3fgxx50278xl2zn2bfz09wbrjcvng56aa6hhfiwp8gd")
+ ("philipk" "1m3krkxq9hsknbmxg1g5sgnpcv7c8c2q7zpbizw2wb3dir8snvcj")
+ ("projectiles" "05swvalja7vzqc3dlk136n5b5kdzn3a8il6bg1h12alcaa0k9rba")
+ ("props" "1cqi6gw5s4z5pj06x6kiiilh4if0hm1yrbqys5dln23mcvw8f0ny")
+ ("skyboxes" "1mm6xl89b0l98l2h3qn99id7svmpwr940bydgjbcrvlx21yqdric")
+ ("sounds" "03q7jazf0chszyiaa9cxirbwdnckcp5fl812sj42lv0z4sqz222l")
+ ("textures" "1caqyxa9xkrwpyhac65akdv1l7nqychgz7zfivasnskk2yy6jani")
+ ("torley" "1hp8lkzqmdqyq3jn9rains32diw11gg1w3dxxlln5pc041cd7vil")
+ ("trak" "0wlczjax33q0hz75lgc4qnxlm592pcxgnbkin5qrglv59nrxzxyr")
+ ("ulukai" "0dkn7qxf92sidhsy4sm4v5z54n449a2z2w9qax5cfgzs78kb5c34")
+ ("unnamed" "0p9mmfp0vplmswyxh8qab33phcl8lzmzh3mms4f7i587hppdg6db")
+ ("vanities" "1w23853lmvj4kx5cbxvb5dk598jiqz7ml2bm0qiy7idkf5mcd2lv")
+ ("vegetation" "0jw1ljhmv62fzvklid6i8syiacmrs075cp7r3gc069bg4fg47cpn")
+ ("weapons" "1p64ry1s4y7hkgm6i2rdk2x78368359wvx8v81gg179p3sjnjkww")
+ ("wicked" "1kmpy2n15lyh50rqjspyfg3qrc72jf0n3dx2y3ian7pjfp6ldxd9"))))
(package
(name "red-eclipse")
- (version "1.5.3")
+ (version "1.5.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/red-eclipse/base"
@@ -2151,7 +2151,7 @@ http://lavachat.symlynx.com/unix/")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1y0jv5lz69zisiw8sd5z9a9v21zc83by1sx9b7dly78ngif4gc4l"))))
+ "0xl3655876i8j5nixy0yp73s0yw9nwysj68fyhqs2agmvshryy96"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -2170,7 +2170,7 @@ http://lavachat.symlynx.com/unix/")
"-Cdata"
"--transform"
(string-append "s/"
- name "-1.5.3/"
+ name "-" ,version "/"
name "/")))
(list ,@(map car data-sources)))
#t))
@@ -2179,13 +2179,15 @@ http://lavachat.symlynx.com/unix/")
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH"
(string-append (assoc-ref inputs "sdl-union")
- "/include/SDL"))
+ "/include/SDL2"))
#t))
(add-after 'install 'copy-data
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(copy-recursively "config"
(string-append out "/config"))
+ (copy-file "doc/examples/servinit.cfg"
+ (string-append out "/config/servinit.cfg"))
(copy-recursively "data"
(string-append out "/data")))
#t))
@@ -2223,7 +2225,9 @@ exec -a \"$0\" ~a/.redeclipse_server_linux-real~%"
(inputs
`(("curl" ,curl)
("glu" ,glu)
- ("sdl-union" ,(sdl-union))
+ ("sdl-union" ,(sdl-union (list sdl2
+ sdl2-image
+ sdl2-mixer)))
;; Create origin records for the many separate data packages.
,@(map (match-lambda
((name hash)
@@ -2693,3 +2697,37 @@ with the \"Stamp\" tool within Tux Paint.")
(description
"Tux Paint Config is a graphical configuration editor for Tux Paint.")
(license license:gpl2))) ;no "or later" present
+
+(define-public supertux
+ (package
+ (name "supertux")
+ (version "0.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SuperTux/supertux/releases/"
+ "download/v" version
+ "/supertux-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "10ppmy6w77lxj8bdzjahc9bidgl4qgzr9rimn15rnqay84ydx3fi"))))
+ (arguments '(#:tests? #f
+ #:configure-flags '("-DINSTALL_SUBDIR_BIN=bin")))
+ (build-system cmake-build-system)
+ (inputs `(("sdl2" ,sdl2)
+ ("sdl2-image" ,sdl2-image)
+ ("sdl2-mixer" ,sdl2-mixer)
+ ("openal" ,openal)
+ ("mesa" ,mesa)
+ ("glew" ,glew)
+ ("libvorbis" ,libvorbis)
+ ("libogg" ,libogg)
+ ("physfs" ,physfs)
+ ("curl" ,curl)
+ ("boost" ,boost)))
+ (native-inputs `(("pkg-config" ,pkg-config)))
+ (synopsis "2D platformer game")
+ (description "SuperTux is a free classic 2D jump'n run sidescroller game
+in a style similar to the original Super Mario games covered under
+the GNU GPL.")
+ (home-page "https://supertuxproject.org/")
+ (license license:gpl3+)))
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 445e94a67e..2038f8f7bc 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4423,6 +4423,8 @@ users.")
"rundir=/tmp"
"statedir=/tmp"
"install")))))))
+ (propagated-inputs
+ `(("glib" ,glib)))
(native-inputs
`(("glib:bin" ,glib "bin") ; for gdbus-codegen
("gobject-introspection" ,gobject-introspection)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index e237c6a66d..21365b9197 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1189,7 +1189,7 @@ information.")
(define-public gtk-doc
(package
(name "gtk-doc")
- (version "1.24")
+ (version "1.25")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -1197,10 +1197,11 @@ information.")
name "-" version ".tar.xz"))
(sha256
(base32
- "12xmmcnq4138dlbhmqa45wqza8dky4lf856sp80h6xjwl2g7a85l"))))
+ "0hpxcij9xx9ny3gs9p0iz4r8zslw8wqymbyababiyl7603a6x90y"))))
(build-system gnu-build-system)
(arguments
- `(#:phases
+ `(#:parallel-tests? #f
+ #:phases
(modify-phases %standard-phases
(add-before
'configure 'fix-docbook
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 74fbac2635..57727accbc 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -27,12 +27,10 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages xorg))
-(define kde-frameworks-version "5.21.0")
-
(define-public extra-cmake-modules
(package
(name "extra-cmake-modules")
- (version kde-frameworks-version)
+ (version "5.21.0")
(source
(origin
(method url-fetch)
@@ -57,7 +55,7 @@ common build settings used in software produced by the KDE community.")
(define-public kwindowsystem
(package
(name "kwindowsystem")
- (version kde-frameworks-version)
+ (version "5.21.0")
(source
(origin
(method url-fetch)
@@ -95,7 +93,7 @@ lower level classes for interaction with the X Windowing System.")
(define-public oxygen-icons
(package
(name "oxygen-icons")
- (version kde-frameworks-version)
+ (version "5.21.0")
(source
(origin
(method url-fetch)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index e65327c61d..f6352da486 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -2363,7 +2363,15 @@ MPEG-2 and audio over Linux IEEE 1394.")
(substitute* "udev-md-raid-arrays.rules"
(("/usr/bin/(readlink|basename)" all program)
(string-append coreutils "/bin/" program)))))
- (alist-delete 'configure %standard-phases))
+ (alist-cons-before
+ 'build 'remove-W-error
+ (lambda _
+ ;; We cannot build with -Werror on i686 due to a
+ ;; 'sign-compare' warning in util.c.
+ (substitute* "Makefile"
+ (("-Werror") ""))
+ #t)
+ (alist-delete 'configure %standard-phases)))
;;tests must be done as root
#:tests? #f))
(home-page "http://neil.brown.name/blog/mdadm")
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 177278080d..8ee249d397 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -328,7 +328,7 @@ statistical profiler, a code coverage tool, and many other extensions.")
(define-public ccl
(package
(name "ccl")
- (version "1.10")
+ (version "1.11")
(source #f)
(build-system gnu-build-system)
;; CCL consists of a "lisp kernel" and "heap image", both of which are
@@ -341,7 +341,8 @@ statistical profiler, a code coverage tool, and many other extensions.")
,(origin
(method url-fetch)
(uri (string-append
- "ftp://ftp.clozure.com/pub/release/1.10/ccl-" version "-"
+ "ftp://ftp.clozure.com/pub/release/" version
+ "/ccl-" version "-"
(match (%current-system)
((or "i686-linux" "x86_64-linux") "linuxx86")
("armhf-linux" "linuxarm")
@@ -353,9 +354,9 @@ statistical profiler, a code coverage tool, and many other extensions.")
(base32
(match (%current-system)
((or "i686-linux" "x86_64-linux")
- "0mr653q5px05lr11z2mk551m5g47b4wq96vbfibpp0qlc9jp58lc")
+ "0w3dmj7q9kqyra3yrf1lxclnjz151yvf5s5q8ayllvmvqbl8bs08")
("armhf-linux"
- "1py02irpmi2qz5rq3h33wfv6impf15z8i2rign6hvhlqn7s99wwh")
+ "1x487aaz2rqcb6k301sy2p39a1m4qdhg6z9p9fb76ssipqgr38b4")
(_ ""))))))))
(native-inputs
`(("m4" ,m4)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index ea7575abb2..fcea0bca0e 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -79,7 +79,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages tbb)
- #:use-module (gnu packages tcsh)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages tcl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tex)
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 5b8aabd05b..1421c7ea0a 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -67,17 +67,17 @@
arch "-linux"
"/20131110/guile-2.0.9.tar.xz")))
-(define-public guix-0.10.0
+(define-public guix-0.11.0
(package
(name "guix")
- (version "0.10.0")
+ (version "0.11.0")
(source (origin
(method url-fetch)
(uri (string-append "ftp://alpha.gnu.org/gnu/guix/guix-"
version ".tar.gz"))
(sha256
(base32
- "0d4afwy7bpqi4k4bzvwc4ga4shwssis1nrvdw53qjyg9bw1a8lbn"))))
+ "1cwrbpv4dq7aczwksmcfw9w8r2bzrb5ld9zvjcr90i804hjpcb93"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list
@@ -212,9 +212,9 @@ the Nix package manager.")
;;
;; Note: use a very short commit id; with a longer one, the limit on
;; hash-bang lines would be exceeded while running the tests.
- (let ((commit "97c8aef15de89799ac01b62dd9b91245c23eefcb"))
- (package (inherit guix-0.10.0)
- (version (string-append "0.10.0-1." (string-take commit 4)))
+ (let ((commit "4420940f20a2f36f29519f686bca7b85be6be5c9"))
+ (package (inherit guix-0.11.0)
+ (version (string-append "0.11.0-1." (string-take commit 4)))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -224,10 +224,10 @@ the Nix package manager.")
(commit commit)))
(sha256
(base32
- "0sdxq87mbvig7785gzf52ywmvl3p1q1qgsczmkzrlw988xkma1dr"))
+ "1c1rqsfc4vrclkk03aj1m8r1lzk9pfa61ax9hhhj5nw23bilsixc"))
(file-name (string-append "guix-" version "-checkout"))))
(arguments
- (substitute-keyword-arguments (package-arguments guix-0.10.0)
+ (substitute-keyword-arguments (package-arguments guix-0.11.0)
((#:configure-flags flags)
;; Set 'DOT_USER_PROGRAM' to the empty string so we don't keep a
;; reference to Graphviz, whose closure is pretty big (too big for
@@ -251,7 +251,7 @@ the Nix package manager.")
("texinfo" ,texinfo)
("graphviz" ,graphviz)
("help2man" ,help2man)
- ,@(package-native-inputs guix-0.10.0))))))
+ ,@(package-native-inputs guix-0.11.0))))))
(define-public guix guix-devel)
diff --git a/gnu/packages/patches/elixir-disable-failing-tests.patch b/gnu/packages/patches/elixir-disable-failing-tests.patch
new file mode 100644
index 0000000000..0c67562f8d
--- /dev/null
+++ b/gnu/packages/patches/elixir-disable-failing-tests.patch
@@ -0,0 +1,261 @@
+Most of these tests fail for unknown reasons when run in the chroot
+environment of a Guix build process.
+
+Common failures are:
+
+ * Mix.Shell.cmd() fails with error 130
+ * The git_repo fixture cannot be found
+ * Communication with spawned processes fails with EPIPE
+ * Failure to copy files
+
+
+diff --git a/lib/elixir/test/elixir/kernel/cli_test.exs b/lib/elixir/test/elixir/kernel/cli_test.exs
+index 3ffd56c..1232d19 100644
+--- a/lib/elixir/test/elixir/kernel/cli_test.exs
++++ b/lib/elixir/test/elixir/kernel/cli_test.exs
+@@ -39,6 +39,7 @@ end
+ defmodule Kernel.CLI.OptionParsingTest do
+ use ExUnit.Case, async: true
+
++ @tag :skip
+ test "properly parses paths" do
+ root = fixture_path("../../..") |> to_charlist
+ list = elixir('-pa "#{root}/*" -pz "#{root}/lib/*" -e "IO.inspect(:code.get_path, limit: :infinity)"')
+@@ -57,6 +58,7 @@ end
+ defmodule Kernel.CLI.AtExitTest do
+ use ExUnit.Case, async: true
+
++ @tag :skip
+ test "invokes at_exit callbacks" do
+ assert elixir(fixture_path("at_exit.exs") |> to_charlist) ==
+ 'goodbye cruel world with status 1\n'
+@@ -66,6 +68,7 @@ end
+ defmodule Kernel.CLI.ErrorTest do
+ use ExUnit.Case, async: true
+
++ @tag :skip
+ test "properly format errors" do
+ assert :string.str('** (throw) 1', elixir('-e "throw 1"')) == 0
+ assert :string.str('** (ErlangError) erlang error: 1', elixir('-e "error 1"')) == 0
+@@ -86,6 +89,7 @@ defmodule Kernel.CLI.CompileTest do
+ {:ok, [tmp_dir_path: tmp_dir_path, beam_file_path: beam_file_path, fixture: fixture]}
+ end
+
++ @tag :skip
+ test "compiles code", context do
+ assert elixirc('#{context[:fixture]} -o #{context[:tmp_dir_path]}') == ''
+ assert File.regular?(context[:beam_file_path])
+@@ -96,6 +100,7 @@ defmodule Kernel.CLI.CompileTest do
+ Code.delete_path context[:tmp_dir_path]
+ end
+
++ @tag :skip
+ test "fails on missing patterns", context do
+ output = elixirc('#{context[:fixture]} non_existing.ex -o #{context[:tmp_dir_path]}')
+ assert :string.str(output, 'non_existing.ex') > 0, "expected non_existing.ex to be mentioned"
+@@ -103,6 +108,7 @@ defmodule Kernel.CLI.CompileTest do
+ refute File.exists?(context[:beam_file_path]), "expected the sample to not be compiled"
+ end
+
++ @tag :skip
+ test "fails on missing write access to .beam file", context do
+ compilation_args = '#{context[:fixture]} -o #{context[:tmp_dir_path]}'
+
+diff --git a/lib/elixir/test/elixir/kernel/dialyzer_test.exs b/lib/elixir/test/elixir/kernel/dialyzer_test.exs
+index 801d852..40fc5bc 100644
+--- a/lib/elixir/test/elixir/kernel/dialyzer_test.exs
++++ b/lib/elixir/test/elixir/kernel/dialyzer_test.exs
+@@ -60,16 +60,19 @@ defmodule Kernel.DialyzerTest do
+ assert_dialyze_no_warnings! context
+ end
+
++ @tag :skip
+ test "no warnings on rewrites", context do
+ copy_beam! context, Dialyzer.Rewrite
+ assert_dialyze_no_warnings! context
+ end
+
++ @tag :skip
+ test "no warnings on raise", context do
+ copy_beam! context, Dialyzer.Raise
+ assert_dialyze_no_warnings! context
+ end
+
++ @tag :skip
+ test "no warnings on macrocallback", context do
+ copy_beam! context, Dialyzer.Macrocallback
+ copy_beam! context, Dialyzer.Macrocallback.Impl
+diff --git a/lib/elixir/test/elixir/system_test.exs b/lib/elixir/test/elixir/system_test.exs
+index aafa559..0f9c178 100644
+--- a/lib/elixir/test/elixir/system_test.exs
++++ b/lib/elixir/test/elixir/system_test.exs
+@@ -53,7 +53,8 @@ defmodule SystemTest do
+ assert System.endianness in [:little, :big]
+ assert System.endianness == System.compiled_endianness
+ end
+-
++
++ @tag :skip
+ test "argv/0" do
+ list = elixir('-e "IO.inspect System.argv" -- -o opt arg1 arg2 --long-opt 10')
+ {args, _} = Code.eval_string list, []
+diff --git a/lib/mix/test/mix/dep_test.exs b/lib/mix/test/mix/dep_test.exs
+index fff3351..d6ed1b3 100644
+--- a/lib/mix/test/mix/dep_test.exs
++++ b/lib/mix/test/mix/dep_test.exs
+@@ -244,6 +244,7 @@ defmodule Mix.DepTest do
+ end
+ end
+
++ @tag :skip
+ test "remote converger" do
+ deps = [{:deps_repo, "0.1.0", path: "custom/deps_repo"},
+ {:git_repo, "0.2.0", git: MixTest.Case.fixture_path("git_repo")}]
+@@ -301,6 +302,7 @@ defmodule Mix.DepTest do
+ end
+ end
+
++ @tag :skip
+ test "remote converger is not invoked if deps diverge" do
+ deps = [{:deps_repo, "0.1.0", path: "custom/deps_repo"},
+ {:git_repo, "0.2.0", git: MixTest.Case.fixture_path("git_repo"), only: :test}]
+diff --git a/lib/mix/test/mix/rebar_test.exs b/lib/mix/test/mix/rebar_test.exs
+index d2dd098..12cef15 100644
+--- a/lib/mix/test/mix/rebar_test.exs
++++ b/lib/mix/test/mix/rebar_test.exs
+@@ -120,6 +120,7 @@ defmodule Mix.RebarTest do
+ assert Enum.all?(deps, &(&1.manager == :rebar3))
+ end
+
++ @tag :skip
+ test "Rebar overrides" do
+ Mix.Project.push(RebarOverrideAsDep)
+
+@@ -150,6 +151,7 @@ defmodule Mix.RebarTest do
+ end
+ end
+
++ @tag :skip
+ test "get and compile dependencies for Rebar" do
+ Mix.Project.push(RebarAsDep)
+
+@@ -180,6 +182,7 @@ defmodule Mix.RebarTest do
+ end
+ end
+
++ @tag :skip
+ test "get and compile dependencies for rebar3" do
+ Mix.Project.push(Rebar3AsDep)
+
+diff --git a/lib/mix/test/mix/shell/io_test.exs b/lib/mix/test/mix/shell/io_test.exs
+index 9bfb6b4..d982ef3 100644
+--- a/lib/mix/test/mix/shell/io_test.exs
++++ b/lib/mix/test/mix/shell/io_test.exs
+@@ -29,6 +29,7 @@ defmodule Mix.Shell.IOTest do
+ assert capture_io("", fn -> refute yes?("Ok?") end)
+ end
+
++ @tag :skip
+ test "runs a given command" do
+ assert capture_io("", fn -> assert cmd("echo hello") == 0 end) == "hello\n"
+
+diff --git a/lib/mix/test/mix/shell/quiet_test.exs b/lib/mix/test/mix/shell/quiet_test.exs
+index 626429b..99fab35 100644
+--- a/lib/mix/test/mix/shell/quiet_test.exs
++++ b/lib/mix/test/mix/shell/quiet_test.exs
+@@ -29,6 +29,7 @@ defmodule Mix.Shell.QuietTest do
+ assert capture_io("", fn -> refute yes?("Ok?") end)
+ end
+
++ @tag :skip
+ test "runs a given command" do
+ assert capture_io("", fn -> assert cmd("echo hello") == 0 end) == ""
+
+diff --git a/lib/mix/test/mix/tasks/cmd_test.exs b/lib/mix/test/mix/tasks/cmd_test.exs
+index db4bf06..4d441f7 100644
+--- a/lib/mix/test/mix/tasks/cmd_test.exs
++++ b/lib/mix/test/mix/tasks/cmd_test.exs
+@@ -3,6 +3,7 @@ Code.require_file "../../test_helper.exs", __DIR__
+ defmodule Mix.Tasks.CmdTest do
+ use MixTest.Case
+
++ @tag :skip
+ test "runs the command for each app" do
+ in_fixture "umbrella_dep/deps/umbrella", fn ->
+ Mix.Project.in_project(:umbrella, ".", fn _ ->
+diff --git a/lib/mix/test/mix/tasks/deps.tree_test.exs b/lib/mix/test/mix/tasks/deps.tree_test.exs
+index 4f09ff3..c371997 100644
+--- a/lib/mix/test/mix/tasks/deps.tree_test.exs
++++ b/lib/mix/test/mix/tasks/deps.tree_test.exs
+@@ -29,6 +29,7 @@ defmodule Mix.Tasks.Deps.TreeTest do
+ end
+ end
+
++ @tag :skip
+ test "shows the dependency tree", context do
+ Mix.Project.push ConvergedDepsApp
+
+@@ -109,6 +110,7 @@ defmodule Mix.Tasks.Deps.TreeTest do
+ end
+ end
+
++ @tag :skip
+ test "shows the dependency tree in DOT graph format", context do
+ Mix.Project.push ConvergedDepsApp
+
+diff --git a/lib/mix/test/mix/tasks/deps_test.exs b/lib/mix/test/mix/tasks/deps_test.exs
+index b061777..cc45cf8 100644
+--- a/lib/mix/test/mix/tasks/deps_test.exs
++++ b/lib/mix/test/mix/tasks/deps_test.exs
+@@ -96,6 +96,7 @@
+ end
+ end
+
++ @tag :skip
+ test "prints list of dependencies and their lock status" do
+ Mix.Project.push DepsApp
+
+@@ -409,6 +409,7 @@ defmodule Mix.Tasks.DepsTest do
+ end
+ end
+
++ @tag :skip
+ test "fails on diverged dependencies by requirement" do
+ Mix.Project.push ConvergedDepsApp
+
+@@ -440,6 +441,7 @@ defmodule Mix.Tasks.DepsTest do
+ end
+ end
+
++ @tag :skip
+ test "fails on diverged dependencies even when optional" do
+ Mix.Project.push ConvergedDepsApp
+
+@@ -469,6 +471,7 @@ defmodule Mix.Tasks.DepsTest do
+ end
+ end
+
++ @tag :skip
+ test "works with converged dependencies" do
+ Mix.Project.push ConvergedDepsApp
+
+@@ -491,6 +494,7 @@ defmodule Mix.Tasks.DepsTest do
+ purge [GitRepo, GitRepo.Mixfile]
+ end
+
++ @tag :skip
+ test "works with overridden dependencies" do
+ Mix.Project.push OverriddenDepsApp
+
+diff --git a/lib/mix/test/mix/umbrella_test.exs b/lib/mix/test/mix/umbrella_test.exs
+index 69f9428..406668a 100644
+--- a/lib/mix/test/mix/umbrella_test.exs
++++ b/lib/mix/test/mix/umbrella_test.exs
+@@ -98,6 +98,7 @@ defmodule Mix.UmbrellaTest do
+ end
+ end
+
++ @tag :skip
+ test "loads umbrella child dependencies in all environments" do
+ in_fixture "umbrella_dep/deps/umbrella", fn ->
+ Mix.Project.in_project :umbrella, ".", fn _ ->
diff --git a/gnu/packages/patches/openssh-CVE-2015-8325.patch b/gnu/packages/patches/openssh-CVE-2015-8325.patch
deleted file mode 100644
index 8063e64ea7..0000000000
--- a/gnu/packages/patches/openssh-CVE-2015-8325.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 85bdcd7c92fe7ff133bbc4e10a65c91810f88755 Mon Sep 17 00:00:00 2001
-From: Damien Miller <djm@mindrot.org>
-Date: Wed, 13 Apr 2016 10:39:57 +1000
-Subject: ignore PAM environment vars when UseLogin=yes
-
-If PAM is configured to read user-specified environment variables
-and UseLogin=yes in sshd_config, then a hostile local user may
-attack /bin/login via LD_PRELOAD or similar environment variables
-set via PAM.
-
-CVE-2015-8325, found by Shayan Sadigh, via Colin Watson
----
- session.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/session.c b/session.c
-index 4859245..4653b09 100644
---- a/session.c
-+++ b/session.c
-@@ -1322,7 +1322,7 @@ do_setup_env(Session *s, const char *shell)
- * Pull in any environment variables that may have
- * been set by PAM.
- */
-- if (options.use_pam) {
-+ if (options.use_pam && !options.use_login) {
- char **p;
-
- p = fetch_pam_child_environment();
---
-cgit v0.11.2
-
diff --git a/gnu/packages/patches/openssh-CVE-2016-6210-1.patch b/gnu/packages/patches/openssh-CVE-2016-6210-1.patch
deleted file mode 100644
index 9b46ec12a9..0000000000
--- a/gnu/packages/patches/openssh-CVE-2016-6210-1.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From e5ef9d3942cebda819a6fd81647b51c8d87d23df Mon Sep 17 00:00:00 2001
-From: Darren Tucker <dtucker@zip.com.au>
-Date: Fri, 15 Jul 2016 13:32:45 +1000
-Subject: Determine appropriate salt for invalid users.
-
-When sshd is processing a non-PAM login for a non-existent user it uses
-the string from the fakepw structure as the salt for crypt(3)ing the
-password supplied by the client. That string has a Blowfish prefix, so on
-systems that don't understand that crypt will fail fast due to an invalid
-salt, and even on those that do it may have significantly different timing
-from the hash methods used for real accounts (eg sha512). This allows
-user enumeration by, eg, sending large password strings. This was noted
-by EddieEzra.Harari at verint.com (CVE-2016-6210).
-
-To mitigate, use the same hash algorithm that root uses for hashing
-passwords for users that do not exist on the system. ok djm@
-
-Origin: upstream, https://anongit.mindrot.org/openssh.git/commit/?id=9286875a73b2de7736b5e50692739d314cd8d9dc
-Bug-Debian: https://bugs.debian.org/831902
-Last-Update: 2016-07-22
-
-Patch-Name: CVE-2016-6210-1.patch
----
- auth-passwd.c | 12 ++++++++----
- openbsd-compat/xcrypt.c | 34 ++++++++++++++++++++++++++++++++++
- 2 files changed, 42 insertions(+), 4 deletions(-)
-
-diff --git a/auth-passwd.c b/auth-passwd.c
-index 63ccf3c..530b5d4 100644
---- a/auth-passwd.c
-+++ b/auth-passwd.c
-@@ -193,7 +193,7 @@ int
- sys_auth_passwd(Authctxt *authctxt, const char *password)
- {
- struct passwd *pw = authctxt->pw;
-- char *encrypted_password;
-+ char *encrypted_password, *salt = NULL;
-
- /* Just use the supplied fake password if authctxt is invalid */
- char *pw_password = authctxt->valid ? shadow_pw(pw) : pw->pw_passwd;
-@@ -202,9 +202,13 @@ sys_auth_passwd(Authctxt *authctxt, const char *password)
- if (strcmp(pw_password, "") == 0 && strcmp(password, "") == 0)
- return (1);
-
-- /* Encrypt the candidate password using the proper salt. */
-- encrypted_password = xcrypt(password,
-- (pw_password[0] && pw_password[1]) ? pw_password : "xx");
-+ /*
-+ * Encrypt the candidate password using the proper salt, or pass a
-+ * NULL and let xcrypt pick one.
-+ */
-+ if (authctxt->valid && pw_password[0] && pw_password[1])
-+ salt = pw_password;
-+ encrypted_password = xcrypt(password, salt);
-
- /*
- * Authentication is accepted if the encrypted passwords
-diff --git a/openbsd-compat/xcrypt.c b/openbsd-compat/xcrypt.c
-index 8577cbd..8913bb8 100644
---- a/openbsd-compat/xcrypt.c
-+++ b/openbsd-compat/xcrypt.c
-@@ -25,6 +25,7 @@
- #include "includes.h"
-
- #include <sys/types.h>
-+#include <string.h>
- #include <unistd.h>
- #include <pwd.h>
-
-@@ -62,11 +63,44 @@
- # define crypt DES_crypt
- # endif
-
-+/*
-+ * Pick an appropriate password encryption type and salt for the running
-+ * system.
-+ */
-+static const char *
-+pick_salt(void)
-+{
-+ struct passwd *pw;
-+ char *passwd, *p;
-+ size_t typelen;
-+ static char salt[32];
-+
-+ if (salt[0] != '\0')
-+ return salt;
-+ strlcpy(salt, "xx", sizeof(salt));
-+ if ((pw = getpwuid(0)) == NULL)
-+ return salt;
-+ passwd = shadow_pw(pw);
-+ if (passwd[0] != '$' || (p = strrchr(passwd + 1, '$')) == NULL)
-+ return salt; /* no $, DES */
-+ typelen = p - passwd + 1;
-+ strlcpy(salt, passwd, MIN(typelen, sizeof(salt)));
-+ explicit_bzero(passwd, strlen(passwd));
-+ return salt;
-+}
-+
- char *
- xcrypt(const char *password, const char *salt)
- {
- char *crypted;
-
-+ /*
-+ * If we don't have a salt we are encrypting a fake password for
-+ * for timing purposes. Pick an appropriate salt.
-+ */
-+ if (salt == NULL)
-+ salt = pick_salt();
-+
- # ifdef HAVE_MD5_PASSWORDS
- if (is_md5_salt(salt))
- crypted = md5_crypt(password, salt);
diff --git a/gnu/packages/patches/openssh-CVE-2016-6210-2.patch b/gnu/packages/patches/openssh-CVE-2016-6210-2.patch
deleted file mode 100644
index 1c580f90b9..0000000000
--- a/gnu/packages/patches/openssh-CVE-2016-6210-2.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From dde63f7f998ac3812a26bbb2c1b2947f24fcd060 Mon Sep 17 00:00:00 2001
-From: Darren Tucker <dtucker@zip.com.au>
-Date: Fri, 15 Jul 2016 13:49:44 +1000
-Subject: Mitigate timing of disallowed users PAM logins.
-
-When sshd decides to not allow a login (eg PermitRootLogin=no) and
-it's using PAM, it sends a fake password to PAM so that the timing for
-the failure is not noticeably different whether or not the password
-is correct. This behaviour can be detected by sending a very long
-password string which is slower to hash than the fake password.
-
-Mitigate by constructing an invalid password that is the same length
-as the one from the client and thus takes the same time to hash.
-Diff from djm@
-
-Origin: upstream, https://anongit.mindrot.org/openssh.git/commit/?id=283b97ff33ea2c641161950849931bd578de6946
-Bug-Debian: https://bugs.debian.org/831902
-Last-Update: 2016-07-22
-
-Patch-Name: CVE-2016-6210-2.patch
----
- auth-pam.c | 35 +++++++++++++++++++++++++++++++----
- 1 file changed, 31 insertions(+), 4 deletions(-)
-
-diff --git a/auth-pam.c b/auth-pam.c
-index 8425af1..abd6a5e 100644
---- a/auth-pam.c
-+++ b/auth-pam.c
-@@ -232,7 +232,6 @@ static int sshpam_account_status = -1;
- static char **sshpam_env = NULL;
- static Authctxt *sshpam_authctxt = NULL;
- static const char *sshpam_password = NULL;
--static char badpw[] = "\b\n\r\177INCORRECT";
-
- /* Some PAM implementations don't implement this */
- #ifndef HAVE_PAM_GETENVLIST
-@@ -810,12 +809,35 @@ sshpam_query(void *ctx, char **name, char **info,
- return (-1);
- }
-
-+/*
-+ * Returns a junk password of identical length to that the user supplied.
-+ * Used to mitigate timing attacks against crypt(3)/PAM stacks that
-+ * vary processing time in proportion to password length.
-+ */
-+static char *
-+fake_password(const char *wire_password)
-+{
-+ const char junk[] = "\b\n\r\177INCORRECT";
-+ char *ret = NULL;
-+ size_t i, l = wire_password != NULL ? strlen(wire_password) : 0;
-+
-+ if (l >= INT_MAX)
-+ fatal("%s: password length too long: %zu", __func__, l);
-+
-+ ret = malloc(l + 1);
-+ for (i = 0; i < l; i++)
-+ ret[i] = junk[i % (sizeof(junk) - 1)];
-+ ret[i] = '\0';
-+ return ret;
-+}
-+
- /* XXX - see also comment in auth-chall.c:verify_response */
- static int
- sshpam_respond(void *ctx, u_int num, char **resp)
- {
- Buffer buffer;
- struct pam_ctxt *ctxt = ctx;
-+ char *fake;
-
- debug2("PAM: %s entering, %u responses", __func__, num);
- switch (ctxt->pam_done) {
-@@ -836,8 +858,11 @@ sshpam_respond(void *ctx, u_int num, char **resp)
- (sshpam_authctxt->pw->pw_uid != 0 ||
- options.permit_root_login == PERMIT_YES))
- buffer_put_cstring(&buffer, *resp);
-- else
-- buffer_put_cstring(&buffer, badpw);
-+ else {
-+ fake = fake_password(*resp);
-+ buffer_put_cstring(&buffer, fake);
-+ free(fake);
-+ }
- if (ssh_msg_send(ctxt->pam_psock, PAM_AUTHTOK, &buffer) == -1) {
- buffer_free(&buffer);
- return (-1);
-@@ -1181,6 +1206,7 @@ sshpam_auth_passwd(Authctxt *authctxt, const char *password)
- {
- int flags = (options.permit_empty_passwd == 0 ?
- PAM_DISALLOW_NULL_AUTHTOK : 0);
-+ char *fake = NULL;
-
- if (!options.use_pam || sshpam_handle == NULL)
- fatal("PAM: %s called when PAM disabled or failed to "
-@@ -1196,7 +1222,7 @@ sshpam_auth_passwd(Authctxt *authctxt, const char *password)
- */
- if (!authctxt->valid || (authctxt->pw->pw_uid == 0 &&
- options.permit_root_login != PERMIT_YES))
-- sshpam_password = badpw;
-+ sshpam_password = fake = fake_password(password);
-
- sshpam_err = pam_set_item(sshpam_handle, PAM_CONV,
- (const void *)&passwd_conv);
-@@ -1206,6 +1232,7 @@ sshpam_auth_passwd(Authctxt *authctxt, const char *password)
-
- sshpam_err = pam_authenticate(sshpam_handle, flags);
- sshpam_password = NULL;
-+ free(fake);
- if (sshpam_err == PAM_SUCCESS && authctxt->valid) {
- debug("PAM: password authentication accepted for %.100s",
- authctxt->user);
diff --git a/gnu/packages/patches/openssh-CVE-2016-6210-3.patch b/gnu/packages/patches/openssh-CVE-2016-6210-3.patch
deleted file mode 100644
index 303c34ee1b..0000000000
--- a/gnu/packages/patches/openssh-CVE-2016-6210-3.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From abde8dda29c2db2405d6fbca2fe022430e2c1177 Mon Sep 17 00:00:00 2001
-From: Darren Tucker <dtucker@zip.com.au>
-Date: Thu, 21 Jul 2016 14:17:31 +1000
-Subject: Search users for one with a valid salt.
-
-If the root account is locked (eg password "!!" or "*LK*") keep looking
-until we find a user with a valid salt to use for crypting passwords of
-invalid users. ok djm@
-
-Origin: upstream, https://anongit.mindrot.org/openssh.git/commit/?id=dbf788b4d9d9490a5fff08a7b09888272bb10fcc
-Bug-Debian: https://bugs.debian.org/831902
-Last-Update: 2016-07-22
-
-Patch-Name: CVE-2016-6210-3.patch
----
- openbsd-compat/xcrypt.c | 24 +++++++++++++++---------
- 1 file changed, 15 insertions(+), 9 deletions(-)
-
-diff --git a/openbsd-compat/xcrypt.c b/openbsd-compat/xcrypt.c
-index 8913bb8..cf6a9b9 100644
---- a/openbsd-compat/xcrypt.c
-+++ b/openbsd-compat/xcrypt.c
-@@ -65,7 +65,9 @@
-
- /*
- * Pick an appropriate password encryption type and salt for the running
-- * system.
-+ * system by searching through accounts until we find one that has a valid
-+ * salt. Usually this will be root unless the root account is locked out.
-+ * If we don't find one we return a traditional DES-based salt.
- */
- static const char *
- pick_salt(void)
-@@ -78,14 +80,18 @@ pick_salt(void)
- if (salt[0] != '\0')
- return salt;
- strlcpy(salt, "xx", sizeof(salt));
-- if ((pw = getpwuid(0)) == NULL)
-- return salt;
-- passwd = shadow_pw(pw);
-- if (passwd[0] != '$' || (p = strrchr(passwd + 1, '$')) == NULL)
-- return salt; /* no $, DES */
-- typelen = p - passwd + 1;
-- strlcpy(salt, passwd, MIN(typelen, sizeof(salt)));
-- explicit_bzero(passwd, strlen(passwd));
-+ setpwent();
-+ while ((pw = getpwent()) != NULL) {
-+ passwd = shadow_pw(pw);
-+ if (passwd[0] == '$' && (p = strrchr(passwd+1, '$')) != NULL) {
-+ typelen = p - passwd + 1;
-+ strlcpy(salt, passwd, MIN(typelen, sizeof(salt)));
-+ explicit_bzero(passwd, strlen(passwd));
-+ goto out;
-+ }
-+ }
-+ out:
-+ endpwent();
- return salt;
- }
-
diff --git a/gnu/packages/patches/python-statsmodels-fix-tests.patch b/gnu/packages/patches/python-statsmodels-fix-tests.patch
new file mode 100644
index 0000000000..3315ddbd5f
--- /dev/null
+++ b/gnu/packages/patches/python-statsmodels-fix-tests.patch
@@ -0,0 +1,196 @@
+This patch fixes a couple of test failures introduced by changes to the pandas
+package. It was extracted from this pull request:
+
+https://github.com/statsmodels/statsmodels/pull/2675
+
+
+From c9ef60a7bc4407766ab9e9f12c8a6b89013046ee Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Tue, 20 Oct 2015 07:34:11 +0200
+Subject: [PATCH 1/4] MAINT: fix use of old_behavior kw for numpy.correlate.
+ Was removed in 1.10.0
+
+Numpy PR that removed it: https://github.com/numpy/numpy/pull/5991
+
+Closes gh-2667.
+---
+ statsmodels/tsa/ar_model.py | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/statsmodels/tsa/ar_model.py b/statsmodels/tsa/ar_model.py
+index 087a9e0..02984bd 100644
+--- a/statsmodels/tsa/ar_model.py
++++ b/statsmodels/tsa/ar_model.py
+@@ -261,10 +261,8 @@ def _presample_varcov(self, params):
+
+ Vpinv = np.zeros((p, p), dtype=params.dtype)
+ for i in range(1, p1):
+- Vpinv[i-1, i-1:] = np.correlate(params0, params0[:i],
+- old_behavior=False)[:-1]
+- Vpinv[i-1, i-1:] -= np.correlate(params0[-i:], params0,
+- old_behavior=False)[:-1]
++ Vpinv[i-1, i-1:] = np.correlate(params0, params0[:i],)[:-1]
++ Vpinv[i-1, i-1:] -= np.correlate(params0[-i:], params0,)[:-1]
+
+ Vpinv = Vpinv + Vpinv.T - np.diag(Vpinv.diagonal())
+ return Vpinv
+
+From f1dc8979b09bc1736149993f895943b3158ee2db Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Wed, 21 Oct 2015 22:05:52 +0200
+Subject: [PATCH 2/4] MAINT: fix graphics module for changes in recent pandas
+ versions.
+
+---
+ statsmodels/graphics/tests/test_mosaicplot.py | 2 +-
+ statsmodels/graphics/tests/test_tsaplots.py | 6 +++---
+ statsmodels/graphics/tsaplots.py | 2 +-
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/statsmodels/graphics/tests/test_mosaicplot.py b/statsmodels/graphics/tests/test_mosaicplot.py
+index cb9bbbe..e41020e 100644
+--- a/statsmodels/graphics/tests/test_mosaicplot.py
++++ b/statsmodels/graphics/tests/test_mosaicplot.py
+@@ -113,7 +113,7 @@ def test_mosaic():
+ # sort by the marriage quality and give meaningful name
+ # [rate_marriage, age, yrs_married, children,
+ # religious, educ, occupation, occupation_husb]
+- datas = datas.sort(['rate_marriage', 'religious'])
++ datas = datas.sort_values(by=['rate_marriage', 'religious'])
+ num_to_desc = {1: 'awful', 2: 'bad', 3: 'intermediate',
+ 4: 'good', 5: 'wonderful'}
+ datas['rate_marriage'] = datas['rate_marriage'].map(num_to_desc)
+diff --git a/statsmodels/graphics/tests/test_tsaplots.py b/statsmodels/graphics/tests/test_tsaplots.py
+index 511f18f..365be82 100644
+--- a/statsmodels/graphics/tests/test_tsaplots.py
++++ b/statsmodels/graphics/tests/test_tsaplots.py
+@@ -1,4 +1,4 @@
+-from statsmodels.compat.python import lmap, lzip, map
++from statsmodels.compat.python import lmap, map
+ import numpy as np
+ import pandas as pd
+ from numpy.testing import dec
+@@ -51,8 +51,8 @@ def test_plot_month():
+ dta = sm.datasets.elnino.load_pandas().data
+ dta['YEAR'] = dta.YEAR.astype(int).apply(str)
+ dta = dta.set_index('YEAR').T.unstack()
+- dates = lmap(lambda x : pd.datetools.parse('1 '+' '.join(x)),
+- dta.index.values)
++ dates = lmap(lambda x : pd.datetools.parse_time_string('1 '+' '.join(x))[0],
++ dta.index.values)
+
+ # test dates argument
+ fig = month_plot(dta.values, dates=dates, ylabel='el nino')
+diff --git a/statsmodels/graphics/tsaplots.py b/statsmodels/graphics/tsaplots.py
+index 3d04692..94626c9 100644
+--- a/statsmodels/graphics/tsaplots.py
++++ b/statsmodels/graphics/tsaplots.py
+@@ -200,7 +200,7 @@ def seasonal_plot(grouped_x, xticklabels, ylabel=None, ax=None):
+ ticks = []
+ for season, df in grouped_x:
+ df = df.copy() # or sort balks for series. may be better way
+- df.sort()
++ df.sort_values(inplace=True)
+ nobs = len(df)
+ x_plot = np.arange(start, start + nobs)
+ ticks.append(x_plot.mean())
+
+From 4cfbef6af137629c6953f1f025d9cfc781874256 Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Wed, 21 Oct 2015 22:15:25 +0200
+Subject: [PATCH 3/4] MAINT: work around pandas breaking backwards compat for
+ pandas.version
+
+---
+ setup.py | 5 ++++-
+ statsmodels/tools/testing.py | 6 ++----
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 0002840..74aefb8 100644
+--- a/setup.py
++++ b/setup.py
+@@ -134,7 +134,10 @@ def check_dependency_versions(min_versions):
+ (spversion, min_versions['scipy']))
+
+ try:
+- from pandas.version import short_version as pversion
++ import pandas
++ #FIXME: this will break for pandas 1.0.0. Needs elaborate parsing now,
++ # due to pandas removing version.short_version
++ pversion = pandas.__version__[:6]
+ except ImportError:
+ install_requires.append('pandas')
+ else:
+diff --git a/statsmodels/tools/testing.py b/statsmodels/tools/testing.py
+index e207e44..643f79f 100644
+--- a/statsmodels/tools/testing.py
++++ b/statsmodels/tools/testing.py
+@@ -16,10 +16,8 @@ def strip_rc(version):
+
+
+ def is_pandas_min_version(min_version):
+- '''check whether pandas is at least min_version
+- '''
+- from pandas.version import short_version as pversion
+- return StrictVersion(strip_rc(pversion)) >= min_version
++ '''check whether pandas is at least min_version '''
++ return StrictVersion((pandas.__version__[:6])) >= min_version
+
+
+ # local copies, all unchanged
+
+From c894c3f4882d570efb517950069d83afa9794db8 Mon Sep 17 00:00:00 2001
+From: Ralf Gommers <ralf.gommers@gmail.com>
+Date: Mon, 26 Oct 2015 20:47:51 +0100
+Subject: [PATCH 4/4] BUG: fix use of Series.sort_values for older pandas.
+
+Some failing tests in the previous commits because older ``pandas`` versions
+don't have ``Series.sort_values``. That method was only added in pandas 0.17,
+in https://github.com/pydata/pandas/pull/10726
+---
+ statsmodels/graphics/tests/test_mosaicplot.py | 6 +++++-
+ statsmodels/graphics/tsaplots.py | 6 +++++-
+ 2 files changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/statsmodels/graphics/tests/test_mosaicplot.py b/statsmodels/graphics/tests/test_mosaicplot.py
+index e41020e..2a873e7 100644
+--- a/statsmodels/graphics/tests/test_mosaicplot.py
++++ b/statsmodels/graphics/tests/test_mosaicplot.py
+@@ -113,7 +113,11 @@ def test_mosaic():
+ # sort by the marriage quality and give meaningful name
+ # [rate_marriage, age, yrs_married, children,
+ # religious, educ, occupation, occupation_husb]
+- datas = datas.sort_values(by=['rate_marriage', 'religious'])
++ if pandas.__version__ < '0.17.0':
++ datas = datas.sort(['rate_marriage', 'religious'])
++ else:
++ datas = datas.sort_values(by=['rate_marriage', 'religious'])
++
+ num_to_desc = {1: 'awful', 2: 'bad', 3: 'intermediate',
+ 4: 'good', 5: 'wonderful'}
+ datas['rate_marriage'] = datas['rate_marriage'].map(num_to_desc)
+diff --git a/statsmodels/graphics/tsaplots.py b/statsmodels/graphics/tsaplots.py
+index 94626c9..217724f 100644
+--- a/statsmodels/graphics/tsaplots.py
++++ b/statsmodels/graphics/tsaplots.py
+@@ -2,6 +2,7 @@
+
+
+ import numpy as np
++import pandas
+
+ from statsmodels.graphics import utils
+ from statsmodels.tsa.stattools import acf, pacf
+@@ -200,7 +201,10 @@ def seasonal_plot(grouped_x, xticklabels, ylabel=None, ax=None):
+ ticks = []
+ for season, df in grouped_x:
+ df = df.copy() # or sort balks for series. may be better way
+- df.sort_values(inplace=True)
++ if pandas.__version__ < '0.17.0':
++ df.sort()
++ else:
++ df.sort_values(inplace=True)
+ nobs = len(df)
+ x_plot = np.arange(start, start + nobs)
+ ticks.append(x_plot.mean())
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index 52734f5624..4423c77bbd 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -2958,6 +2958,85 @@ either uses the first module it finds or throws an error.")
versa.")
(license (package-license perl))))
+(define-public perl-log-any
+ (package
+ (name "perl-log-any")
+ (version "1.040")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/Log-Any-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0r1q7cclgwl24gzdnjzvd8y0r7j17dngjk492x35w198zhdj2ncp"))))
+ (build-system perl-build-system)
+ (home-page "http://search.cpan.org/dist/Log-Any")
+ (synopsis "Bringing loggers and listeners together")
+ (description "@code{Log::Any} provides a standard log production API for
+modules. @code{Log::Any::Adapter} allows applications to choose the mechanism
+for log consumption, whether screen, file or another logging mechanism like
+@code{Log::Dispatch} or @code{Log::Log4perl}.
+
+A CPAN module uses @code{Log::Any} to get a log producer object. An
+application, in turn, may choose one or more logging mechanisms via
+@code{Log::Any::Adapter}, or none at all.
+
+@code{Log::Any} has a very tiny footprint and no dependencies beyond Perl
+itself, which makes it appropriate for even small CPAN modules to use. It
+defaults to 'null' logging activity, so a module can safely log without
+worrying about whether the application has chosen (or will ever choose) a
+logging mechanism.")
+ (license (package-license perl))))
+
+(define-public perl-log-any-adapter-log4perl
+ (package
+ (name "perl-log-any-adapter-log4perl")
+ (version "0.08")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DA/DAGOLDEN/Log-Any-Adapter-Log4perl-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0xf4fnrsznvg0hf36q481124ja1hp3lybki1xjgnk82z9990jmxn"))))
+ (build-system perl-build-system)
+ (propagated-inputs
+ `(("perl-log-any" ,perl-log-any)
+ ("perl-log-log4perl" ,perl-log-log4perl)))
+ (home-page
+ "http://search.cpan.org/dist/Log-Any-Adapter-Log4perl")
+ (synopsis "Log::Any adapter for Log::Log4perl")
+ (description "@code{Log::Any::Adapter::Log4perl} provides a
+@code{Log::Any} adapter using @code{Log::Log4perl} for logging.")
+ (license (package-license perl))))
+
+(define-public perl-log-log4perl
+ (package
+ (name "perl-log-log4perl")
+ (version "1.47")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/M/MS/MSCHILLI/Log-Log4perl-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0vxraq9navx5mgf8y8g6l5rbl3dv2ml8bishka5m69hj07nxs0ch"))))
+ (build-system perl-build-system)
+ (home-page
+ "http://search.cpan.org/dist/Log-Log4perl")
+ (synopsis "Log4j implementation for Perl")
+ (description "@code{Log::Log4perl} lets you remote-control and fine-tune
+the logging behaviour of your system from the outside. It implements the
+widely popular (Java-based) Log4j logging package in pure Perl.")
+ (license (package-license perl))))
+
(define-public perl-log-report-optional
(package
(name "perl-log-report-optional")
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 5ba92b2aa3..470bad84ff 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -6936,13 +6936,13 @@ WebSocket usage in Python programs.")
(define-public python-atomicwrites
(package
(name "python-atomicwrites")
- (version "1.0.0")
+ (version "1.1.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "atomicwrites" version))
(sha256
(base32
- "019fa4771q7fb1167yfbh6msdzcqini6v7i59rmf72mzdjd7x5qv"))))
+ "1s01dci8arsl9d9vr5nz1fk9znldp1z3l4yl43f0c27z12b8yxl0"))))
(build-system python-build-system)
(synopsis "Atomic file writes in Python")
(description "Library for atomic file writes using platform dependent tools
@@ -8836,12 +8836,7 @@ LDFLAGS and parse the output to build extensions with setup.py.")
"126s53fkpx04f33a829yqqk8fj4png3qwg4m66cvlmhmwc8zihb4"))))
(build-system python-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; python setup.py test does not work as of 0.98
- ;; but there is only the one test file
- (replace 'check
- (lambda _ (zero? (system* "python" "test_bz2file.py")))))))
+ `(#:tests? #f)) ; Tests use deprecated python modules.
(home-page "https://github.com/nvawda/bz2file")
(synopsis "Read and write bzip2-compressed files")
(description
@@ -8858,7 +8853,16 @@ development version of CPython that are not available in older releases.")
(package
(inherit base)
(native-inputs
- `(("python2-setuptools" ,python2-setuptools))))))
+ `(("python2-setuptools" ,python2-setuptools)))
+ (arguments
+ `(#:python ,python-2
+ #:phases
+ (modify-phases %standard-phases
+ ;; 'python setup.py test' does not work as of 0.98.
+ ;; There is only the one test file, so we run it directly.
+ (replace 'check
+ (lambda _ (zero? (system* "python"
+ "test_bz2file.py"))))))))))
(define-public python-cysignals
(package
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index f2465509ec..9f59cf684d 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -60,7 +60,7 @@
(define-public qt
(package
(name "qt")
- (version "5.5.1")
+ (version "5.6.1-1")
(source (origin
(method url-fetch)
(uri
@@ -72,7 +72,7 @@
version ".tar.xz"))
(sha256
(base32
- "0615cn4n3n78v48lnmapqz2jizm2pzrjwvsjlnsf4awrsiiqw0kg"))
+ "1nrn2wivjwdxc9q03gpsi336gcl9l2axi0xjbzsha5v6akmsf26f"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -151,46 +151,53 @@
;; A more structural fix is needed.
#:parallel-build? #f
#:phases
- (alist-replace
- 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* '("configure" "qtbase/configure")
- (("/bin/pwd") (which "pwd")))
- (substitute* "qtbase/src/corelib/global/global.pri"
- (("/bin/ls") (which "ls")))
- ;; do not pass "--enable-fast-install", which makes the
- ;; configure process fail
- (zero? (system*
- "./configure"
- "-verbose"
- "-prefix" out
- "-opensource"
- "-confirm-license"
- ;; Most "-system-..." are automatic, but some use
- ;; the bundled copy by default.
- "-system-sqlite"
- "-system-harfbuzz"
- ;; explicitly link with openssl instead of dlopening it
- "-openssl-linked"
- ;; explicitly link with dbus instead of dlopening it
- "-dbus-linked"
- ;; drop special machine instructions not supported
- ;; on all instances of the target
- ,@(if (string-prefix? "x86_64"
- (or (%current-target-system)
- (%current-system)))
- '()
- '("-no-sse2"))
- "-no-sse3"
- "-no-ssse3"
- "-no-sse4.1"
- "-no-sse4.2"
- "-no-avx"
- "-no-avx2"
- "-no-mips_dsp"
- "-no-mips_dspr2"))))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-after 'configure 'patch-bin-sh
+ (lambda _
+ (substitute* '("qtbase/config.status"
+ "qtbase/configure"
+ "qtbase/mkspecs/features/qt_functions.prf"
+ "qtbase/qmake/library/qmakebuiltins.cpp")
+ (("/bin/sh") (which "sh")))
+ #t))
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* '("configure" "qtbase/configure")
+ (("/bin/pwd") (which "pwd")))
+ (substitute* "qtbase/src/corelib/global/global.pri"
+ (("/bin/ls") (which "ls")))
+ ;; do not pass "--enable-fast-install", which makes the
+ ;; configure process fail
+ (zero? (system*
+ "./configure"
+ "-verbose"
+ "-prefix" out
+ "-opensource"
+ "-confirm-license"
+ ;; Most "-system-..." are automatic, but some use
+ ;; the bundled copy by default.
+ "-system-sqlite"
+ "-system-harfbuzz"
+ ;; explicitly link with openssl instead of dlopening it
+ "-openssl-linked"
+ ;; explicitly link with dbus instead of dlopening it
+ "-dbus-linked"
+ ;; drop special machine instructions not supported
+ ;; on all instances of the target
+ ,@(if (string-prefix? "x86_64"
+ (or (%current-target-system)
+ (%current-system)))
+ '()
+ '("-no-sse2"))
+ "-no-sse3"
+ "-no-ssse3"
+ "-no-sse4.1"
+ "-no-sse4.2"
+ "-no-avx"
+ "-no-avx2"
+ "-no-mips_dsp"
+ "-no-mips_dspr2"))))))))
(home-page "http://qt-project.org/")
(synopsis "Cross-platform GUI library")
(description "Qt is a cross-platform application and UI framework for
@@ -393,6 +400,13 @@ developers using C++ or QML, a CSS & JavaScript like language.")
(("/bin/pwd") (which "pwd")))
(substitute* "src/corelib/global/global.pri"
(("/bin/ls") (which "ls")))
+ ;; The configuration files for other Qt5 packages are searched
+ ;; through a call to "find_package" in Qt5Config.cmake, which
+ ;; disables the use of CMAKE_PREFIX_PATH via the parameter
+ ;; "NO_DEFAULT_PATH". Re-enable it so that the different
+ ;; components can be installed in different places.
+ (substitute* (find-files "." ".*\\.cmake")
+ (("NO_DEFAULT_PATH") ""))
;; do not pass "--enable-fast-install", which makes the
;; configure process fail
(zero? (system*
diff --git a/gnu/packages/rc.scm b/gnu/packages/rc.scm
deleted file mode 100644
index d3edf9e997..0000000000
--- a/gnu/packages/rc.scm
+++ /dev/null
@@ -1,72 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
-;;;
-;;; 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 rc)
- #:use-module (gnu packages autotools)
- #:use-module (gnu packages perl)
- #:use-module (gnu packages pkg-config)
- #:use-module (gnu packages readline)
- #:use-module (guix build-system gnu)
- #:use-module (guix git-download)
- #:use-module (guix licenses)
- #:use-module (guix packages))
-
-(define-public rc
- (package
- (name "rc")
- (version "1.7.4")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "git://github.com/rakitzis/rc.git")
- ;; commit name 'release: rc-1.7.4'
- (commit "c884da53a7c885d46ace2b92de78946855b18e92")))
- (sha256
- (base32
- "00mgzvrrh9w96xa85g4gjbsvq02f08k4jwjcdnxq7kyh5xgiw95l"))
- (file-name (string-append name "-" version "-checkout"))))
- (build-system gnu-build-system)
- (arguments
- `(#:configure-flags
- '("--with-edit=gnu")
- #:phases
- (modify-phases %standard-phases
- (add-after
- 'unpack 'autoreconf
- (lambda _ (zero? (system* "autoreconf" "-vfi"))))
- (add-before
- 'autoreconf 'patch-trip.rc
- (lambda _
- (substitute* "trip.rc"
- (("/bin/pwd") (which "pwd"))
- (("/bin/sh") (which "sh"))
- (("/bin/rm") (which "rm"))
- (("/bin\\)") (string-append (dirname (which "rm")) ")")))
- #t)))))
- (inputs `(("readline" ,readline)
- ("perl" ,perl)))
- (native-inputs `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)
- ("pkg-config" ,pkg-config)))
- (synopsis "Alternative implementation of the rc shell by Byron Rakitzis")
- (description
- "This is a reimplementation by Byron Rakitzis of the Plan 9 shell. It
-has a small feature set similar to a traditional Bourne shell.")
- (home-page "http://github.com/rakitzis/rc")
- (license zlib)))
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 028b82daaf..53e183b377 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -908,13 +908,13 @@ Ruby Gems.")
(define-public ruby-ffi
(package
(name "ruby-ffi")
- (version "1.9.10")
+ (version "1.9.14")
(source (origin
(method url-fetch)
(uri (rubygems-uri "ffi" version))
(sha256
(base32
- "1m5mprppw0xcrv2mkim5zsk70v089ajzqiq5hpyb0xg96fcyzyxj"))))
+ "1nkcrmxqr0vb1y4rwliclwlj2ajsi4ddpdx2gvzjy0xbkk5iqzfp"))))
(build-system ruby-build-system)
;; FIXME: Before running tests the build system attempts to build libffi
;; from sources.
@@ -1909,37 +1909,48 @@ to reproduce user environments.")
(define-public ruby-nokogiri
(package
(name "ruby-nokogiri")
- (version "1.6.7.2")
+ (version "1.6.8")
(source (origin
(method url-fetch)
(uri (rubygems-uri "nokogiri" version))
(sha256
(base32
- "11sbmpy60ynak6s3794q32lc99hs448msjy8rkp84ay7mq7zqspv"))))
+ "17pjhvm4yigriizxbbpx266nnh6nckdm33m3j4ws9dcg99daz91p"))))
(build-system ruby-build-system)
(arguments
;; Tests fail because Nokogiri can only test with an installed extension,
;; and also because many test framework dependencies are missing.
- '(#:tests? #f
+ `(#:tests? #f
#:gem-flags (list "--" "--use-system-libraries"
(string-append "--with-xml2-include="
(assoc-ref %build-inputs "libxml2")
"/include/libxml2" ))
#:phases
(modify-phases %standard-phases
- (add-after 'extract-gemspec 'update-dependency
- (lambda _
- (substitute* ".gemspec" (("2.0.0.rc2") "2.0"))
+ (add-before 'build 'patch-extconf
+ ;; 'pkg-config' is not included in the GEM_PATH during
+ ;; installation, so we add it directly to the load path.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let* ((pkg-config (assoc-ref inputs "ruby-pkg-config"))
+ (pkg-config-home (gem-home pkg-config
+ ,(package-version ruby))))
+ (substitute* "ext/nokogiri/extconf.rb"
+ (("gem 'pkg-config'.*")
+ (string-append "$:.unshift '"
+ pkg-config-home
+ "/gems/pkg-config-"
+ ,(package-version ruby-pkg-config)
+ "/lib'\n"))))
#t)))))
(native-inputs
- `(("ruby-hoe" ,ruby-hoe)
- ("ruby-rake-compiler" ,ruby-rake-compiler)))
+ `(("ruby-hoe" ,ruby-hoe)))
(inputs
`(("zlib" ,zlib)
("libxml2" ,libxml2)
("libxslt" ,libxslt)))
(propagated-inputs
- `(("ruby-mini-portile" ,ruby-mini-portile-2)))
+ `(("ruby-mini-portile" ,ruby-mini-portile-2)
+ ("ruby-pkg-config" ,ruby-pkg-config)))
(synopsis "HTML, XML, SAX, and Reader parser for Ruby")
(description "Nokogiri (鋸) parses and searches XML/HTML, and features
both CSS3 selector and XPath 1.0 support.")
@@ -4116,3 +4127,25 @@ inspired by Erlang, Clojure, Go, JavaScript, actors and classic concurrency
patterns.")
(home-page "http://www.concurrent-ruby.com")
(license license:expat)))
+
+(define-public ruby-pkg-config
+ (package
+ (name "ruby-pkg-config")
+ (version "1.1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "pkg-config" version))
+ (sha256
+ (base32
+ "0lljiqnm0b4z6iy87lzapwrdfa6ps63x2z5zbs038iig8dqx2g0z"))))
+ (build-system ruby-build-system)
+ (arguments
+ ;; Tests require extra files not included in the gem.
+ `(#:tests? #f))
+ (synopsis "Detect libraries for compiling Ruby native extensions")
+ (description
+ "@code{pkg-config} can be used in your extconf.rb to properly detect need
+libraries for compiling Ruby native extensions.")
+ (home-page "https://github.com/ruby-gnome2/pkg-config")
+ (license license:lgpl2.0+)))
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
new file mode 100644
index 0000000000..b3fd5fa1cd
--- /dev/null
+++ b/gnu/packages/shells.scm
@@ -0,0 +1,215 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
+;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org>
+;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
+;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
+;;;
+;;; 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 shells)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages libedit)
+ #:use-module (gnu packages ncurses)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages readline)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module (guix git-download)
+ #:use-module (guix licenses)
+ #:use-module (guix packages))
+
+(define-public dash
+ (package
+ (name "dash")
+ (version "0.5.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://gondor.apana.org.au/~herbert/dash/files/"
+ name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "17328wd9n5krr5wd37smrk0y7fdf8aa3hmhm02br5mqpq0a3nycj"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; The man page hails from BSD, where (d)ash is the default shell.
+ ;; This isn't the case on Guix or indeed most other GNU systems.
+ (substitute* "src/dash.1"
+ (("the standard command interpreter for the system")
+ "a command interpreter based on the original Bourne shell"))
+ #t))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libedit" ,libedit)))
+ (arguments
+ `(#:configure-flags '("--with-libedit")))
+ (home-page "http://gondor.apana.org.au/~herbert/dash")
+ (synopsis "POSIX-compliant shell optimised for size")
+ (description
+ "dash is a POSIX-compliant @command{/bin/sh} implementation that aims to be
+as small as possible, often without sacrificing speed. It is faster than the
+GNU Bourne-Again Shell (@command{bash}) at most scripted tasks. dash is a
+direct descendant of NetBSD's Almquist Shell (@command{ash}).")
+ (license (list bsd-3
+ gpl2+)))) ; mksignames.c
+
+(define-public fish
+ (package
+ (name "fish")
+ (version "2.3.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://fishshell.com/files/"
+ version "/fish-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0r46p64lg6da3v6chsa4gisvl04kd3rpy60yih8r870kbp9wm2ij"))
+ (modules '((guix build utils)))
+ ;; Don't try to install /etc/fish/config.fish.
+ (snippet
+ '(substitute* "Makefile.in"
+ ((".*INSTALL.*sysconfdir.*fish.*") "")))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("doxygen" ,doxygen)))
+ (inputs
+ `(("ncurses" ,ncurses)
+ ("python" ,python-wrapper))) ;for fish_config and manpage completions
+ (arguments
+ '(#:tests? #f ; no check target
+ #:configure-flags '("--sysconfdir=/etc")))
+ (synopsis "The friendly interactive shell")
+ (description
+ "Fish (friendly interactive shell) is a shell focused on interactive use,
+discoverability, and friendliness. Fish has very user-friendly and powerful
+tab-completion, including descriptions of every completion, completion of
+strings with wildcards, and many completions for specific commands. It also
+has extensive and discoverable help. A special help command gives access to
+all the fish documentation in your web browser. Other features include smart
+terminal handling based on terminfo, an easy to search history, and syntax
+highlighting.")
+ (home-page "https://fishshell.com/")
+ (license gpl2)))
+
+(define-public rc
+ (package
+ (name "rc")
+ (version "1.7.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://github.com/rakitzis/rc.git")
+ ;; commit name 'release: rc-1.7.4'
+ (commit "c884da53a7c885d46ace2b92de78946855b18e92")))
+ (sha256
+ (base32
+ "00mgzvrrh9w96xa85g4gjbsvq02f08k4jwjcdnxq7kyh5xgiw95l"))
+ (file-name (string-append name "-" version "-checkout"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags
+ '("--with-edit=gnu")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after
+ 'unpack 'autoreconf
+ (lambda _ (zero? (system* "autoreconf" "-vfi"))))
+ (add-before
+ 'autoreconf 'patch-trip.rc
+ (lambda _
+ (substitute* "trip.rc"
+ (("/bin/pwd") (which "pwd"))
+ (("/bin/sh") (which "sh"))
+ (("/bin/rm") (which "rm"))
+ (("/bin\\)") (string-append (dirname (which "rm")) ")")))
+ #t)))))
+ (inputs `(("readline" ,readline)
+ ("perl" ,perl)))
+ (native-inputs `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (synopsis "Alternative implementation of the rc shell by Byron Rakitzis")
+ (description
+ "This is a reimplementation by Byron Rakitzis of the Plan 9 shell. It
+has a small feature set similar to a traditional Bourne shell.")
+ (home-page "http://github.com/rakitzis/rc")
+ (license zlib)))
+
+(define-public tcsh
+ (package
+ (name "tcsh")
+ (version "6.18.01")
+ (source (origin
+ (method url-fetch)
+ ;; Old tarballs are moved to old/.
+ (uri (list (string-append "ftp://ftp.astron.com/pub/tcsh/"
+ "tcsh-" version ".tar.gz")
+ (string-append "ftp://ftp.astron.com/pub/tcsh/"
+ "old/tcsh-" version ".tar.gz")))
+ (sha256
+ (base32
+ "1a4z9kwgx1iqqzvv64si34m60gj34p7lp6rrcrb59s7ka5wa476q"))
+ (patches (search-patches "tcsh-fix-autotest.patch"))
+ (patch-flags '("-p0"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("autoconf" ,autoconf)
+ ("coreutils" ,coreutils)
+ ("ncurses" ,ncurses)))
+ (arguments
+ `(#:phases
+ (alist-cons-before
+ 'check 'patch-test-scripts
+ (lambda _
+ ;; Take care of pwd
+ (substitute* '("tests/commands.at" "tests/variables.at")
+ (("/bin/pwd") (which "pwd")))
+ ;; The .at files create shell scripts without shebangs. Erk.
+ (substitute* "tests/commands.at"
+ (("./output.sh") "/bin/sh output.sh"))
+ (substitute* "tests/syntax.at"
+ (("; other_script.csh") "; /bin/sh other_script.csh"))
+ ;; Now, let's generate the test suite and patch it
+ (system* "make" "tests/testsuite")
+
+ ;; This file is ISO-8859-1 encoded.
+ (with-fluids ((%default-port-encoding #f))
+ (substitute* "tests/testsuite"
+ (("/bin/sh") (which "sh")))))
+ (alist-cons-after
+ 'install 'post-install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref %outputs "out"))
+ (bin (string-append out "/bin")))
+ (with-directory-excursion bin
+ (symlink "tcsh" "csh"))))
+ %standard-phases))))
+ (home-page "http://www.tcsh.org/")
+ (synopsis "Unix shell based on csh")
+ (description
+ "Tcsh is an enhanced, but completely compatible version of the Berkeley
+UNIX C shell (csh). It is a command language interpreter usable both as an
+interactive login shell and a shell script command processor. It includes a
+command-line editor, programmable word completion, spelling correction, a
+history mechanism, job control and a C-like syntax.")
+ (license bsd-4)))
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index a669ccfc9b..bca443390d 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -124,7 +124,7 @@ a server that supports the SSH-2 protocol.")
(define-public openssh
(package
(name "openssh")
- (version "7.2p2")
+ (version "7.3p1")
(source (origin
(method url-fetch)
(uri (let ((tail (string-append name "-" version ".tar.gz")))
@@ -135,15 +135,12 @@ a server that supports the SSH-2 protocol.")
(string-append "http://ftp2.fr.openbsd.org/pub/OpenBSD/OpenSSH/portable/"
tail))))
(sha256 (base32
- "132lh9aanb0wkisji1d6cmsxi520m8nh7c7i9wi6m1s3l38q29x7"))
- (patches (search-patches "openssh-CVE-2015-8325.patch"
- "openssh-CVE-2016-6210-1.patch"
- "openssh-CVE-2016-6210-2.patch"
- "openssh-CVE-2016-6210-3.patch"))))
+ "1k5y1wi29d47cgizbryxrhc1fbjsba2x8l5mqfa9b9nadnd9iyrz"))))
(build-system gnu-build-system)
(inputs `(("groff" ,groff)
("openssl" ,openssl)
- ("zlib" ,zlib)))
+ ("zlib" ,zlib)
+ ("xauth" ,xauth))) ;for 'ssh -X' and 'ssh -Y'
(arguments
`(#:test-target "tests"
#:phases
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 2365149fad..990f2fc132 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -1331,7 +1331,8 @@ building design matrices.")
"s/statsmodels/statsmodels-" version ".tar.gz"))
(sha256
(base32
- "0xn67sqr0cc1lmlhzm71352hrb4hw7g318p5ff5q97pc98vl8kmy"))))
+ "0xn67sqr0cc1lmlhzm71352hrb4hw7g318p5ff5q97pc98vl8kmy"))
+ (patches (search-patches "python-statsmodels-fix-tests.patch"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -1375,7 +1376,8 @@ inference for statistical models.")
(let ((stats (package-with-python2 python-statsmodels)))
(package (inherit stats)
(propagated-inputs
- `(("python2-numpy" ,python2-numpy)
+ `(("python2-pytz" ,python2-pytz)
+ ("python2-numpy" ,python2-numpy)
("python2-scipy" ,python2-scipy)
("python2-pandas" ,python2-pandas)
("python2-patsy" ,python2-patsy)
diff --git a/gnu/packages/tcsh.scm b/gnu/packages/tcsh.scm
deleted file mode 100644
index 5e3df2ba3f..0000000000
--- a/gnu/packages/tcsh.scm
+++ /dev/null
@@ -1,86 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
-;;;
-;;; 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 tcsh)
- #:use-module (guix licenses)
- #:use-module (guix packages)
- #:use-module (guix download)
- #:use-module (guix build-system gnu)
- #:use-module (gnu packages)
- #:use-module (gnu packages autotools)
- #:use-module (gnu packages base)
- #:use-module (gnu packages ncurses))
-
-(define-public tcsh
- (package
- (name "tcsh")
- (version "6.18.01")
- (source (origin
- (method url-fetch)
- ;; Old tarballs are moved to old/.
- (uri (list (string-append "ftp://ftp.astron.com/pub/tcsh/"
- "tcsh-" version ".tar.gz")
- (string-append "ftp://ftp.astron.com/pub/tcsh/"
- "old/tcsh-" version ".tar.gz")))
- (sha256
- (base32
- "1a4z9kwgx1iqqzvv64si34m60gj34p7lp6rrcrb59s7ka5wa476q"))
- (patches (search-patches "tcsh-fix-autotest.patch"))
- (patch-flags '("-p0"))))
- (build-system gnu-build-system)
- (inputs
- `(("autoconf" ,autoconf)
- ("coreutils" ,coreutils)
- ("ncurses" ,ncurses)))
- (arguments
- `(#:phases
- (alist-cons-before
- 'check 'patch-test-scripts
- (lambda _
- ;; Take care of pwd
- (substitute* '("tests/commands.at" "tests/variables.at")
- (("/bin/pwd") (which "pwd")))
- ;; The .at files create shell scripts without shebangs. Erk.
- (substitute* "tests/commands.at"
- (("./output.sh") "/bin/sh output.sh"))
- (substitute* "tests/syntax.at"
- (("; other_script.csh") "; /bin/sh other_script.csh"))
- ;; Now, let's generate the test suite and patch it
- (system* "make" "tests/testsuite")
-
- ;; This file is ISO-8859-1 encoded.
- (with-fluids ((%default-port-encoding #f))
- (substitute* "tests/testsuite"
- (("/bin/sh") (which "sh")))))
- (alist-cons-after
- 'install 'post-install
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (with-directory-excursion bin
- (symlink "tcsh" "csh"))))
- %standard-phases))))
- (home-page "http://www.tcsh.org/")
- (synopsis "Unix shell based on csh")
- (description
- "Tcsh is an enhanced, but completely compatible version of the Berkeley
-UNIX C shell (csh). It is a command language interpreter usable both as an
-interactive login shell and a shell script command processor. It includes a
-command-line editor, programmable word completion, spelling correction, a
-history mechanism, job control and a C-like syntax.")
- (license bsd-4)))
diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm
index b27dd1f6d6..d8a33ddf3d 100644
--- a/gnu/packages/telephony.scm
+++ b/gnu/packages/telephony.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
+;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,8 +26,11 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages xiph)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
@@ -252,3 +256,33 @@ Voice-over-IP (VoIP) communications.")
;; covered under the 'GPL'.
;; The package as a whole is distributed under the LGPL 2.0.
(license (list lgpl2.0 public-domain gpl2+)))))
+
+(define-public seren
+ (package
+ (name "seren")
+ (version "0.0.21")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://holdenc.altervista.org/"
+ "seren/downloads/seren-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "06mams6bng7ib7p2zpfq88kdr4ffril9svzc9lprkb0wjgmkglk9"))))
+ (build-system gnu-build-system)
+ (arguments '(#:tests? #f)) ; no "check" target
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("gmp" ,gmp)
+ ("libogg" ,libogg)
+ ("ncurses" ,ncurses)
+ ("opus" ,opus)))
+ (synopsis "Simple VoIP program to create conferences from the terminal")
+ (description
+ "Seren is a simple VoIP program based on the Opus codec that allows you
+to create a voice conference from the terminal, with up to 10 participants,
+without having to register accounts, exchange emails, or add people to contact
+lists. All you need to join an existing conference is the host name or IP
+address of one of the participants.")
+ (home-page "http://holdenc.altervista.org/seren/")
+ (license gpl3+)))
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 8501792250..9dde8a9eab 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -45,7 +45,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages ruby)
- #:use-module (gnu packages tcsh)
+ #:use-module (gnu packages shells)
#:use-module (gnu packages base)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 9abaabad89..92564ba24d 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -326,7 +326,7 @@ required structures.")
(define-public libressl
(package
(name "libressl")
- (version "2.3.6")
+ (version "2.4.2")
(source
(origin
(method url-fetch)
@@ -335,7 +335,7 @@ required structures.")
version ".tar.gz"))
(sha256
(base32
- "1yipsp1ici207nbminbf1knh252kzvqg036v0xpx0fw1wrwlg2im"))))
+ "1qyrcyzrrn6r9cqvm66ib72qyr65q4hrdyiq1vb24a6nwmwdg1sz"))))
(build-system gnu-build-system)
(native-search-paths
;; FIXME: These two variables must designate a single file or directory
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 73433e955f..44f94ff49e 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -26,7 +26,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages admin) ; For GNU hostname
- #:use-module (gnu packages tcsh))
+ #:use-module (gnu packages shells))
(define-public vim
(package
diff --git a/gnu/system.scm b/gnu/system.scm
index 04dd7a845c..d6bf6c413c 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -545,7 +545,12 @@ use 'plain-file' instead~%")
;; By default, applications that use D-Bus, such as Emacs, abort at startup
;; when /etc/machine-id is missing. Make sure these warnings are non-fatal.
- ("DBUS_FATAL_WARNINGS" . "0")))
+ ("DBUS_FATAL_WARNINGS" . "0")
+
+ ;; XXX: Normally we wouldn't need to do this, but our glibc@2.23 package
+ ;; looks things up in 'PREFIX/lib/locale' instead of
+ ;; '/run/current-system/locale' as was intended.
+ ("GUIX_LOCPATH" . "/run/current-system/locale")))
(define %setuid-programs
;; Default set of setuid-root programs.
diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm
index d0a9f0288f..7b91fcfc41 100644
--- a/gnu/system/mapped-devices.scm
+++ b/gnu/system/mapped-devices.scm
@@ -81,14 +81,7 @@
(documentation "Map a device node using Linux's device mapper.")
(start #~(lambda () #$(open source target)))
(stop #~(lambda _ (not #$(close source target))))
- (respawn? #f)
-
- ;; Add the modules needed by LUKS-DEVICE-MAPPING.
- ;; FIXME: This info should be propagated via gexps.
- (modules `((rnrs bytevectors) ;bytevector?
- ((gnu build file-systems)
- #:select (find-partition-by-luks-uuid))
- ,@%default-modules)))))))
+ (respawn? #f))))))
(define (device-mapping-service mapped-device)
"Return a service that sets up @var{mapped-device}."
@@ -105,6 +98,11 @@
(with-imported-modules '((gnu build file-systems)
(guix build bournish))
#~(let ((source #$source))
+ ;; XXX: 'use-modules' should be at the top level.
+ (use-modules (rnrs bytevectors) ;bytevector?
+ ((gnu build file-systems)
+ #:select (find-partition-by-luks-uuid)))
+
(zero? (system* (string-append #$cryptsetup "/sbin/cryptsetup")
"open" "--type" "luks"
@@ -130,20 +128,31 @@
(open open-luks-device)
(close close-luks-device)))
-(define (open-raid-device source target)
- "Return a gexp that assembles SOURCE (a list of devices) to the RAID device
-TARGET, using 'mdadm'."
- #~(let ((every (@ (srfi srfi-1) every)))
- (let loop ()
- (unless (every file-exists? '#$source)
- (format #t "waiting a bit...~%")
+(define (open-raid-device sources target)
+ "Return a gexp that assembles SOURCES (a list of devices) to the RAID device
+TARGET (e.g., \"/dev/md0\"), using 'mdadm'."
+ #~(let ((sources '#$sources)
+
+ ;; XXX: We're not at the top level here. We could use a
+ ;; non-top-level 'use-modules' form but that doesn't work when the
+ ;; code is eval'd, like the Shepherd does.
+ (every (@ (srfi srfi-1) every))
+ (format (@ (ice-9 format) format)))
+ (let loop ((attempts 0))
+ (unless (every file-exists? sources)
+ (when (> attempts 20)
+ (error "RAID devices did not show up; bailing out"
+ sources))
+
+ (format #t "waiting for RAID source devices~{ ~a~}...~%"
+ sources)
(sleep 1)
- (loop)))
- (zero? (system* (string-append #$mdadm "/sbin/mdadm")
- "--assemble" #$target
- #$@source))))
+ (loop (+ 1 attempts))))
+
+ (zero? (system* (string-append #$mdadm "/sbin/mdadm")
+ "--assemble" #$target sources))))
-(define (close-raid-device source target)
+(define (close-raid-device sources target)
"Return a gexp that stops the RAID device TARGET."
#~(zero? (system* (string-append #$mdadm "/sbin/mdadm")
"--stop" #$target)))
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index a6278b25d4..7170ab1e38 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -178,6 +178,18 @@ info --version")
'(false-if-exception (getaddrinfo "does-not-exist"))
marionette))
+ (test-equal "locale"
+ "en_US.utf8"
+ (marionette-eval '(begin
+ ;; XXX: This 'setenv' call wouldn't be needed
+ ;; but our glibc@2.23 currently ignores
+ ;; /run/current-system/locale.
+ (setenv "GUIX_LOCPATH"
+ "/run/current-system/locale")
+ (let ((before (setlocale LC_ALL "en_US.utf8")))
+ (setlocale LC_ALL before)))
+ marionette))
+
(test-assert "screendump"
(begin
(marionette-control (string-append "screendump " #$output