diff options
author | Leo Famulari <leo@famulari.name> | 2017-04-25 14:27:03 -0400 |
---|---|---|
committer | Leo Famulari <leo@famulari.name> | 2017-04-25 14:27:03 -0400 |
commit | 39d2d9a7abdde28830c39c1128986cad539c081d (patch) | |
tree | 980846ee567066b80e259e35bd1f39c388db583c | |
parent | 803067939718be1c17a40fa33a75eb65a3cece2f (diff) | |
parent | 31c374e0816fc183e177d93257f90b3c02d517af (diff) | |
download | guix-39d2d9a7abdde28830c39c1128986cad539c081d.tar guix-39d2d9a7abdde28830c39c1128986cad539c081d.tar.gz |
Merge branch 'master' into staging
-rw-r--r-- | etc/guix-daemon.service.in | 4 | ||||
-rw-r--r-- | gnu/local.mk | 3 | ||||
-rw-r--r-- | gnu/packages/aspell.scm | 9 | ||||
-rw-r--r-- | gnu/packages/base.scm | 9 | ||||
-rw-r--r-- | gnu/packages/bioinformatics.scm | 15 | ||||
-rw-r--r-- | gnu/packages/databases.scm | 2 | ||||
-rw-r--r-- | gnu/packages/emacs.scm | 19 | ||||
-rw-r--r-- | gnu/packages/fonts.scm | 59 | ||||
-rw-r--r-- | gnu/packages/gnome.scm | 14 | ||||
-rw-r--r-- | gnu/packages/gnustep.scm | 5 | ||||
-rw-r--r-- | gnu/packages/gnuzilla.scm | 10 | ||||
-rw-r--r-- | gnu/packages/guile.scm | 6 | ||||
-rw-r--r-- | gnu/packages/libevent.scm | 7 | ||||
-rw-r--r-- | gnu/packages/linux.scm | 21 | ||||
-rw-r--r-- | gnu/packages/networking.scm | 4 | ||||
-rw-r--r-- | gnu/packages/patches/libcroco-CVE-2017-7960.patch | 66 | ||||
-rw-r--r-- | gnu/packages/patches/libcroco-CVE-2017-7961.patch | 50 | ||||
-rw-r--r-- | gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch | 144 | ||||
-rw-r--r-- | gnu/packages/screen.scm | 6 | ||||
-rw-r--r-- | gnu/packages/sdl.scm | 17 | ||||
-rw-r--r-- | gnu/packages/statistics.scm | 20 | ||||
-rw-r--r-- | gnu/packages/video.scm | 25 |
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")))) |