aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--etc/guix-daemon.service.in4
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/aspell.scm9
-rw-r--r--gnu/packages/base.scm9
-rw-r--r--gnu/packages/bioinformatics.scm15
-rw-r--r--gnu/packages/databases.scm2
-rw-r--r--gnu/packages/emacs.scm19
-rw-r--r--gnu/packages/fonts.scm59
-rw-r--r--gnu/packages/gnome.scm14
-rw-r--r--gnu/packages/gnustep.scm5
-rw-r--r--gnu/packages/gnuzilla.scm10
-rw-r--r--gnu/packages/guile.scm6
-rw-r--r--gnu/packages/libevent.scm7
-rw-r--r--gnu/packages/linux.scm21
-rw-r--r--gnu/packages/networking.scm4
-rw-r--r--gnu/packages/patches/libcroco-CVE-2017-7960.patch66
-rw-r--r--gnu/packages/patches/libcroco-CVE-2017-7961.patch50
-rw-r--r--gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch144
-rw-r--r--gnu/packages/screen.scm6
-rw-r--r--gnu/packages/sdl.scm17
-rw-r--r--gnu/packages/statistics.scm20
-rw-r--r--gnu/packages/video.scm25
22 files changed, 457 insertions, 58 deletions
diff --git a/etc/guix-daemon.service.in b/etc/guix-daemon.service.in
index ffe4cf9bd5..988cf90c00 100644
--- a/etc/guix-daemon.service.in
+++ b/etc/guix-daemon.service.in
@@ -13,7 +13,9 @@ StandardOutput=syslog
StandardError=syslog
# See <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00608.html>.
-TasksMax=1024
+# Some package builds (for example, go@1.8.1) may require even more than
+# 1024 tasks.
+TasksMax=8192
[Install]
WantedBy=multi-user.target
diff --git a/gnu/local.mk b/gnu/local.mk
index b374a641f0..7220c432a2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -691,6 +691,8 @@ dist_patch_DATA = \
%D%/packages/patches/libbase-use-own-logging.patch \
%D%/packages/patches/libbonobo-activation-test-race.patch \
%D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \
+ %D%/packages/patches/libcroco-CVE-2017-7960.patch \
+ %D%/packages/patches/libcroco-CVE-2017-7961.patch \
%D%/packages/patches/libdrm-symbol-check.patch \
%D%/packages/patches/libetonyek-build-with-mdds-1.2.patch \
%D%/packages/patches/libevent-dns-tests.patch \
@@ -997,6 +999,7 @@ dist_patch_DATA = \
%D%/packages/patches/wicd-urwid-1.3.patch \
%D%/packages/patches/wicd-wpa2-ttls.patch \
%D%/packages/patches/wmctrl-64-fix.patch \
+ %D%/packages/patches/wmfire-update-for-new-gdk-versions.patch \
%D%/packages/patches/woff2-libbrotli.patch \
%D%/packages/patches/wordnet-CVE-2008-2149.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch \
diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm
index 188e91d1e1..06ba2ce472 100644
--- a/gnu/packages/aspell.scm
+++ b/gnu/packages/aspell.scm
@@ -62,7 +62,6 @@ documents written in the UTF-8 encoding and its ability to use multiple
dictionaries, including personal ones.")
(license lgpl2.1+)))
-
;;;
;;; Dictionaries.
;;;
@@ -190,3 +189,11 @@ dictionaries, including personal ones.")
#:sha256
(base32
"1zxr8958v37v260fkqd4pg37ns5h5kyqm54hn1hg70wq5cz8h512")))
+
+(define-public aspell-dict-pt-br
+ (aspell-dictionary "pt-br" "Brazilian Portuguese"
+ #:version "20090702-0"
+ #:prefix "aspell6-"
+ #:sha256
+ (base32
+ "1y09lx9zf2rnp55r16b2vgj953l3538z1vaqgflg9mdvm555bz3p")))
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 9591d9de54..9fcca45a54 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -376,7 +376,14 @@ functionality beyond that which is outlined in the POSIX standard.")
version ".tar.xz"))
(sha256
(base32
- "0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8"))))))
+ "0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8"))))
+ (arguments
+ (if (string-prefix? "arm" (or (%current-target-system)
+ (%current-system)))
+ (substitute-keyword-arguments (package-arguments coreutils)
+ ((#:phases phases)
+ `(alist-delete 'patch-cut-test ,phases)))
+ (package-arguments coreutils)))))
(define-public coreutils-minimal
;; Coreutils without its optional dependencies.
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index d270db9b53..46e238f85d 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -1460,9 +1460,15 @@ multiple sequence alignments.")
(setenv "HOME" "/tmp")
(and (zero? (system* "make" "-C" "pysam_data"))
(zero? (system* "make" "-C" "cbcf_data"))
- (zero? (system* "nosetests" "-v"
- "--processes"
- (number->string (parallel-job-count)))))))))))
+ ;; Running nosetests without explicitly asking for a
+ ;; single process leads to a crash. Running with multiple
+ ;; processes fails because the tests are not designed to
+ ;; run in parallel.
+
+ ;; FIXME: tests keep timing out on some systems.
+ ;; (zero? (system* "nosetests" "-v"
+ ;; "--processes" "1"))
+ )))))))
(propagated-inputs
`(("htslib" ,htslib))) ; Included from installed header files.
(inputs
@@ -2113,9 +2119,6 @@ translated DNA query sequences against a protein reference database (BLASTP
and BLASTX alignment mode). The speedup over BLAST is up to 20,000 on short
reads at a typical sensitivity of 90-99% relative to BLAST depending on the
data and settings.")
- ;; diamond fails to build on other platforms
- ;; https://github.com/bbuchfink/diamond/issues/18
- (supported-systems '("x86_64-linux"))
(license (license:non-copyleft "file://src/COPYING"
"See src/COPYING in the distribution."))))
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index cc2f8a2f92..e32bcfa666 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -1267,7 +1267,7 @@ more efficient access and storage of column subsets) and log-structured merge
trees (LSM), for sustained throughput under random insert workloads.")
(license license:gpl3) ; or GPL-2
;; configure.ac: WiredTiger requires a 64-bit build.
- (supported-systems '("x86_64-linux" "mips64el-linux"))))
+ (supported-systems '("x86_64-linux" "mips64el-linux" "aarch64-linux"))))
(define-public perl-db-file
(package
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 47ea8d43a1..14d8511849 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -1230,6 +1230,25 @@ or XEmacs.")
the Emacs buffer.")
(license license:gpl3+)))
+(define-public emacs-google-maps
+ (package
+ (name "emacs-google-maps")
+ (version "1.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/jd/google-maps.el/"
+ "archive/" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "014bxapm4d8vjxbzrfjdpsavxyfx981mlcb10aq5rmigr6il8ybs"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/jd/google-maps.el")
+ (synopsis "Access Google Maps from Emacs")
+ (description "The @code{google-maps} package allows to display Google
+Maps directly inside Emacs.")
+ (license license:gpl3+)))
+
(define-public emacs-mmm-mode
(package
(name "emacs-mmm-mode")
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 6579a66e4d..2452a1c810 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
-;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 ng0 <ng0@libertad.pw>
;;; Copyright © 2016 Jookia <166291@gmail.com>
@@ -370,6 +370,63 @@ and Bitstream Vera Sans Mono).
The Liberation Fonts are sponsored by Red Hat.")
(license license:silofl1.1)))
+(define-public font-linuxlibertine
+ (package
+ (name "font-linuxlibertine")
+ (version "5.3.0")
+ (source (origin
+ (method url-fetch/tarbomb)
+ (uri (string-append "mirror://sourceforge/linuxlibertine/"
+ "linuxlibertine/" version
+ "/LinLibertineSRC_" version "_2012_07_02.tgz"))
+ (sha256
+ (base32
+ "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; there are no tests
+ #:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (srfi srfi-1)
+ (srfi srfi-26))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'build
+ (lambda _
+ (let ((compile
+ (lambda (name ext)
+ (zero? (system*
+ "fontforge" "-lang=ff"
+ "-c" (string-append "Open('" name "');"
+ "Generate('"
+ (basename name "sfd") ext
+ "')"))))))
+ (every (lambda (name)
+ (and (compile name "ttf")
+ (compile name "otf")))
+ (find-files "." "\\.sfd$")))))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((font-dir (string-append (assoc-ref outputs "out")
+ "/share/fonts/truetype")))
+ (mkdir-p font-dir)
+ (for-each (cut install-file <> font-dir)
+ (find-files "." "\\.(otf|ttf)$"))
+ #t))))))
+ (native-inputs
+ `(("fontforge" ,fontforge)))
+ (home-page "http://www.linuxlibertine.org/")
+ (synopsis "Serif and sans serif typefaces")
+ (description "The Linux Libertine fonts is a set of typefaces containing
+both a Serif version (\"Linux Libertine\") and a Sans Serif (\"Linux
+Biolinum\") designed to be used together as an alternative for Times/Times New
+Roman and Helvetica/Arial. The Serif typeface comes in two shapes and two
+weights, and with a Small Capitals version of the regular typeface. Linux
+Biolinum is available in both Regular and Bold weights.")
+ ;; The fonts are released under either of these licenses.
+ (license (list license:gpl2+ license:silofl1.1))))
+
(define-public font-terminus
(package
(name "font-terminus")
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 96dcbda72e..fc19318b91 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -945,6 +945,7 @@ the GNOME desktop environment.")
(define-public libcroco
(package
(name "libcroco")
+ (replacement libcroco/fixed)
(version "0.6.11")
(source (origin
(method url-fetch)
@@ -972,6 +973,19 @@ XML/CSS rendering engine.")
;; LGPLv2.1-only.
(license license:lgpl2.1)))
+(define libcroco/fixed
+ (package
+ (inherit libcroco)
+ (replacement #f)
+ (source
+ (origin
+ (inherit (package-source libcroco))
+ (patches
+ (append
+ (origin-patches (package-source libcroco))
+ (search-patches "libcroco-CVE-2017-7960.patch"
+ "libcroco-CVE-2017-7961.patch")))))))
+
(define-public libgsf
(package
(name "libgsf")
diff --git a/gnu/packages/gnustep.scm b/gnu/packages/gnustep.scm
index 6e729165c9..e2ee4748ff 100644
--- a/gnu/packages/gnustep.scm
+++ b/gnu/packages/gnustep.scm
@@ -22,6 +22,7 @@
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
+ #:use-module (gnu packages)
#:use-module (gnu packages xorg)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
@@ -244,7 +245,9 @@ display, and can run a user-specified program on mouse click.")
name "/" name "-" version ".tar.gz"))
(sha256
(base32
- "101grahd80n97y2dczb629clmcgiavdpbbwy78kk5wgs362m12z3"))))
+ "101grahd80n97y2dczb629clmcgiavdpbbwy78kk5wgs362m12z3"))
+ (patches
+ (search-patches "wmfire-update-for-new-gdk-versions.patch"))))
(build-system gnu-build-system)
(inputs
`(("gtk+" ,gtk+-2)
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index efe63adb4d..d60b53828b 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -241,6 +241,16 @@ in the Mozilla clients.")
`((setenv "USE_64" "1")))
(_
'()))
+ ;; The timeout values in "increase-test-timeouts" are still
+ ;; too low, so apply this workaround on armhf for now to avoid
+ ;; rebuilding on all platforms. This should be incorporated in
+ ;; the patch for the next update.
+ ;; https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00472.html
+ ,@(if (string-prefix? "armhf" (or (%current-target-system)
+ (%current-system)))
+ `((substitute* "nss/gtests/ssl_gtest/tls_connect.cc"
+ (("25000\\);") "300000);")))
+ '())
#t))
(replace 'check
(lambda _
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 6d9f58c4ed..9dd524e4b2 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -1441,16 +1441,16 @@ is no support for parsing block and inline level HTML.")
(define-public guile-bytestructures
(package
(name "guile-bytestructures")
- (version "20160726.53127f6")
+ (version "20170402.91d042e")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/TaylanUB/scheme-bytestructures")
- (commit "53127f608caf64b34fa41c389b2743b546fbe9da")))
+ (commit "91d042e3427e1d7740b604b6296c616cf2eec13d")))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0l4nx1vp9fkrgrgwjiycj7nx6wfjfd39rqamv4pmq7issi8mrywq"))))
+ "04lgh0nk6ddnwgh20hnz4pyhczaik0xbd50kikjsxcwcl46shavb"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm
index 4aab447333..5d769aaf47 100644
--- a/gnu/packages/libevent.scm
+++ b/gnu/packages/libevent.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -51,6 +52,9 @@
;; https://github.com/libevent/libevent/issues/452
"libevent-2.1-skip-failing-test.patch"))))
(build-system gnu-build-system)
+ (arguments
+ ;; This skips some of the tests which fail on armhf and aarch64.
+ '(#:configure-flags '("--disable-libevent-regress")))
(inputs
`(("python" ,python-2))) ; for 'event_rpcgen.py'
(native-inputs
@@ -87,7 +91,8 @@ loop.")
"libevent-2.0-CVE-2016-10195.patch"
"libevent-2.0-CVE-2016-10196.patch"
"libevent-2.0-CVE-2016-10197.patch"
- "libevent-2.0-evbuffer-add-use-last-with-datap.patch"))))))
+ "libevent-2.0-evbuffer-add-use-last-with-datap.patch"))))
+ (arguments '())))
(define-public libev
(package
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index e6ede675c0..42495a9e4f 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1510,19 +1510,28 @@ user-space processes.")
(define-public unionfs-fuse
(package
(name "unionfs-fuse")
- (version "0.26")
+ (version "2.0")
(source (origin
(method url-fetch)
(uri (string-append
- "http://podgorny.cz/unionfs-fuse/releases/unionfs-fuse-"
- version ".tar.xz"))
+ "https://github.com/rpodgorny/unionfs-fuse/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0qpnr4czgc62vsfnmv933w62nq3xwcbnvqch72qakfgca75rsp4d"))))
+ "0hsn8l1iblvx27bpd4dvnvnbh9ri3sv2f9xzpsnfz3379kb7skgj"))))
(build-system cmake-build-system)
+ (native-inputs
+ `(("python" ,python)
+ ("python-pytest" ,python-pytest)))
(inputs `(("fuse" ,fuse)))
- (arguments '(#:tests? #f)) ; no tests
- (home-page "http://podgorny.cz/moin/UnionFsFuse")
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ ;; Borrowed from the Makefile
+ (lambda _ (zero? (system* "python3" "-m" "pytest")))))))
+ (home-page "https://github.com/rpodgorny/unionfs-fuse")
(synopsis "User-space union file system")
(description
"UnionFS-FUSE is a flexible union file system implementation in user
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index efef2d5a7a..9fa7c8826c 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1143,7 +1143,7 @@ networks.")
(define-public speedtest-cli
(package
(name "speedtest-cli")
- (version "1.0.3")
+ (version "1.0.5")
(source
(origin
(method url-fetch)
@@ -1152,7 +1152,7 @@ networks.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1v4xd03303mlzmv43qaz3fmskp2prhs1678a5522ia2yqwv98adz"))))
+ "0y1888492kl21dz69vd526189c5aal3q790jawdb2wph42cz0cq8"))))
(build-system python-build-system)
(home-page "https://github.com/sivel/speedtest-cli")
(synopsis "Internet bandwidth tester")
diff --git a/gnu/packages/patches/libcroco-CVE-2017-7960.patch b/gnu/packages/patches/libcroco-CVE-2017-7960.patch
new file mode 100644
index 0000000000..0319c7389f
--- /dev/null
+++ b/gnu/packages/patches/libcroco-CVE-2017-7960.patch
@@ -0,0 +1,66 @@
+Fix CVE-2017-7960:
+
+https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7960
+
+Patch copied from upstream source repository:
+
+https://git.gnome.org/browse/libcroco/commit/?id=898e3a8c8c0314d2e6b106809a8e3e93cf9d4394
+
+From 898e3a8c8c0314d2e6b106809a8e3e93cf9d4394 Mon Sep 17 00:00:00 2001
+From: Ignacio Casal Quinteiro <qignacio@amazon.com>
+Date: Sun, 16 Apr 2017 13:13:43 +0200
+Subject: input: check end of input before reading a byte
+
+When reading bytes we weren't check that the index wasn't
+out of bound and this could produce an invalid read which
+could deal to a security bug.
+---
+ src/cr-input.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/src/cr-input.c b/src/cr-input.c
+index 49000b1..3b63a88 100644
+--- a/src/cr-input.c
++++ b/src/cr-input.c
+@@ -256,7 +256,7 @@ cr_input_new_from_uri (const gchar * a_file_uri, enum CREncoding a_enc)
+ *we should free buf here because it's own by CRInput.
+ *(see the last parameter of cr_input_new_from_buf().
+ */
+- buf = NULL ;
++ buf = NULL;
+ }
+
+ cleanup:
+@@ -404,6 +404,8 @@ cr_input_get_nb_bytes_left (CRInput const * a_this)
+ enum CRStatus
+ cr_input_read_byte (CRInput * a_this, guchar * a_byte)
+ {
++ gulong nb_bytes_left = 0;
++
+ g_return_val_if_fail (a_this && PRIVATE (a_this)
+ && a_byte, CR_BAD_PARAM_ERROR);
+
+@@ -413,6 +415,12 @@ cr_input_read_byte (CRInput * a_this, guchar * a_byte)
+ if (PRIVATE (a_this)->end_of_input == TRUE)
+ return CR_END_OF_INPUT_ERROR;
+
++ nb_bytes_left = cr_input_get_nb_bytes_left (a_this);
++
++ if (nb_bytes_left < 1) {
++ return CR_END_OF_INPUT_ERROR;
++ }
++
+ *a_byte = PRIVATE (a_this)->in_buf[PRIVATE (a_this)->next_byte_index];
+
+ if (PRIVATE (a_this)->nb_bytes -
+@@ -477,7 +485,6 @@ cr_input_read_char (CRInput * a_this, guint32 * a_char)
+ if (*a_char == '\n') {
+ PRIVATE (a_this)->end_of_line = TRUE;
+ }
+-
+ }
+
+ return status;
+--
+cgit v0.12
+
diff --git a/gnu/packages/patches/libcroco-CVE-2017-7961.patch b/gnu/packages/patches/libcroco-CVE-2017-7961.patch
new file mode 100644
index 0000000000..675dbe4f08
--- /dev/null
+++ b/gnu/packages/patches/libcroco-CVE-2017-7961.patch
@@ -0,0 +1,50 @@
+Fix CVE-2017-7961:
+
+https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7961
+
+Patch copied from upstream source repository:
+
+https://git.gnome.org/browse/libcroco/commit/?id=9ad72875e9f08e4c519ef63d44cdbd94aa9504f7
+
+From 9ad72875e9f08e4c519ef63d44cdbd94aa9504f7 Mon Sep 17 00:00:00 2001
+From: Ignacio Casal Quinteiro <qignacio@amazon.com>
+Date: Sun, 16 Apr 2017 13:56:09 +0200
+Subject: tknzr: support only max long rgb values
+
+This fixes a possible out of bound when reading rgbs which
+are longer than the support MAXLONG
+---
+ src/cr-tknzr.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/src/cr-tknzr.c b/src/cr-tknzr.c
+index 1a7cfeb..1548c35 100644
+--- a/src/cr-tknzr.c
++++ b/src/cr-tknzr.c
+@@ -1279,6 +1279,11 @@ cr_tknzr_parse_rgb (CRTknzr * a_this, CRRgb ** a_rgb)
+ status = cr_tknzr_parse_num (a_this, &num);
+ ENSURE_PARSING_COND ((status == CR_OK) && (num != NULL));
+
++ if (num->val > G_MAXLONG) {
++ status = CR_PARSING_ERROR;
++ goto error;
++ }
++
+ red = num->val;
+ cr_num_destroy (num);
+ num = NULL;
+@@ -1298,6 +1303,11 @@ cr_tknzr_parse_rgb (CRTknzr * a_this, CRRgb ** a_rgb)
+ status = cr_tknzr_parse_num (a_this, &num);
+ ENSURE_PARSING_COND ((status == CR_OK) && (num != NULL));
+
++ if (num->val > G_MAXLONG) {
++ status = CR_PARSING_ERROR;
++ goto error;
++ }
++
+ PEEK_BYTE (a_this, 1, &next_bytes[0]);
+ if (next_bytes[0] == '%') {
+ SKIP_CHARS (a_this, 1);
+--
+cgit v0.12
+
diff --git a/gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch b/gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch
new file mode 100644
index 0000000000..51d6c3e791
--- /dev/null
+++ b/gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch
@@ -0,0 +1,144 @@
+This patch comes from Debian and was modified by Kei Kebreau <kei@openmailbox.org>.
+Link: https://anonscm.debian.org/cgit/pkg-wmaker/wmfire.git/plain/debian/patches/gdk_updates.patch?h=debian/1.2.4-2&id=a272234fc5eecdbfc469adb12133196bc62f3059
+
+Description: Update for newer versions of GDK.
+ In particular, the icon window was not receiving enter and leave events from
+ the pointer. To fix this, we get rid of the second GdkWindow iconwin entirely
+ and set win to be its own icon.
+ .
+ This also removes the need for the "broken window manager" fix, so we remove it
+ and all references to it.
+Author: Doug Torrance <dtorrance@piedmont.edu>
+
+diff -ur wmfire-1.2.4.old/src/wmfire.c wmfire-1.2.4/src/wmfire.c
+--- wmfire-1.2.4.old/src/wmfire.c 2017-04-23 14:26:58.449487117 -0400
++++ wmfire-1.2.4/src/wmfire.c 2017-04-23 14:32:10.785238671 -0400
+@@ -77,7 +77,6 @@
+ typedef struct {
+ Display *display; /* X11 display */
+ GdkWindow *win; /* Main window */
+- GdkWindow *iconwin; /* Icon window */
+ GdkGC *gc; /* Drawing GC */
+ GdkPixmap *pixmap; /* Main pixmap */
+ GdkBitmap *mask; /* Dockapp mask */
+@@ -141,7 +140,6 @@
+ int cmap = 0;
+ int lock = 0;
+ int proximity = 0;
+-int broken_wm = 0;
+
+ /******************************************/
+ /* Main */
+@@ -262,12 +260,8 @@
+ usleep(REFRESH);
+
+ /* Draw the rgb buffer to screen */
+- if (!broken_wm)
+- gdk_draw_rgb_image(bm.iconwin, bm.gc, 4, 4, XMAX, YMAX, GDK_RGB_DITHER_NONE, bm.rgb, XMAX * 3);
+- else
+- gdk_draw_rgb_image(bm.win, bm.gc, 4, 4, XMAX, YMAX, GDK_RGB_DITHER_NONE, bm.rgb, XMAX * 3);
++ gdk_draw_rgb_image(bm.win, bm.gc, 4, 4, XMAX, YMAX, GDK_RGB_DITHER_NONE, bm.rgb, XMAX * 3);
+ }
+-
+ return 0;
+ }
+
+@@ -556,9 +550,7 @@
+ #define MASK GDK_BUTTON_PRESS_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_HINT_MASK
+
+ GdkWindowAttr attr;
+- GdkWindowAttr attri;
+ Window win;
+- Window iconwin;
+
+ GdkPixmap *icon;
+
+@@ -578,10 +570,6 @@
+ attr.wmclass_class = "wmfire";
+ attr.window_type = GDK_WINDOW_TOPLEVEL;
+
+- /* Make a copy for the iconwin - parameters are the same */
+- memcpy(&attri, &attr, sizeof (GdkWindowAttr));
+- attri.window_type = GDK_WINDOW_CHILD;
+-
+ sizehints.flags = USSize;
+ sizehints.width = 64;
+ sizehints.height = 64;
+@@ -592,18 +580,11 @@
+ exit(1);
+ }
+
+- bm.iconwin = gdk_window_new(bm.win, &attri, GDK_WA_TITLE | GDK_WA_WMCLASS);
+- if (!bm.iconwin) {
+- fprintf(stderr, "FATAL: Cannot make icon window\n");
+- exit(1);
+- }
+-
+ win = GDK_WINDOW_XWINDOW(bm.win);
+- iconwin = GDK_WINDOW_XWINDOW(bm.iconwin);
+ XSetWMNormalHints(GDK_WINDOW_XDISPLAY(bm.win), win, &sizehints);
+
+ wmhints.initial_state = WithdrawnState;
+- wmhints.icon_window = iconwin;
++ wmhints.icon_window = win;
+ wmhints.icon_x = 0;
+ wmhints.icon_y = 0;
+ wmhints.window_group = win;
+@@ -613,10 +594,8 @@
+
+ bm.pixmap = gdk_pixmap_create_from_xpm_d(bm.win, &(bm.mask), NULL, master_xpm);
+ gdk_window_shape_combine_mask(bm.win, bm.mask, 0, 0);
+- gdk_window_shape_combine_mask(bm.iconwin, bm.mask, 0, 0);
+
+ gdk_window_set_back_pixmap(bm.win, bm.pixmap, False);
+- gdk_window_set_back_pixmap(bm.iconwin, bm.pixmap, False);
+
+ #if 0
+ gdk_window_set_type_hint(bm.win, GDK_WINDOW_TYPE_HINT_DOCK);
+@@ -626,7 +605,6 @@
+ #endif
+
+ icon = gdk_pixmap_create_from_xpm_d(bm.win, NULL, NULL, icon_xpm);
+- gdk_window_set_icon(bm.win, bm.iconwin, icon, NULL);
+
+ gdk_window_show(bm.win);
+
+@@ -721,9 +699,6 @@
+ case 'l':
+ lock = 1;
+ break;
+- case 'b':
+- broken_wm = 1;
+- break;
+ case 'h':
+ default:
+ do_help();
+@@ -766,6 +741,5 @@
+ for (i = 0; i < NFLAMES; i++)
+ fprintf(stderr, "%d:%s ", i + 1, fire[i].text);
+ fprintf(stderr, "\n\t-l\t\t\tlock flame colour and monitor\n");
+- fprintf(stderr, "\t-b\t\t\tactivate broken window manager fix\n");
+ fprintf(stderr, "\t-h\t\t\tprints this help\n");
+ }
+Only in wmfire-1.2.4/src: wmfire.c~
+diff -ur wmfire-1.2.4.old/wmfire.1 wmfire-1.2.4/wmfire.1
+--- wmfire-1.2.4.old/wmfire.1 2017-04-23 14:26:58.449487117 -0400
++++ wmfire-1.2.4/wmfire.1 2017-04-23 14:41:20.697186114 -0400
+@@ -8,7 +8,6 @@
+
+ .SH SYNOPSIS
+ .B wmfire
+-[-b]
+ [-c CPU]
+ [-f COLOUR]
+ [-F FILE]
+@@ -54,9 +53,6 @@
+
+ .SH OPTIONS
+ .TP
+-.B -b
+-Activate broken window manager fix (if grey box diplayed)
+-.TP
+ .B -c [0..3]
+ .br
+ Monitor SMP CPU number X
diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm
index 5ab5351e35..1bdfcd0110 100644
--- a/gnu/packages/screen.scm
+++ b/gnu/packages/screen.scm
@@ -21,6 +21,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages screen)
+ #:use-module (srfi srfi-1)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
@@ -170,6 +171,7 @@ window manager as well as the Tmux terminal multiplexer.")
it to a new terminal. Started a long-running process over @code{ssh}, but have
to leave and don't want to interrupt it? Just start a @code{screen}, use
reptyr to grab it, and then kill the @code{ssh} session and head on home.")
- ;; Reptyr currently does not support mips.
- (supported-systems (delete "mips64el-linux" %supported-systems))
+ ;; Reptyr currently does not support mips or aarch64.
+ (supported-systems (fold delete %supported-systems
+ '("mips64el-linux" "aarch64-linux")))
(license expat)))
diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm
index 584731760f..9e2d81f182 100644
--- a/gnu/packages/sdl.scm
+++ b/gnu/packages/sdl.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,6 +22,8 @@
(define-module (gnu packages sdl)
#:use-module (ice-9 match)
+ #:use-module (srfi srfi-1)
+ #:use-module (srfi srfi-26)
#:use-module (gnu packages)
#:use-module ((guix licenses) #:hide (freetype))
#:use-module (guix packages)
@@ -150,16 +152,19 @@ system, such as sound redirection over the network.")
(base32
"0ijljhs0v99dj6y27hc10z6qchyp8gdp4199y6jzngy6dzxlzsvw"))))
(build-system gnu-build-system)
+ (arguments
+ `(,@(if (any (cute string-prefix? <> (or (%current-system)
+ (%current-target-system)))
+ '("x86_64" "i686"))
+ ;; mmx is supported only on Intel processors.
+ '()
+ '(#:configure-flags '("--disable-mmx")))))
(propagated-inputs `(("sdl" ,sdl)))
(synopsis "SDL graphics primitives library")
(description "SDL_gfx provides graphics drawing primitives, rotozoom and
other supporting functions for SDL.")
(home-page "http://www.ferzkopp.net/joomla/software-mainmenu-14/4-ferzkopps-linux-software/19-sdlgfx")
- (license zlib)
-
- ;; The code apparently includes Intel assembly, which fails to build on
- ;; MIPS, at least.
- (supported-systems '("i686-linux" "x86_64-linux"))))
+ (license zlib)))
(define-public sdl-image
(package
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 4882ca7bac..f1fcbe083d 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -106,7 +106,7 @@ be output in text, PostScript, PDF or HTML.")
(define-public r-minimal
(package
(name "r-minimal")
- (version "3.3.3")
+ (version "3.4.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cran/src/base/R-"
@@ -114,7 +114,7 @@ be output in text, PostScript, PDF or HTML.")
version ".tar.gz"))
(sha256
(base32
- "0v7wpj89b0i3ad3fi1wak5c93hywmbxv8sdnixhq8l17782nidss"))))
+ "14cb8bwi3akvdb6934kqic2862f2qgav6cq4g0h7gi2p4ka9x3i8"))))
(build-system gnu-build-system)
(arguments
`(#:disallowed-references (,tzdata-2017a)
@@ -184,13 +184,15 @@ be output in text, PostScript, PDF or HTML.")
;; making "help()" print nothing at all.
(lambda _ (setenv "PAGER" "cat") #t))
(add-before 'check 'set-timezone
- ;; Some tests require the timezone to be set.
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "TZ" "UTC")
- (setenv "TZDIR"
- (string-append (assoc-ref inputs "tzdata")
- "/share/zoneinfo"))
- #t))
+ ;; Some tests require the timezone to be set. However, the
+ ;; timezone may not just be "UTC", or else a brittle regression
+ ;; test in reg-tests-1d will fail.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "TZ" "UTC+1")
+ (setenv "TZDIR"
+ (string-append (assoc-ref inputs "tzdata")
+ "/share/zoneinfo"))
+ #t))
(add-after 'build 'make-info
(lambda _ (zero? (system* "make" "info"))))
(add-after 'build 'install-info
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 8f7a2384f4..88feac8b1b 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -36,7 +36,6 @@
(define-module (gnu packages video)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
- #:use-module (srfi srfi-26)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
@@ -849,7 +848,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(define-public mpv
(package
(name "mpv")
- (version "0.24.0")
+ (version "0.25.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -857,7 +856,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
".tar.gz"))
(sha256
(base32
- "059zblcj98fhrns1rwa66mf4km68czpam4nnk8q9qny31bx58654"))
+ "1khb7c4fdj1aak46lwyb3lq14w5jpxzws0zp6bdc87ljsvx3yhh7"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system waf-build-system)
(native-inputs
@@ -907,6 +906,9 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(copy-file (assoc-ref inputs "waf") "waf")
(setenv "CC" "gcc"))))
#:configure-flags (list "--enable-libmpv-shared"
+ "--enable-cdda"
+ "--enable-dvdread"
+ "--enable-dvdnav"
"--enable-zsh-comp"
"--disable-build-date")
;; No check function defined.
@@ -1614,20 +1616,7 @@ be used for realtime video capture via Linux-specific APIs.")
"043f8mfdh4ll0hpivpyg3iniirckwsgri0gzamyrba1yhf2c2ibr"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ; no tests
- ,@(if (any (cute string-prefix? <> (or (%current-target-system)
- (%current-system)))
- '("arm" "mips"))
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'remove-architecture-specific-instructions
- ;; non-Intel platforms fail to build with the architecture
- ;; specific compiler flags included by default.
- (lambda _
- (substitute* "libobs/CMakeLists.txt"
- (("if\\(NOT MSVC\\)") "if(MSVC)"))
- #t))))
- '())))
+ `(#:tests? #f)) ; no tests
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@@ -1654,6 +1643,7 @@ video recording and live streaming. OBS supports capturing audio and video
from many input sources such as webcams, X11 (for screencasting), PulseAudio,
and JACK.")
(home-page "https://obsproject.com")
+ (supported-systems '("x86_64-linux" "i686-linux"))
(license license:gpl2+)))
(define-public libvdpau
@@ -1746,6 +1736,7 @@ making @dfn{screencasts}.")
(uri (svn-reference
(url "svn://svn.icculus.org/smpeg/trunk/")
(revision 401))) ; last revision before smpeg2 (for SDL 2.0)
+ (file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"18yfkr70lr1x1hc8snn2ldnbzdcc7b64xmkqrfk8w59gpg7sl1xn"))))