From 9a49129651f4c53f42b31a2c44e4f299eb82708b Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sun, 2 Apr 2017 11:36:47 -0400 Subject: gnu: audacity: Update to 2.1.3. * gnu/packages/audacity.scm (audacity): Update to 2.1.3. [source]: Fetch gzipped tar archive instead of a zip archive; remove unnecessary patch. [native-inputs]: Add autoconf, automake and libtool. [arguments]: Add autoreconf phase to detect system libraries. * gnu/packages/patches/audacity-fix-ffmpeg-binding.patch: Delete patch. * gnu/local.mk: Remove reference to removed patch. --- .../patches/audacity-fix-ffmpeg-binding.patch | 32 ---------------------- 1 file changed, 32 deletions(-) delete mode 100644 gnu/packages/patches/audacity-fix-ffmpeg-binding.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch b/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch deleted file mode 100644 index d6d65338d9..0000000000 --- a/gnu/packages/patches/audacity-fix-ffmpeg-binding.patch +++ /dev/null @@ -1,32 +0,0 @@ -This resolves some "declaration of C function conflicts with previous -declaration" errors during compilation. - ---- a/src/FFmpeg.h 2015-02-21 00:33:33.853857529 +0100 -+++ b/src/FFmpeg.h 2015-02-21 00:35:09.626497205 +0100 -@@ -688,7 +688,7 @@ - FFMPEG_FUNCTION_WITH_RETURN( - AVOutputFormat*, - av_oformat_next, -- (AVOutputFormat *f), -+ (const AVOutputFormat *f), - (f) - ); - FFMPEG_FUNCTION_WITH_RETURN( -@@ -755,7 +755,7 @@ - FFMPEG_FUNCTION_WITH_RETURN( - int, - av_fifo_size, -- (AVFifoBuffer *f), -+ (const AVFifoBuffer *f), - (f) - ); - FFMPEG_FUNCTION_WITH_RETURN( -@@ -801,7 +801,7 @@ - FFMPEG_FUNCTION_WITH_RETURN( - AVDictionaryEntry *, - av_dict_get, -- (AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags), -+ (const AVDictionary *m, const char *key, const AVDictionaryEntry *prev, int flags), - (m, key, prev, flags) - ); - FFMPEG_FUNCTION_WITH_RETURN( -- cgit v1.2.3 From 26bad5d7eb00971a8bfcdb5556b106a601957de4 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 3 Apr 2017 17:43:46 +0200 Subject: gnu: nss, nss-certs: Update to 3.30. * gnu/packages/gnuzilla.scm (nss): Update to 3.30. * gnu/packages/certs.scm (nss-certs): Update to 3.30. * gnu/packages/patches/nss-increase-test-timeout.patch: Adjust patch context. --- gnu/packages/certs.scm | 4 ++-- gnu/packages/gnuzilla.scm | 4 ++-- gnu/packages/patches/nss-increase-test-timeout.patch | 10 +++++----- 3 files changed, 9 insertions(+), 9 deletions(-) (limited to 'gnu/packages/patches') diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index 7f5c5b793f..4b43348a50 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -74,7 +74,7 @@ (define certdata2pem (define-public nss-certs (package (name "nss-certs") - (version "3.29.3") + (version "3.30") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -85,7 +85,7 @@ (define-public nss-certs "nss-" version ".tar.gz"))) (sha256 (base32 - "1sz1r2iml9bhd4iqiqz75gii855a25895vpy9scjky0y4lqwrp9m")))) + "1agkkwb51si4raw46p44vl3d0l7wzvdjcblpcdjjz6aymq6h1h58")))) (build-system gnu-build-system) (outputs '("out")) (native-inputs diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 9cf64f82c4..76a65f09e6 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -193,7 +193,7 @@ (define-public nspr (define-public nss (package (name "nss") - (version "3.29.3") + (version "3.30") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -204,7 +204,7 @@ (define-public nss "nss-" version ".tar.gz"))) (sha256 (base32 - "1sz1r2iml9bhd4iqiqz75gii855a25895vpy9scjky0y4lqwrp9m")) + "1agkkwb51si4raw46p44vl3d0l7wzvdjcblpcdjjz6aymq6h1h58")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-pkgconfig.patch" "nss-increase-test-timeout.patch")))) diff --git a/gnu/packages/patches/nss-increase-test-timeout.patch b/gnu/packages/patches/nss-increase-test-timeout.patch index c6aac6ac00..1e24940322 100644 --- a/gnu/packages/patches/nss-increase-test-timeout.patch +++ b/gnu/packages/patches/nss-increase-test-timeout.patch @@ -14,12 +14,12 @@ Increase timeouts to increase chances of a successful build. } void TlsConnectTestBase::EnableExtendedMasterSecret() { -@@ -387,7 +387,7 @@ - } else { - fail_agent = server_; +@@ -385,7 +385,7 @@ + if (failing_side == TlsAgent::CLIENT) { + failing_agent = client_; } -- ASSERT_TRUE_WAIT(fail_agent->state() == TlsAgent::STATE_ERROR, 5000); -+ ASSERT_TRUE_WAIT(fail_agent->state() == TlsAgent::STATE_ERROR, 25000); +- ASSERT_TRUE_WAIT(failing_agent->state() == TlsAgent::STATE_ERROR, 5000); ++ ASSERT_TRUE_WAIT(failing_agent->state() == TlsAgent::STATE_ERROR, 25000); } void TlsConnectTestBase::ConfigureVersion(uint16_t version) { -- cgit v1.2.3 From b7506f74dffd86b93a07ef2c6dfc6517897afea6 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 4 Apr 2017 13:44:23 +0200 Subject: gnu: glog: Fix name demangling for GCC 5. * gnu/packages/patches/glog-gcc-5-demangling.patch: New file. * gnu/packages/logging.scm (glog)[sources]: Add it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/logging.scm | 6 ++- gnu/packages/patches/glog-gcc-5-demangling.patch | 64 ++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/glog-gcc-5-demangling.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 5da3590375..15087b1183 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -608,6 +608,7 @@ dist_patch_DATA = \ %D%/packages/patches/glibc-locales.patch \ %D%/packages/patches/glibc-o-largefile.patch \ %D%/packages/patches/glibc-versioned-locpath.patch \ + %D%/packages/patches/glog-gcc-5-demangling.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gnome-tweak-tool-search-paths.patch \ diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm index c40d6ebbaf..d28094c3a8 100644 --- a/gnu/packages/logging.scm +++ b/gnu/packages/logging.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Ricardo Wurmus -;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016, 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +24,7 @@ (define-module (gnu packages logging) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages perl) #:use-module (gnu packages autotools)) @@ -62,7 +63,8 @@ (define-public glog (sha256 (base32 "0ym5g15m7c8kjfr2c3zq6bz08ghin2d1r1nb6v2vnkfh1vn945x1")) - (file-name (string-append name "-" version "-checkout")))) + (file-name (string-append name "-" version "-checkout")) + (patches (search-patches "glog-gcc-5-demangling.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) ;for tests diff --git a/gnu/packages/patches/glog-gcc-5-demangling.patch b/gnu/packages/patches/glog-gcc-5-demangling.patch new file mode 100644 index 0000000000..7f3f42ceca --- /dev/null +++ b/gnu/packages/patches/glog-gcc-5-demangling.patch @@ -0,0 +1,64 @@ +Fix symbol demangling for GCC 5, as reported at: + + https://github.com/google/glog/issues/14 + +Patch from: + + https://github.com/google/glog/pull/50 + +From b1639e3014996fbc7635870e013559c54e7e3b2f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?David=20Mart=C3=ADnez=20Moreno?= +Date: Thu, 13 Aug 2015 09:31:26 -0700 +Subject: [PATCH] Fix ABI demangling for the GCC 5.x case. + +When glog is compiled with gcc-5.2 in cxx11 ABI mode, it barfs about unmangled symbols. This patches it getting inspiration from binutils and demangle.cc itself, although it may be totally wrong or maybe have to use ParseAbiTag in more places. I haven't read the spec for the symbols, though. + +This patch makes the demangle unit test pass correctly. +--- + src/demangle.cc | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/src/demangle.cc b/src/demangle.cc +index e858181..0f0c831 100644 +--- a/src/demangle.cc ++++ b/src/demangle.cc +@@ -439,6 +439,7 @@ static bool ParseExprPrimary(State *state); + static bool ParseLocalName(State *state); + static bool ParseDiscriminator(State *state); + static bool ParseSubstitution(State *state); ++static bool ParseAbiTag(State *state); + + // Implementation note: the following code is a straightforward + // translation of the Itanium C++ ABI defined in BNF with a couple of +@@ -567,6 +568,8 @@ static bool ParseNestedName(State *state) { + static bool ParsePrefix(State *state) { + bool has_something = false; + while (true) { ++ if (ParseAbiTag(state)) ++ continue; + MaybeAppendSeparator(state); + if (ParseTemplateParam(state) || + ParseSubstitution(state) || +@@ -585,6 +588,22 @@ static bool ParsePrefix(State *state) { + return true; + } + ++// ::= B ++static bool ParseAbiTag(State *state) { ++ State copy = *state; ++ ++ Append(state, "[", 1); ++ if (ParseOneCharToken(state, 'B') && ++ ParseSourceName(state)) ++ { ++ Append(state, "]", 1); ++ return true; ++ } ++ ++ *state = copy; ++ return false; ++} ++ + // ::= + // ::= + // ::= -- cgit v1.2.3 From a3dea99107e20e3e50e9b766850254c87accde49 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 4 Apr 2017 17:35:35 +0200 Subject: gnu: python2-cython: Fix build on 32-bit platforms. * gnu/packages/python.scm (python-cython, python2-cython)[source]: Add patch. * gnu/packages/patches/python-cython-fix-tests-32bit.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../patches/python-cython-fix-tests-32bit.patch | 27 ++++++++++++++++++++++ gnu/packages/python.scm | 1 + 3 files changed, 29 insertions(+) create mode 100644 gnu/packages/patches/python-cython-fix-tests-32bit.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 15087b1183..425c233979 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -878,6 +878,7 @@ dist_patch_DATA = \ %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-cython-fix-tests-32bit.patch \ %D%/packages/patches/python-fake-factory-fix-build-32bit.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ diff --git a/gnu/packages/patches/python-cython-fix-tests-32bit.patch b/gnu/packages/patches/python-cython-fix-tests-32bit.patch new file mode 100644 index 0000000000..7ccc11dd4c --- /dev/null +++ b/gnu/packages/patches/python-cython-fix-tests-32bit.patch @@ -0,0 +1,27 @@ +This fixes a test failure on 32-bit platforms. + +Upstream bug URL: https://github.com/cython/cython/issues/1548 + +Patch copied from upstream source repository: + +https://github.com/cython/cython/commit/d92a718a26c9354fbf35f31a17de5c069865a447 + +From d92a718a26c9354fbf35f31a17de5c069865a447 Mon Sep 17 00:00:00 2001 +From: Robert Bradshaw +Date: Tue, 24 Jan 2017 16:57:00 -0800 +Subject: [PATCH] Normalize possible L suffix. + +--- + tests/run/cpdef_enums.pyx | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/run/cpdef_enums.pyx b/tests/run/cpdef_enums.pyx +index 167c762..c264ec5 100644 +--- a/tests/run/cpdef_enums.pyx ++++ b/tests/run/cpdef_enums.pyx +@@ -93,4 +93,4 @@ def verify_resolution_GH1533(): + 3 + """ + THREE = 100 +- return PyxEnum.THREE ++ return int(PyxEnum.THREE) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e9ccc7db28..0746af24a1 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3406,6 +3406,7 @@ (define-public python-cython (origin (method url-fetch) (uri (pypi-uri "Cython" version)) + (patches (search-patches "python-cython-fix-tests-32bit.patch")) (sha256 (base32 "01h3lrf6d98j07iakifi81qjszh6faa37ibx7ylva1vsqbwx2hgi")))) -- cgit v1.2.3 From 4dc12417d2f982016832726b3e644eb3adb43262 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 4 Apr 2017 17:44:57 +0200 Subject: gnu: gnupg: Update to 2.1.20. * gnu/packages/gnupg.scm (gnupg): Update to 2.1.20. [source]: Remove patch. * gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/gnupg.scm | 5 +- .../patches/gnupg-2.1-fix-Y2038-test-failure.patch | 67 ---------------------- 3 files changed, 2 insertions(+), 71 deletions(-) delete mode 100644 gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 425c233979..969bcefeb1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -613,7 +613,6 @@ dist_patch_DATA = \ %D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gnome-tweak-tool-search-paths.patch \ %D%/packages/patches/gnucash-price-quotes-perl.patch \ - %D%/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 532dbf88f7..0c20f9ae54 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -217,15 +217,14 @@ (define-public npth (define-public gnupg (package (name "gnupg") - (version "2.1.19") + (version "2.1.20") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) - (patches (search-patches "gnupg-2.1-fix-Y2038-test-failure.patch")) (sha256 (base32 - "1w4vccmb5l50lm4yrz9vkdj7whbfvzx543r55362kkj1aqgyvk26")))) + "03cnd6gz8f4lf69inskssw57idrswcdimhccdyglmrlv6rlrmkr4")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch b/gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch deleted file mode 100644 index b3a198c499..0000000000 --- a/gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch +++ /dev/null @@ -1,67 +0,0 @@ -Fix a Y2038 test failure on systems where time_t is a signed 32-bit value: - -https://bugs.gnupg.org/gnupg/issue2988 - -Patch copied from upstream source repository: - -https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commit;h=de3838372ae3cdecbd83eea2c53c8e2656d93052 - -From de3838372ae3cdecbd83eea2c53c8e2656d93052 Mon Sep 17 00:00:00 2001 -From: Justus Winter -Date: Tue, 7 Mar 2017 12:18:59 +0100 -Subject: [PATCH] tests: Avoid overflowing signed 32 bit time_t. - -* tests/openpgp/quick-key-manipulation.scm: Use expiration times in -the year 2038 instead of 2105 to avoid overflowing 32 bit time_t. -time_t is used internally to parse the expiraton time from the iso -timestamp. - -GnuPG-bug-id: 2988 -Signed-off-by: Justus Winter ---- - tests/openpgp/quick-key-manipulation.scm | 15 +++++++++++---- - 1 file changed, 11 insertions(+), 4 deletions(-) - -diff --git a/tests/openpgp/quick-key-manipulation.scm b/tests/openpgp/quick-key-manipulation.scm -index 10f0bfe21..08ef62613 100755 ---- a/tests/openpgp/quick-key-manipulation.scm -+++ b/tests/openpgp/quick-key-manipulation.scm -@@ -125,8 +125,13 @@ - (default default never) - (rsa "sign auth encr" "seconds=600") ;; GPGME uses this - (rsa "auth,encr" "2") ;; "without a letter, days is assumed" -- (rsa "sign" "2105-01-01") ;; "last year GnuPG can represent is 2105" -- (rsa "sign" "21050101T115500") ;; "last year GnuPG can represent is 2105" -+ ;; Sadly, the timestamp is truncated by the use of time_t on -+ ;; systems where time_t is a signed 32 bit value. -+ (rsa "sign" "2038-01-01") ;; unix millennium -+ (rsa "sign" "20380101T115500") ;; unix millennium -+ ;; Once fixed, we can use later timestamps: -+ ;; (rsa "sign" "2105-01-01") ;; "last year GnuPG can represent is 2105" -+ ;; (rsa "sign" "21050101T115500") ;; "last year GnuPG can represent is 2105" - (rsa sign "2d") - (rsa1024 sign "2w") - (rsa2048 encr "2m") -@@ -157,7 +162,8 @@ - (lambda (subkey) - (assert (= 1 (:alg subkey))) - (assert (string-contains? (:cap subkey) "s")) -- (assert (time-matches? 4260207600 ;; 2105-01-01 -+ (assert (time-matches? 2145916800 ;; 2038-01-01 -+ ;; 4260207600 ;; 2105-01-01 - (string->number (:expire subkey)) - ;; This is off by 12h, but I guess it just - ;; choses the middle of the day. -@@ -165,7 +171,8 @@ - (lambda (subkey) - (assert (= 1 (:alg subkey))) - (assert (string-contains? (:cap subkey) "s")) -- (assert (time-matches? 4260254100 ;; UTC 2105-01-01 11:55:00 -+ (assert (time-matches? 2145959700 ;; UTC 2038-01-01 11:55:00 -+ ;; 4260254100 ;; UTC 2105-01-01 11:55:00 - (string->number (:expire subkey)) - (minutes->seconds 5)))) - (lambda (subkey) --- -2.12.0 - -- cgit v1.2.3 From fbd6fb1a9d75bd7b5d1df24cb805b7df335b0223 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 7 Apr 2017 00:16:18 -0400 Subject: gnu: qemu: Update to 2.8.1 [security fixes]. Fixes CVE-2016-{9602,9603} and CVE-2017-{2615,2620,2630,5667,5931}. * gnu/packages/qemu.scm (qemu): Update to 2.8.1. * gnu/packages/patches/qemu-CVE-2017-2615.patch, gnu/packages/patches/qemu-CVE-2017-2620.patch, gnu/packages/patches/qemu-CVE-2017-2630.patch, gnu/packages/patches/qemu-CVE-2017-5667.patch, gnu/packages/patches/qemu-CVE-2017-5931.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove them. --- gnu/local.mk | 5 - gnu/packages/patches/qemu-CVE-2017-2615.patch | 52 ---------- gnu/packages/patches/qemu-CVE-2017-2620.patch | 134 -------------------------- gnu/packages/patches/qemu-CVE-2017-2630.patch | 47 --------- gnu/packages/patches/qemu-CVE-2017-5667.patch | 46 --------- gnu/packages/patches/qemu-CVE-2017-5931.patch | 55 ----------- gnu/packages/qemu.scm | 12 +-- 7 files changed, 4 insertions(+), 347 deletions(-) delete mode 100644 gnu/packages/patches/qemu-CVE-2017-2615.patch delete mode 100644 gnu/packages/patches/qemu-CVE-2017-2620.patch delete mode 100644 gnu/packages/patches/qemu-CVE-2017-2630.patch delete mode 100644 gnu/packages/patches/qemu-CVE-2017-5667.patch delete mode 100644 gnu/packages/patches/qemu-CVE-2017-5931.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index f54ab2a455..93bafa282d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -890,18 +890,13 @@ dist_patch_DATA = \ %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \ %D%/packages/patches/python2-subprocess32-disable-input-test.patch \ %D%/packages/patches/qemu-CVE-2016-10155.patch \ - %D%/packages/patches/qemu-CVE-2017-2615.patch \ - %D%/packages/patches/qemu-CVE-2017-2620.patch \ - %D%/packages/patches/qemu-CVE-2017-2630.patch \ %D%/packages/patches/qemu-CVE-2017-5525.patch \ %D%/packages/patches/qemu-CVE-2017-5526.patch \ %D%/packages/patches/qemu-CVE-2017-5552.patch \ %D%/packages/patches/qemu-CVE-2017-5578.patch \ %D%/packages/patches/qemu-CVE-2017-5579.patch \ - %D%/packages/patches/qemu-CVE-2017-5667.patch \ %D%/packages/patches/qemu-CVE-2017-5856.patch \ %D%/packages/patches/qemu-CVE-2017-5898.patch \ - %D%/packages/patches/qemu-CVE-2017-5931.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/rapicorn-isnan.patch \ diff --git a/gnu/packages/patches/qemu-CVE-2017-2615.patch b/gnu/packages/patches/qemu-CVE-2017-2615.patch deleted file mode 100644 index ede1f8c89d..0000000000 --- a/gnu/packages/patches/qemu-CVE-2017-2615.patch +++ /dev/null @@ -1,52 +0,0 @@ -http://git.qemu.org/?p=qemu.git;a=patch;h=62d4c6bd5263bb8413a06c80144fc678df6dfb64 -this patch is from qemu-git. - - -From 62d4c6bd5263bb8413a06c80144fc678df6dfb64 Mon Sep 17 00:00:00 2001 -From: Li Qiang -Date: Wed, 1 Feb 2017 09:35:01 +0100 -Subject: [PATCH] cirrus: fix oob access issue (CVE-2017-2615) - -When doing bitblt copy in backward mode, we should minus the -blt width first just like the adding in the forward mode. This -can avoid the oob access of the front of vga's vram. - -Signed-off-by: Li Qiang - -{ kraxel: with backward blits (negative pitch) addr is the topmost - address, so check it as-is against vram size ] - -Cc: qemu-stable@nongnu.org -Cc: P J P -Cc: Laszlo Ersek -Cc: Paolo Bonzini -Cc: Wolfgang Bumiller -Fixes: d3532a0db02296e687711b8cdc7791924efccea0 (CVE-2014-8106) -Signed-off-by: Gerd Hoffmann -Message-id: 1485938101-26602-1-git-send-email-kraxel@redhat.com -Reviewed-by: Laszlo Ersek ---- - hw/display/cirrus_vga.c | 7 +++---- - 1 file changed, 3 insertions(+), 4 deletions(-) - -diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c -index 7db6409dc5..16f27e8ac5 100644 ---- a/hw/display/cirrus_vga.c -+++ b/hw/display/cirrus_vga.c -@@ -274,10 +274,9 @@ static bool blit_region_is_unsafe(struct CirrusVGAState *s, - { - if (pitch < 0) { - int64_t min = addr -- + ((int64_t)s->cirrus_blt_height-1) * pitch; -- int32_t max = addr -- + s->cirrus_blt_width; -- if (min < 0 || max > s->vga.vram_size) { -+ + ((int64_t)s->cirrus_blt_height - 1) * pitch -+ - s->cirrus_blt_width; -+ if (min < -1 || addr >= s->vga.vram_size) { - return true; - } - } else { --- -2.11.0 - diff --git a/gnu/packages/patches/qemu-CVE-2017-2620.patch b/gnu/packages/patches/qemu-CVE-2017-2620.patch deleted file mode 100644 index d3111827b7..0000000000 --- a/gnu/packages/patches/qemu-CVE-2017-2620.patch +++ /dev/null @@ -1,134 +0,0 @@ -Fix CVE-2017-2620: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2620 -https://lists.gnu.org/archive/html/qemu-devel/2017-02/msg04700.html - -Both patches copied from upstream source repository: - -Fixes CVE-2017-2620: -http://git.qemu-project.org/?p=qemu.git;a=commit;h=92f2b88cea48c6aeba8de568a45f2ed958f3c298 - -The CVE-2017-2620 bug-fix depends on this earlier patch: -http://git.qemu-project.org/?p=qemu.git;a=commit;h=913a87885f589d263e682c2eb6637c6e14538061 - -From 92f2b88cea48c6aeba8de568a45f2ed958f3c298 Mon Sep 17 00:00:00 2001 -From: Gerd Hoffmann -Date: Wed, 8 Feb 2017 11:18:36 +0100 -Subject: [PATCH] cirrus: add blit_is_unsafe call to cirrus_bitblt_cputovideo - (CVE-2017-2620) - -CIRRUS_BLTMODE_MEMSYSSRC blits do NOT check blit destination -and blit width, at all. Oops. Fix it. - -Security impact: high. - -The missing blit destination check allows to write to host memory. -Basically same as CVE-2014-8106 for the other blit variants. - -Cc: qemu-stable@nongnu.org -Signed-off-by: Gerd Hoffmann ---- - hw/display/cirrus_vga.c | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c -index 1deb52070a..b9e7cb1df1 100644 ---- a/hw/display/cirrus_vga.c -+++ b/hw/display/cirrus_vga.c -@@ -900,6 +900,10 @@ static int cirrus_bitblt_cputovideo(CirrusVGAState * s) - { - int w; - -+ if (blit_is_unsafe(s, true)) { -+ return 0; -+ } -+ - s->cirrus_blt_mode &= ~CIRRUS_BLTMODE_MEMSYSSRC; - s->cirrus_srcptr = &s->cirrus_bltbuf[0]; - s->cirrus_srcptr_end = &s->cirrus_bltbuf[0]; -@@ -925,6 +929,10 @@ static int cirrus_bitblt_cputovideo(CirrusVGAState * s) - } - s->cirrus_srccounter = s->cirrus_blt_srcpitch * s->cirrus_blt_height; - } -+ -+ /* the blit_is_unsafe call above should catch this */ -+ assert(s->cirrus_blt_srcpitch <= CIRRUS_BLTBUFSIZE); -+ - s->cirrus_srcptr = s->cirrus_bltbuf; - s->cirrus_srcptr_end = s->cirrus_bltbuf + s->cirrus_blt_srcpitch; - cirrus_update_memory_access(s); --- -2.12.0 - -From 913a87885f589d263e682c2eb6637c6e14538061 Mon Sep 17 00:00:00 2001 -From: Bruce Rogers -Date: Mon, 9 Jan 2017 13:35:20 -0700 -Subject: [PATCH] display: cirrus: ignore source pitch value as needed in - blit_is_unsafe - -Commit 4299b90 added a check which is too broad, given that the source -pitch value is not required to be initialized for solid fill operations. -This patch refines the blit_is_unsafe() check to ignore source pitch in -that case. After applying the above commit as a security patch, we -noticed the SLES 11 SP4 guest gui failed to initialize properly. - -Signed-off-by: Bruce Rogers -Message-id: 20170109203520.5619-1-brogers@suse.com -Signed-off-by: Gerd Hoffmann ---- - hw/display/cirrus_vga.c | 11 +++++++---- - 1 file changed, 7 insertions(+), 4 deletions(-) - -diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c -index bdb092ee9d..379910db2d 100644 ---- a/hw/display/cirrus_vga.c -+++ b/hw/display/cirrus_vga.c -@@ -294,7 +294,7 @@ static bool blit_region_is_unsafe(struct CirrusVGAState *s, - return false; - } - --static bool blit_is_unsafe(struct CirrusVGAState *s) -+static bool blit_is_unsafe(struct CirrusVGAState *s, bool dst_only) - { - /* should be the case, see cirrus_bitblt_start */ - assert(s->cirrus_blt_width > 0); -@@ -308,6 +308,9 @@ static bool blit_is_unsafe(struct CirrusVGAState *s) - s->cirrus_blt_dstaddr & s->cirrus_addr_mask)) { - return true; - } -+ if (dst_only) { -+ return false; -+ } - if (blit_region_is_unsafe(s, s->cirrus_blt_srcpitch, - s->cirrus_blt_srcaddr & s->cirrus_addr_mask)) { - return true; -@@ -673,7 +676,7 @@ static int cirrus_bitblt_common_patterncopy(CirrusVGAState * s, - - dst = s->vga.vram_ptr + (s->cirrus_blt_dstaddr & s->cirrus_addr_mask); - -- if (blit_is_unsafe(s)) -+ if (blit_is_unsafe(s, false)) - return 0; - - (*s->cirrus_rop) (s, dst, src, -@@ -691,7 +694,7 @@ static int cirrus_bitblt_solidfill(CirrusVGAState *s, int blt_rop) - { - cirrus_fill_t rop_func; - -- if (blit_is_unsafe(s)) { -+ if (blit_is_unsafe(s, true)) { - return 0; - } - rop_func = cirrus_fill[rop_to_index[blt_rop]][s->cirrus_blt_pixelwidth - 1]; -@@ -795,7 +798,7 @@ static int cirrus_do_copy(CirrusVGAState *s, int dst, int src, int w, int h) - - static int cirrus_bitblt_videotovideo_copy(CirrusVGAState * s) - { -- if (blit_is_unsafe(s)) -+ if (blit_is_unsafe(s, false)) - return 0; - - return cirrus_do_copy(s, s->cirrus_blt_dstaddr - s->vga.start_addr, --- -2.12.0 - diff --git a/gnu/packages/patches/qemu-CVE-2017-2630.patch b/gnu/packages/patches/qemu-CVE-2017-2630.patch deleted file mode 100644 index b154d171f1..0000000000 --- a/gnu/packages/patches/qemu-CVE-2017-2630.patch +++ /dev/null @@ -1,47 +0,0 @@ -Fix CVE-2017-2630: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2630 -https://lists.gnu.org/archive/html/qemu-devel/2017-02/msg01246.html - -Patch copied from upstream source repository: - -http://git.qemu-project.org/?p=qemu.git;a=commit;h=2563c9c6b8670400c48e562034b321a7cf3d9a85 - -From 2563c9c6b8670400c48e562034b321a7cf3d9a85 Mon Sep 17 00:00:00 2001 -From: Vladimir Sementsov-Ogievskiy -Date: Tue, 7 Mar 2017 09:16:27 -0600 -Subject: [PATCH] nbd/client: fix drop_sync [CVE-2017-2630] -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Comparison symbol is misused. It may lead to memory corruption. -Introduced in commit 7d3123e. - -Signed-off-by: Vladimir Sementsov-Ogievskiy -Message-Id: <20170203154757.36140-6-vsementsov@virtuozzo.com> -[eblake: add CVE details, update conditional] -Signed-off-by: Eric Blake -Reviewed-by: Marc-André Lureau -Message-Id: <20170307151627.27212-1-eblake@redhat.com> -Signed-off-by: Paolo Bonzini ---- - nbd/client.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/nbd/client.c b/nbd/client.c -index 5c9dee37fa..3dc2564cd0 100644 ---- a/nbd/client.c -+++ b/nbd/client.c -@@ -94,7 +94,7 @@ static ssize_t drop_sync(QIOChannel *ioc, size_t size) - char small[1024]; - char *buffer; - -- buffer = sizeof(small) < size ? small : g_malloc(MIN(65536, size)); -+ buffer = sizeof(small) >= size ? small : g_malloc(MIN(65536, size)); - while (size > 0) { - ssize_t count = read_sync(ioc, buffer, MIN(65536, size)); - --- -2.12.0 - diff --git a/gnu/packages/patches/qemu-CVE-2017-5667.patch b/gnu/packages/patches/qemu-CVE-2017-5667.patch deleted file mode 100644 index 5adea0d278..0000000000 --- a/gnu/packages/patches/qemu-CVE-2017-5667.patch +++ /dev/null @@ -1,46 +0,0 @@ -Fix CVE-2017-5667 (sdhci OOB access during multi block SDMA transfer): - -http://seclists.org/oss-sec/2017/q1/243 -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5667 - -Patch copied from upstream source repository: - -http://git.qemu-project.org/?p=qemu.git;a=commitdiff;h=42922105beb14c2fc58185ea022b9f72fb5465e9 - -From 42922105beb14c2fc58185ea022b9f72fb5465e9 Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Tue, 7 Feb 2017 18:29:59 +0000 -Subject: [PATCH] sd: sdhci: check data length during dma_memory_read - -While doing multi block SDMA transfer in routine -'sdhci_sdma_transfer_multi_blocks', the 's->fifo_buffer' starting -index 'begin' and data length 's->data_count' could end up to be same. -This could lead to an OOB access issue. Correct transfer data length -to avoid it. - -Cc: qemu-stable@nongnu.org -Reported-by: Jiang Xin -Signed-off-by: Prasad J Pandit -Reviewed-by: Peter Maydell -Message-id: 20170130064736.9236-1-ppandit@redhat.com -Signed-off-by: Peter Maydell ---- - hw/sd/sdhci.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c -index 01fbf228be..5bd5ab6319 100644 ---- a/hw/sd/sdhci.c -+++ b/hw/sd/sdhci.c -@@ -536,7 +536,7 @@ static void sdhci_sdma_transfer_multi_blocks(SDHCIState *s) - boundary_count -= block_size - begin; - } - dma_memory_read(&address_space_memory, s->sdmasysad, -- &s->fifo_buffer[begin], s->data_count); -+ &s->fifo_buffer[begin], s->data_count - begin); - s->sdmasysad += s->data_count - begin; - if (s->data_count == block_size) { - for (n = 0; n < block_size; n++) { --- -2.11.1 - diff --git a/gnu/packages/patches/qemu-CVE-2017-5931.patch b/gnu/packages/patches/qemu-CVE-2017-5931.patch deleted file mode 100644 index 08910e5fac..0000000000 --- a/gnu/packages/patches/qemu-CVE-2017-5931.patch +++ /dev/null @@ -1,55 +0,0 @@ -Fix CVE-2017-5931 (integer overflow in handling virtio-crypto requests): - -http://seclists.org/oss-sec/2017/q1/337 -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5931 - -Patch copied from upstream source repository: - -http://git.qemu-project.org/?p=qemu.git;a=commit;h=a08aaff811fb194950f79711d2afe5a892ae03a4 - -From a08aaff811fb194950f79711d2afe5a892ae03a4 Mon Sep 17 00:00:00 2001 -From: Gonglei -Date: Tue, 3 Jan 2017 14:50:03 +0800 -Subject: [PATCH] virtio-crypto: fix possible integer and heap overflow - -Because the 'size_t' type is 4 bytes in 32-bit platform, which -is the same with 'int'. It's easy to make 'max_len' to zero when -integer overflow and then cause heap overflow if 'max_len' is zero. - -Using uint_64 instead of size_t to avoid the integer overflow. - -Cc: qemu-stable@nongnu.org -Reported-by: Li Qiang -Signed-off-by: Gonglei -Tested-by: Li Qiang -Reviewed-by: Michael S. Tsirkin -Signed-off-by: Michael S. Tsirkin ---- - hw/virtio/virtio-crypto.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/hw/virtio/virtio-crypto.c b/hw/virtio/virtio-crypto.c -index 2f2467e859..c23e1ad458 100644 ---- a/hw/virtio/virtio-crypto.c -+++ b/hw/virtio/virtio-crypto.c -@@ -416,7 +416,7 @@ virtio_crypto_sym_op_helper(VirtIODevice *vdev, - uint32_t hash_start_src_offset = 0, len_to_hash = 0; - uint32_t cipher_start_src_offset = 0, len_to_cipher = 0; - -- size_t max_len, curr_size = 0; -+ uint64_t max_len, curr_size = 0; - size_t s; - - /* Plain cipher */ -@@ -441,7 +441,7 @@ virtio_crypto_sym_op_helper(VirtIODevice *vdev, - return NULL; - } - -- max_len = iv_len + aad_len + src_len + dst_len + hash_result_len; -+ max_len = (uint64_t)iv_len + aad_len + src_len + dst_len + hash_result_len; - if (unlikely(max_len > vcrypto->conf.max_size)) { - virtio_error(vdev, "virtio-crypto too big length"); - return NULL; --- -2.11.1 - diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm index aa12b2c493..e0b4695f3a 100644 --- a/gnu/packages/qemu.scm +++ b/gnu/packages/qemu.scm @@ -69,27 +69,23 @@ (define (qemu-patch commit file-name sha256) (define-public qemu (package (name "qemu") - (version "2.8.0") + (version "2.8.1") (source (origin (method url-fetch) (uri (string-append "http://wiki.qemu-project.org/download/qemu-" - version ".tar.bz2")) + version ".tar.xz")) (sha256 (base32 - "0qjy3rcrn89n42y5iz60kgr0rrl29hpnj8mq2yvbc1wrcizmvzfs")) + "0h342v4n44kh89yyfas4iazvhhsy5m5qk94vsjqpz5zpq1i2ykad")) (patches (search-patches "qemu-CVE-2016-10155.patch" - "qemu-CVE-2017-2615.patch" - "qemu-CVE-2017-2620.patch" - "qemu-CVE-2017-2630.patch" "qemu-CVE-2017-5525.patch" "qemu-CVE-2017-5526.patch" "qemu-CVE-2017-5552.patch" "qemu-CVE-2017-5578.patch" "qemu-CVE-2017-5579.patch" - "qemu-CVE-2017-5667.patch" "qemu-CVE-2017-5856.patch" "qemu-CVE-2017-5898.patch" - "qemu-CVE-2017-5931.patch")))) + )))) (build-system gnu-build-system) (arguments '(;; Running tests in parallel can occasionally lead to failures, like: -- cgit v1.2.3 From b496bfea415750d710dd3ead4bc2ded9d4a6e71d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 25 Jan 2017 00:22:19 -0500 Subject: gnu: lz4: Update to 1.7.5. * gnu/packages/compression.scm (lz4): Update to 1.7.5. [source]: Update source URL. Use patch 'lz4-fix-test-failures.patch'. [home-page]: Update URL. * gnu/packages/patches/lz4-fix-test-failures.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/compression.scm | 12 +- gnu/packages/patches/lz4-fix-test-failures.patch | 136 +++++++++++++++++++++++ 3 files changed, 144 insertions(+), 5 deletions(-) create mode 100644 gnu/packages/patches/lz4-fix-test-failures.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 93bafa282d..ac6a596923 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -759,6 +759,7 @@ dist_patch_DATA = \ %D%/packages/patches/luit-posix.patch \ %D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \ + %D%/packages/patches/lz4-fix-test-failures.patch \ %D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/mars-install.patch \ %D%/packages/patches/mars-sfml-2.3.patch \ diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 5404f66ecf..4793755c21 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015, 2016 Eric Bavier ;;; Copyright © 2015, 2016 Ricardo Wurmus -;;; Copyright © 2015 Leo Famulari +;;; Copyright © 2015, 2017 Leo Famulari ;;; Copyright © 2015 Jeff Mickey ;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Ben Woodcroft @@ -673,14 +673,16 @@ (define-public perl-io-compress (define-public lz4 (package (name "lz4") - (version "1.7.4.2") + (version "1.7.5") (source (origin (method url-fetch) - (uri (string-append "https://github.com/Cyan4973/lz4/archive/" + (uri (string-append "https://github.com/lz4/lz4/archive/" "v" version ".tar.gz")) + (patches (search-patches "lz4-fix-test-failures.patch")) (sha256 - (base32 "0l39bymif15rmmfz7h6wvrr853rix4wj8wbqq8z8fm49xa7gx9fb")) + (base32 + "0zkykqqjfa1q3ji0qmb1ml3l9063qqfh99agyj3cnb02cg6wm401")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (native-inputs `(("valgrind" ,valgrind))) ; for tests @@ -691,7 +693,7 @@ (define-public lz4 (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) ; no configure script - (home-page "https://github.com/Cyan4973/lz4") + (home-page "https://github.com/lz4/lz4") (synopsis "Compression algorithm focused on speed") (description "LZ4 is a lossless compression algorithm, providing compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an diff --git a/gnu/packages/patches/lz4-fix-test-failures.patch b/gnu/packages/patches/lz4-fix-test-failures.patch new file mode 100644 index 0000000000..d38357d402 --- /dev/null +++ b/gnu/packages/patches/lz4-fix-test-failures.patch @@ -0,0 +1,136 @@ +These two patches fix some bugs in lz4's test suite: + +https://github.com/lz4/lz4/issues/308 + +Patches copied from upstream source repository: + +https://github.com/lz4/lz4/commit/b89cac7b2e92b792af98bb0a12e4d14684d07629 +https://github.com/lz4/lz4/commit/0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 + +From b89cac7b2e92b792af98bb0a12e4d14684d07629 Mon Sep 17 00:00:00 2001 +From: Eric Siegerman +Date: Tue, 14 Feb 2017 14:17:06 -0500 +Subject: [PATCH] Don't use "foo && false || true" + +Replace it with either: + test ! -f $FILE_THAT_SHOULD_NOT_EXIST +or: + ! $COMMAND_THAT_SHOULD_FAIL + +as appropriate. +--- + tests/Makefile | 38 +++++++++++++++++++------------------- + 1 file changed, 19 insertions(+), 19 deletions(-) + +diff --git a/tests/Makefile b/tests/Makefile +index 77e6ae7..ebab278 100644 +--- a/tests/Makefile ++++ b/tests/Makefile +@@ -236,17 +236,17 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat + ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t + @echo "hello world" > tmp + $(LZ4) --rm -f tmp +- ls -ls tmp && false || true # must fail (--rm) +- ls -ls tmp.lz4 +- $(PRGDIR)/lz4cat tmp.lz4 # must display hello world +- ls -ls tmp.lz4 ++ test ! -f tmp # must fail (--rm) ++ test -f tmp.lz4 ++ $(PRGDIR)/lz4cat tmp.lz4 # must display hello world ++ test -f tmp.lz4 + $(PRGDIR)/unlz4 --rm tmp.lz4 +- ls -ls tmp +- ls -ls tmp.lz4 && false || true # must fail (--rm) +- ls -ls tmp.lz4.lz4 && false || true # must fail (unlz4) +- $(PRGDIR)/lz4cat tmp # pass-through mode +- ls -ls tmp +- ls -ls tmp.lz4 && false || true # must fail (lz4cat) ++ test -f tmp ++ test ! -f tmp.lz4 # must fail (--rm) ++ test ! -f tmp.lz4.lz4 # must fail (unlz4) ++ $(PRGDIR)/lz4cat tmp # pass-through mode ++ test -f tmp ++ test ! -f tmp.lz4 # must fail (lz4cat) + $(LZ4) tmp # creates tmp.lz4 + $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) + $(DIFF) -q tmp tmp3 +@@ -262,22 +262,22 @@ test-lz4-hugefile: lz4 datagen + + test-lz4-testmode: lz4 datagen + @echo "\n ---- bench mode ----" +- $(LZ4) -bi1 ++ $(LZ4) -bi1 + @echo "\n ---- test mode ----" +- ./datagen | $(LZ4) -t && false || true +- ./datagen | $(LZ4) -tf && false || true ++ ! ./datagen | $(LZ4) -t ++ ! ./datagen | $(LZ4) -tf + @echo "\n ---- pass-through mode ----" +- ./datagen | $(LZ4) -d > $(VOID) && false || true +- ./datagen | $(LZ4) -df > $(VOID) ++ ! ./datagen | $(LZ4) -d > $(VOID) ++ ./datagen | $(LZ4) -df > $(VOID) + @echo "Hello World !" > tmp1 + $(LZ4) -dcf tmp1 + @echo "from underground..." > tmp2 + $(LZ4) -dcfm tmp1 tmp2 + @echo "\n ---- test cli ----" +- $(LZ4) file-does-not-exist && false || true +- $(LZ4) -f file-does-not-exist && false || true +- $(LZ4) -fm file1-dne file2-dne && false || true +- $(LZ4) -fm file1-dne file2-dne && false || true ++ ! $(LZ4) file-does-not-exist ++ ! $(LZ4) -f file-does-not-exist ++ ! $(LZ4) -fm file1-dne file2-dne ++ ! $(LZ4) -fm file1-dne file2-dne + + test-lz4-opt-parser: lz4 datagen + @echo "\n ---- test opt-parser ----" +-- +2.12.2 + +From 0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 Mon Sep 17 00:00:00 2001 +From: "Dmitry V. Levin" +Date: Sun, 5 Mar 2017 23:20:10 +0000 +Subject: [PATCH] Fix test-lz4-basic + +When no output filename is specified and stdout is not a terminal, +lz4 doesn't attempt to guess an output filename and uses stdout for +output. + +This change fixes test-lz4-basic when run without a terminal +by specifying output filenames. +--- + tests/Makefile | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/tests/Makefile b/tests/Makefile +index ebab278..d68c700 100644 +--- a/tests/Makefile ++++ b/tests/Makefile +@@ -235,19 +235,19 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat + ./datagen -g33M | $(LZ4) --no-frame-crc | $(LZ4) -t + ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t + @echo "hello world" > tmp +- $(LZ4) --rm -f tmp ++ $(LZ4) --rm -f tmp tmp.lz4 + test ! -f tmp # must fail (--rm) + test -f tmp.lz4 + $(PRGDIR)/lz4cat tmp.lz4 # must display hello world + test -f tmp.lz4 +- $(PRGDIR)/unlz4 --rm tmp.lz4 ++ $(PRGDIR)/unlz4 --rm tmp.lz4 tmp + test -f tmp + test ! -f tmp.lz4 # must fail (--rm) + test ! -f tmp.lz4.lz4 # must fail (unlz4) + $(PRGDIR)/lz4cat tmp # pass-through mode + test -f tmp + test ! -f tmp.lz4 # must fail (lz4cat) +- $(LZ4) tmp # creates tmp.lz4 ++ $(LZ4) tmp tmp.lz4 # creates tmp.lz4 + $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) + $(DIFF) -q tmp tmp3 + $(PRGDIR)/lz4cat < tmp > tmp2 # checks lz4cat works with stdin (#285) +-- +2.12.2 + -- cgit v1.2.3 From ea240de4af85ae8ecc0c1afcd4778e01a88e6f5c Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 8 Apr 2017 15:52:13 -0400 Subject: screen: Fix info page build failure. * gnu/packages/patches/screen-fix-info-syntax-error.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/screen.scm (screen)[source]: Use it. --- gnu/local.mk | 1 + .../patches/screen-fix-info-syntax-error.patch | 47 ++++++++++++++++++++++ gnu/packages/screen.scm | 1 + 3 files changed, 49 insertions(+) create mode 100644 gnu/packages/patches/screen-fix-info-syntax-error.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index ac6a596923..a8d0066019 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -916,6 +916,7 @@ dist_patch_DATA = \ %D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\ %D%/packages/patches/scheme48-tests.patch \ %D%/packages/patches/scotch-test-threading.patch \ + %D%/packages/patches/screen-fix-info-syntax-error.patch \ %D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/seq24-rename-mutex.patch \ %D%/packages/patches/serf-comment-style-fix.patch \ diff --git a/gnu/packages/patches/screen-fix-info-syntax-error.patch b/gnu/packages/patches/screen-fix-info-syntax-error.patch new file mode 100644 index 0000000000..6ee9091daa --- /dev/null +++ b/gnu/packages/patches/screen-fix-info-syntax-error.patch @@ -0,0 +1,47 @@ +Fix errors when building the info manual: + +[...] +./screen.texinfo:5799: unknown command `suse' +./screen.texinfo:5800: unknown command `deuxchevaux' +make[2]: *** [Makefile:31: screen.info] Error 1 +[...] + +Patch copied from upstream source repository: + +http://git.savannah.gnu.org/cgit/screen.git/commit/?id=a7d2f9e6ecfa794dd0bd3dbeaf6780c88a6f3152 + +From a7d2f9e6ecfa794dd0bd3dbeaf6780c88a6f3152 Mon Sep 17 00:00:00 2001 +From: Andreas Stieger +Date: Tue, 28 Feb 2017 19:23:01 +0100 +Subject: [PATCH] fix texinfo syntax errors + +thanks to Andreas Stieger +--- + src/doc/screen.texinfo | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/doc/screen.texinfo b/src/doc/screen.texinfo +index bc4cbae..aadad33 100644 +--- a/doc/screen.texinfo ++++ b/doc/screen.texinfo +@@ -5795,7 +5795,7 @@ and Alexander Naumov . + Contributors @* + ============ + +-@example ++@verbatim + Thomas Renninger , + Axel Beckert , + Ken Beal , +@@ -5826,7 +5826,7 @@ Contributors @* + Jason Merrill , + Johannes Zellner , + Pablo Averbuj . +-@end example ++@end verbatim + + @noindent + Version @* +-- +cgit v1.0-41-gc330 + diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index f5c914e88a..5ab5351e35 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -40,6 +40,7 @@ (define-public screen (method url-fetch) (uri (string-append "mirror://gnu/screen/screen-" version ".tar.gz")) + (patches (search-patches "screen-fix-info-syntax-error.patch")) (sha256 (base32 "0bbv16gpxrh64sn4bvjy3qjy7jsxjlqlilyysin02fwnvla23nwp")))) (build-system gnu-build-system) -- cgit v1.2.3 From 18d0cec29e22cdbc27c486129d1a1425de27f03f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 10 Apr 2017 15:29:28 +0200 Subject: gnu: pcre2: Patch CVE-2017-7186. * gnu/packages/patches/pcre2-CVE-2017-7186.patch: New file. * gnu/packages/pcre.scm (pcre2)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/patches/pcre2-CVE-2017-7186.patch | 68 ++++++++++++++++++++++++++ gnu/packages/pcre.scm | 3 +- 3 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/pcre2-CVE-2017-7186.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index a8d0066019..c3a65789a3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -825,6 +825,7 @@ dist_patch_DATA = \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ + %D%/packages/patches/pcre2-CVE-2017-7186.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \ %D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \ diff --git a/gnu/packages/patches/pcre2-CVE-2017-7186.patch b/gnu/packages/patches/pcre2-CVE-2017-7186.patch new file mode 100644 index 0000000000..5c16955aaa --- /dev/null +++ b/gnu/packages/patches/pcre2-CVE-2017-7186.patch @@ -0,0 +1,68 @@ +Patch for +taken from . + +--- trunk/src/pcre2_internal.h 2016/11/19 12:46:24 600 ++++ trunk/src/pcre2_internal.h 2017/02/24 18:25:32 670 +@@ -1774,10 +1774,17 @@ + /* UCD access macros */ + + #define UCD_BLOCK_SIZE 128 +-#define GET_UCD(ch) (PRIV(ucd_records) + \ ++#define REAL_GET_UCD(ch) (PRIV(ucd_records) + \ + PRIV(ucd_stage2)[PRIV(ucd_stage1)[(int)(ch) / UCD_BLOCK_SIZE] * \ + UCD_BLOCK_SIZE + (int)(ch) % UCD_BLOCK_SIZE]) + ++#if PCRE2_CODE_UNIT_WIDTH == 32 ++#define GET_UCD(ch) ((ch > MAX_UTF_CODE_POINT)? \ ++ PRIV(dummy_ucd_record) : REAL_GET_UCD(ch)) ++#else ++#define GET_UCD(ch) REAL_GET_UCD(ch) ++#endif ++ + #define UCD_CHARTYPE(ch) GET_UCD(ch)->chartype + #define UCD_SCRIPT(ch) GET_UCD(ch)->script + #define UCD_CATEGORY(ch) PRIV(ucp_gentype)[UCD_CHARTYPE(ch)] +@@ -1834,6 +1841,9 @@ + #define _pcre2_default_compile_context PCRE2_SUFFIX(_pcre2_default_compile_context_) + #define _pcre2_default_match_context PCRE2_SUFFIX(_pcre2_default_match_context_) + #define _pcre2_default_tables PCRE2_SUFFIX(_pcre2_default_tables_) ++#if PCRE2_CODE_UNIT_WIDTH == 32 ++#define _pcre2_dummy_ucd_record PCRE2_SUFFIX(_pcre2_dummy_ucd_record_) ++#endif + #define _pcre2_hspace_list PCRE2_SUFFIX(_pcre2_hspace_list_) + #define _pcre2_vspace_list PCRE2_SUFFIX(_pcre2_vspace_list_) + #define _pcre2_ucd_caseless_sets PCRE2_SUFFIX(_pcre2_ucd_caseless_sets_) +@@ -1858,6 +1868,9 @@ + extern const uint32_t PRIV(vspace_list)[]; + extern const uint32_t PRIV(ucd_caseless_sets)[]; + extern const ucd_record PRIV(ucd_records)[]; ++#if PCRE2_CODE_UNIT_WIDTH == 32 ++extern const ucd_record PRIV(dummy_ucd_record)[]; ++#endif + extern const uint8_t PRIV(ucd_stage1)[]; + extern const uint16_t PRIV(ucd_stage2)[]; + extern const uint32_t PRIV(ucp_gbtable)[]; + +--- trunk/src/pcre2_ucd.c 2015/07/17 15:44:51 316 ++++ trunk/src/pcre2_ucd.c 2017/02/24 18:25:32 670 +@@ -41,6 +41,20 @@ + + const char *PRIV(unicode_version) = "8.0.0"; + ++/* If the 32-bit library is run in non-32-bit mode, character values ++greater than 0x10ffff may be encountered. For these we set up a ++special record. */ ++ ++#if PCRE2_CODE_UNIT_WIDTH == 32 ++const ucd_record PRIV(dummy_ucd_record)[] = {{ ++ ucp_Common, /* script */ ++ ucp_Cn, /* type unassigned */ ++ ucp_gbOther, /* grapheme break property */ ++ 0, /* case set */ ++ 0, /* other case */ ++ }}; ++#endif ++ + /* When recompiling tables with a new Unicode version, please check the + types in this structure definition from pcre2_internal.h (the actual + field names will be different): diff --git a/gnu/packages/pcre.scm b/gnu/packages/pcre.scm index 011a30dd38..9f610e59fd 100644 --- a/gnu/packages/pcre.scm +++ b/gnu/packages/pcre.scm @@ -81,7 +81,8 @@ (define-public pcre2 (sha256 (base32 - "0vn5g0mkkp99mmzpissa06hpyj6pk9s4mlwbjqrjvw3ihy8rpiyz")))) + "0vn5g0mkkp99mmzpissa06hpyj6pk9s4mlwbjqrjvw3ihy8rpiyz")) + (patches (search-patches "pcre2-CVE-2017-7186.patch")))) (build-system gnu-build-system) (inputs `(("bzip2" ,bzip2) ("readline" ,readline) -- cgit v1.2.3 From a97f0ee1368499dc40ea30002fcb6e06c7880acb Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 10 Apr 2017 15:35:24 +0200 Subject: gnu: pcre: Patch CVE-2017-7186. * gnu/packages/patches/pcre-CVE-2017-7186.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/pcre.scm (pcre)[replacement]: New field. (pcre/fixed): New variable. --- gnu/local.mk | 1 + gnu/packages/patches/pcre-CVE-2017-7186.patch | 56 +++++++++++++++++++++++++++ gnu/packages/pcre.scm | 10 +++++ 3 files changed, 67 insertions(+) create mode 100644 gnu/packages/patches/pcre-CVE-2017-7186.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index c3a65789a3..5782f83908 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -825,6 +825,7 @@ dist_patch_DATA = \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ + %D%/packages/patches/pcre-CVE-2017-7186.patch \ %D%/packages/patches/pcre2-CVE-2017-7186.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \ diff --git a/gnu/packages/patches/pcre-CVE-2017-7186.patch b/gnu/packages/patches/pcre-CVE-2017-7186.patch new file mode 100644 index 0000000000..d23aa10374 --- /dev/null +++ b/gnu/packages/patches/pcre-CVE-2017-7186.patch @@ -0,0 +1,56 @@ +Patch for +from . + +--- trunk/pcre_internal.h 2016/05/21 13:34:44 1649 ++++ trunk/pcre_internal.h 2017/02/24 17:30:30 1688 +@@ -2772,6 +2772,9 @@ + extern const pcre_uint16 PRIV(ucd_stage2)[]; + extern const pcre_uint32 PRIV(ucp_gentype)[]; + extern const pcre_uint32 PRIV(ucp_gbtable)[]; ++#ifdef COMPILE_PCRE32 ++extern const ucd_record PRIV(dummy_ucd_record)[]; ++#endif + #ifdef SUPPORT_JIT + extern const int PRIV(ucp_typerange)[]; + #endif +@@ -2780,9 +2783,15 @@ + /* UCD access macros */ + + #define UCD_BLOCK_SIZE 128 +-#define GET_UCD(ch) (PRIV(ucd_records) + \ ++#define REAL_GET_UCD(ch) (PRIV(ucd_records) + \ + PRIV(ucd_stage2)[PRIV(ucd_stage1)[(int)(ch) / UCD_BLOCK_SIZE] * \ + UCD_BLOCK_SIZE + (int)(ch) % UCD_BLOCK_SIZE]) ++ ++#ifdef COMPILE_PCRE32 ++#define GET_UCD(ch) ((ch > 0x10ffff)? PRIV(dummy_ucd_record) : REAL_GET_UCD(ch)) ++#else ++#define GET_UCD(ch) REAL_GET_UCD(ch) ++#endif + + #define UCD_CHARTYPE(ch) GET_UCD(ch)->chartype + #define UCD_SCRIPT(ch) GET_UCD(ch)->script + +--- trunk/pcre_ucd.c 2014/06/19 07:51:39 1490 ++++ trunk/pcre_ucd.c 2017/02/24 17:30:30 1688 +@@ -38,6 +38,20 @@ + const pcre_uint32 PRIV(ucd_caseless_sets)[] = {0}; + #else + ++/* If the 32-bit library is run in non-32-bit mode, character values ++greater than 0x10ffff may be encountered. For these we set up a ++special record. */ ++ ++#ifdef COMPILE_PCRE32 ++const ucd_record PRIV(dummy_ucd_record)[] = {{ ++ ucp_Common, /* script */ ++ ucp_Cn, /* type unassigned */ ++ ucp_gbOther, /* grapheme break property */ ++ 0, /* case set */ ++ 0, /* other case */ ++ }}; ++#endif ++ + /* When recompiling tables with a new Unicode version, please check the + types in this structure definition from pcre_internal.h (the actual + field names will be different): diff --git a/gnu/packages/pcre.scm b/gnu/packages/pcre.scm index 9f610e59fd..1946f5229c 100644 --- a/gnu/packages/pcre.scm +++ b/gnu/packages/pcre.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,6 +34,7 @@ (define-public pcre (package (name "pcre") (version "8.40") + (replacement pcre/fixed) (source (origin (method url-fetch) (uri (list @@ -70,6 +72,14 @@ (define-public pcre (license license:bsd-3) (home-page "http://www.pcre.org/"))) +(define pcre/fixed + (package + (inherit pcre) + (replacement #f) + (source (origin + (inherit (package-source pcre)) + (patches (search-patches "pcre-CVE-2017-7186.patch")))))) + (define-public pcre2 (package (name "pcre2") -- cgit v1.2.3 From e79bfa181a91f15e93d7de6bd8691e4b77fbe678 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 11 Apr 2017 15:37:48 +0200 Subject: gnu: Add Luminance HDR. * gnu/packages/image-viewers.scm (luminance-hdr): New variable. * gnu/packages/patches/luminance-hdr-qt-printer.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/image-viewers.scm | 74 +++++++++++++++++++++- .../patches/luminance-hdr-qt-printer.patch | 28 ++++++++ 3 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/luminance-hdr-qt-printer.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index d755d8248e..f3a4e54afa 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -757,6 +757,7 @@ dist_patch_DATA = \ %D%/packages/patches/luajit-no_ldconfig.patch \ %D%/packages/patches/luajit-symlinks.patch \ %D%/packages/patches/luit-posix.patch \ + %D%/packages/patches/luminance-hdr-qt-printer.patch \ %D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \ %D%/packages/patches/lz4-fix-test-failures.patch \ diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index a7e108a292..830ce10ea6 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Ludovic Courtès +;;; Copyright © 2013, 2017 Ludovic Courtès ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2015, 2016 Alex Kost ;;; Copyright © 2016 Efraim Flashner @@ -29,17 +29,24 @@ (define-module (gnu packages image-viewers) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (gnu packages autotools) + #:use-module (gnu packages algebra) #:use-module (gnu packages base) + #:use-module (gnu packages boost) + #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages graphics) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) + #:use-module (gnu packages maths) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages qt) + #:use-module (gnu packages xorg) + #:use-module (gnu packages)) (define-public feh (package @@ -290,3 +297,66 @@ (define-public catimg "Catimg is a little program that prints images in the terminal. It supports JPEG, PNG and GIF formats.") (license license:expat))) + +(define-public luminance-hdr + (package + (name "luminance-hdr") + (version "2.4.0") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/qtpfsgui/luminance/" + version "/luminance-hdr-" version ".tar.bz2")) + (sha256 + (base32 + "00fldbcizrx8jcnjgq74n3zmbm27dxzl96fxa7q49689mfnlw08l")) + (patches (search-patches "luminance-hdr-qt-printer.patch")))) + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtwebkit" ,qtwebkit) + ("boost" ,boost) + ;; ("gtest" ,gtest) + ("libraw" ,libraw) + ("zlib" ,zlib) + ("exiv2" ,exiv2) + ("libpng" ,libpng) + ("libjpeg" ,libjpeg) + ("lcms" ,lcms) + ("openexr" ,openexr) + ("fftw" ,fftwf) + ("gsl" ,gsl) + ("libtiff" ,libtiff))) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'set-paths 'add-ilmbase-include-path + (lambda* (#:key inputs #:allow-other-keys) + ;; 'OpenEXR.pc' has a -I for IlmBase but 'FindOpenEXR.cmake' does + ;; not use 'OpenEXR.pc'. Thus, we need to add + ;; "$ilmbase/include/OpenEXR/" to the CPATH. + (setenv "CPATH" + (string-append (assoc-ref inputs "ilmbase") + "/include/OpenEXR" + ":" (or (getenv "CPATH") ""))) + #t))))) + (home-page "http://qtpfsgui.sourceforge.net") + (synopsis "High dynamic range (HDR) imaging application") + (description + "Luminance HDR (formerly QtPFSGui) is a graphical user interface +application that aims to provide a workflow for high dynamic range (HDR) +imaging. It supports several HDR and LDR image formats, and it can: + +@itemize +@item Create an HDR file from a set of images (formats: JPEG, TIFF 8bit and +16bit, RAW) of the same scene taken at different exposure setting; +@item Save load HDR images; +@item Rotate, resize and crop HDR images; +@item Tone-map HDR images; +@item Copy EXIF data between sets of images. +@end itemize\n") + (license license:gpl2+))) diff --git a/gnu/packages/patches/luminance-hdr-qt-printer.patch b/gnu/packages/patches/luminance-hdr-qt-printer.patch new file mode 100644 index 0000000000..c65f9537cd --- /dev/null +++ b/gnu/packages/patches/luminance-hdr-qt-printer.patch @@ -0,0 +1,28 @@ +Allow the 'QtPrinter' header to be found, as described +at . + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fbad8a2..8379c8a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -29,6 +29,7 @@ find_package(Qt5Xml) + find_package(Qt5Sql) + find_package(Qt5Network) + find_package(Qt5LinguistTools) ++find_package(Qt5PrintSupport REQUIRED) + IF(WIN32) + find_package(Qt5WinExtras) + ENDIF() +diff --git a/src/HelpBrowser/CMakeLists.txt b/src/HelpBrowser/CMakeLists.txt +index 04319a8..5537dae 100644 +--- a/src/HelpBrowser/CMakeLists.txt ++++ b/src/HelpBrowser/CMakeLists.txt +@@ -29,7 +29,7 @@ QT5_WRAP_UI(FILES_UI_H ${FILES_UI}) + + + ADD_LIBRARY(helpbrowser ${FILES_H} ${FILES_CPP} ${FILES_MOC} ${FILES_UI_H} ${FILES_HXX}) +-qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebKit WebKitWidgets) ++qt5_use_modules(helpbrowser Core Concurrent Gui Widgets Xml WebKit WebKitWidgets PrintSupport) + + SET(FILES_TO_TRANSLATE ${FILES_TO_TRANSLATE} ${FILES_CPP} ${FILES_H} ${FILES_UI} ${FILES_HXX} PARENT_SCOPE) + SET(LUMINANCE_MODULES_GUI ${LUMINANCE_MODULES_GUI} helpbrowser PARENT_SCOPE) -- cgit v1.2.3 From 0adb47bdc7d15e53b8c4c443ad19ebdfcc4177a0 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 11 Apr 2017 00:36:07 -0400 Subject: gnu: dovecot: Update to 2.2.29 [fixes CVE-2017-2669]. * gnu/packages/mail.scm (dovecot): Update to 2.2.29. [source]: Use 'dovecot-fix-failing-test.patch'. * gnu/packages/patches/dovecot-fix-failing-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/mail.scm | 8 +- .../patches/dovecot-fix-failing-test.patch | 118 +++++++++++++++++++++ 3 files changed, 124 insertions(+), 3 deletions(-) create mode 100644 gnu/packages/patches/dovecot-fix-failing-test.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index f3a4e54afa..212228d5c2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -539,6 +539,7 @@ dist_patch_DATA = \ %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ + %D%/packages/patches/dovecot-fix-failing-test.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ %D%/packages/patches/elixir-disable-failing-tests.patch \ diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 49fdb32e8d..1a6c505efd 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1086,15 +1086,17 @@ (define-public exim (define-public dovecot (package (name "dovecot") - (version "2.2.28") + (version "2.2.29") (source (origin (method url-fetch) (uri (string-append "https://www.dovecot.org/releases/" (version-major+minor version) "/" name "-" version ".tar.gz")) - (sha256 (base32 - "098zpkmkk93372qnv6drgbfg8hp5mynspzc1735qgar6wdcqya70")))) + (patches (search-patches "dovecot-fix-failing-test.patch")) + (sha256 + (base32 + "19irf7b5mjqq68mrpdd38gxc0zp2nqib942kjp3aif3f2acylffr")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/patches/dovecot-fix-failing-test.patch b/gnu/packages/patches/dovecot-fix-failing-test.patch new file mode 100644 index 0000000000..343bab03f9 --- /dev/null +++ b/gnu/packages/patches/dovecot-fix-failing-test.patch @@ -0,0 +1,118 @@ +This patch fixes a test failure in dovecot 2.2.29, like this [0]: + +------ +Making check in lib-imap-client +make[2]: Entering directory +`/builddir/build/BUILD/dovecot-2.2.29/src/lib-imap-client' +for bin in test-imapc-client; do \ + if ! ./$bin; then exit 1; fi; \ + done +Warning: imapc(127.0.0.1:0): connect(127.0.0.1, 0) failed: Connection +refused - reconnecting (delay 10 ms) +Error: imapc(127.0.0.1:0): connect(127.0.0.1, 0) failed: Connection +refused - disconnecting +test: random seed #1 was 1492054294 +imapc connect failed ................................................. : ok +Warning: imapc(127.0.0.1:42704): connect(127.0.0.1, 42704) timed out +after 0 seconds - reconnecting (delay 0 ms) +Error: imapc(127.0.0.1:42704): connect(127.0.0.1, 42704) timed out after +0 seconds - disconnecting +imapc banner hangs ................................................... : ok +Warning: imapc(127.0.0.1:36762): Authentication timed out after 0 +seconds - reconnecting (delay 0 ms) +Error: imapc(127.0.0.1:36762): Authentication failed: Disconnected from +server +imapc login hangs .................................................... : ok +test-imapc-client.c:358: Assert failed: test_imapc_cmd_last_reply_pop() +== IMAPC_COMMAND_STATE_OK +imapc reconnect ...................................................... : +FAILED +imapc reconnect resend commands ...................................... : ok +imapc reconnect resend commands failed ............................... : ok +imapc reconnect mailbox .............................................. : ok +1 / 7 tests failed +------ + +Patch copied from upstream source repository: + +https://github.com/dovecot/core/commit/3a1c64363a64cdfe9153eb6292d8923f38955d82 + +[0] +https://dovecot.org/pipermail/dovecot/2017-April/107751.html + +From 3a1c64363a64cdfe9153eb6292d8923f38955d82 Mon Sep 17 00:00:00 2001 +From: Timo Sirainen +Date: Mon, 10 Apr 2017 17:07:28 +0300 +Subject: [PATCH] lib-imap-client: Fix reconnection + +There was already code for reconnection. We just shouldn't have gone very +far in imapc_connection_connect() if we were still waiting for reconnection +delay to pass. +--- + src/lib-imap-client/imapc-connection.c | 25 +++++++++---------------- + 1 file changed, 9 insertions(+), 16 deletions(-) + +diff --git a/src/lib-imap-client/imapc-connection.c b/src/lib-imap-client/imapc-connection.c +index 95067e6..6eaf1ab 100644 +--- a/src/lib-imap-client/imapc-connection.c ++++ b/src/lib-imap-client/imapc-connection.c +@@ -130,6 +130,7 @@ struct imapc_connection { + struct timeout *to_throttle, *to_throttle_shrink; + + unsigned int reconnecting:1; ++ unsigned int reconnect_waiting:1; + unsigned int reconnect_ok:1; + unsigned int idling:1; + unsigned int idle_stopping:1; +@@ -504,6 +505,7 @@ static bool imapc_connection_can_reconnect(struct imapc_connection *conn) + static void imapc_connection_reconnect(struct imapc_connection *conn) + { + conn->reconnect_ok = FALSE; ++ conn->reconnect_waiting = FALSE; + + if (conn->selected_box != NULL) + imapc_client_mailbox_reconnect(conn->selected_box); +@@ -536,6 +538,7 @@ imapc_connection_try_reconnect(struct imapc_connection *conn, + imapc_connection_disconnect_full(conn, TRUE); + conn->to = timeout_add(delay_msecs, imapc_connection_reconnect, conn); + conn->reconnect_count++; ++ conn->reconnect_waiting = TRUE; + } + } + } +@@ -1785,6 +1788,12 @@ void imapc_connection_connect(struct imapc_connection *conn) + + if (conn->fd != -1 || conn->dns_lookup != NULL) + return; ++ if (conn->reconnect_waiting) { ++ /* wait for the reconnection delay to finish before ++ doing anything. */ ++ return; ++ } ++ + conn->reconnecting = FALSE; + /* if we get disconnected before we've finished all the pending + commands, don't reconnect */ +@@ -1792,22 +1801,6 @@ void imapc_connection_connect(struct imapc_connection *conn) + array_count(&conn->cmd_send_queue); + + imapc_connection_input_reset(conn); +- +- int msecs_since_last_connect = +- timeval_diff_msecs(&ioloop_timeval, &conn->last_connect); +- if (!conn->reconnect_ok && +- msecs_since_last_connect < (int)conn->client->set.connect_retry_interval_msecs) { +- if (conn->to != NULL) +- timeout_remove(&conn->to); +- conn->reconnecting = TRUE; +- imapc_connection_set_disconnected(conn); +- /* don't wait longer than necessary */ +- unsigned int delay_msecs = +- conn->client->set.connect_retry_interval_msecs - +- msecs_since_last_connect; +- conn->to = timeout_add(delay_msecs, imapc_connection_reconnect, conn); +- return; +- } + conn->last_connect = ioloop_timeval; + + if (conn->client->set.debug) { -- cgit v1.2.3 From 0eb0fe2d302028b51185b98ac55e45b483a5ea82 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 12 Apr 2017 06:19:56 +0300 Subject: gnu: jasper: Fixx CVE-2017-6850. * gnu/packages/image.scm (jasper)[source]: Add patch. * gnu/packages/patches/jasper-CVE-2017-6850.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 3 +- gnu/packages/patches/jasper-CVE-2017-6850.patch | 284 ++++++++++++++++++++++++ 3 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/jasper-CVE-2017-6850.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 212228d5c2..006dbe7997 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -661,6 +661,7 @@ dist_patch_DATA = \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/isl-0.11.1-aarch64-support.patch \ + %D%/packages/patches/jasper-CVE-2017-6850.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/jbig2dec-CVE-2016-9601.patch \ %D%/packages/patches/jq-CVE-2015-8863.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index b5b3a7283d..2725c168b6 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -905,7 +905,8 @@ (define-public jasper "/software/jasper-" version ".tar.gz")) (sha256 (base32 - "1njdbxv7d4anzrd476wjww2qsi96dd8vfnp4hri0srrqxpszl92v")))) + "1njdbxv7d4anzrd476wjww2qsi96dd8vfnp4hri0srrqxpszl92v")) + (patches (search-patches "jasper-CVE-2017-6850.patch")))) (build-system cmake-build-system) (inputs `(("libjpeg" ,libjpeg))) (synopsis "JPEG-2000 library") diff --git a/gnu/packages/patches/jasper-CVE-2017-6850.patch b/gnu/packages/patches/jasper-CVE-2017-6850.patch new file mode 100644 index 0000000000..07672762a1 --- /dev/null +++ b/gnu/packages/patches/jasper-CVE-2017-6850.patch @@ -0,0 +1,284 @@ +This patch is from upstream and should be fixed included in the next release + +From e96fc4fdd525fa0ede28074a7e2b1caf94b58b0d Mon Sep 17 00:00:00 2001 +From: Michael Adams +Date: Sat, 4 Mar 2017 14:43:24 -0800 +Subject: [PATCH] Fixed bugs due to uninitialized data in the JP2 decoder. + Also, added some comments marking I/O stream interfaces that probably need to + be changed (in the long term) to fix integer overflow problems. + +--- + src/libjasper/base/jas_stream.c | 18 +++++++++++++++++ + src/libjasper/jp2/jp2_cod.c | 44 ++++++++++++++++++++++++++++------------- + 2 files changed, 48 insertions(+), 14 deletions(-) + +diff --git a/src/libjasper/base/jas_stream.c b/src/libjasper/base/jas_stream.c +index 327ee57..d70408f 100644 +--- a/src/libjasper/base/jas_stream.c ++++ b/src/libjasper/base/jas_stream.c +@@ -664,6 +664,7 @@ int jas_stream_ungetc(jas_stream_t *stream, int c) + return 0; + } + ++/* FIXME integral type */ + int jas_stream_read(jas_stream_t *stream, void *buf, int cnt) + { + int n; +@@ -690,6 +691,7 @@ int jas_stream_read(jas_stream_t *stream, void *buf, int cnt) + return n; + } + ++/* FIXME integral type */ + int jas_stream_write(jas_stream_t *stream, const void *buf, int cnt) + { + int n; +@@ -742,6 +744,7 @@ int jas_stream_puts(jas_stream_t *stream, const char *s) + return 0; + } + ++/* FIXME integral type */ + char *jas_stream_gets(jas_stream_t *stream, char *buf, int bufsize) + { + int c; +@@ -765,6 +768,7 @@ char *jas_stream_gets(jas_stream_t *stream, char *buf, int bufsize) + return buf; + } + ++/* FIXME integral type */ + int jas_stream_gobble(jas_stream_t *stream, int n) + { + int m; +@@ -783,6 +787,7 @@ int jas_stream_gobble(jas_stream_t *stream, int n) + return n; + } + ++/* FIXME integral type */ + int jas_stream_pad(jas_stream_t *stream, int n, int c) + { + int m; +@@ -885,6 +890,7 @@ long jas_stream_tell(jas_stream_t *stream) + * Buffer initialization code. + \******************************************************************************/ + ++/* FIXME integral type */ + static void jas_stream_initbuf(jas_stream_t *stream, int bufmode, char *buf, + int bufsize) + { +@@ -1060,6 +1066,7 @@ static int jas_strtoopenmode(const char *s) + return openmode; + } + ++/* FIXME integral type */ + int jas_stream_copy(jas_stream_t *out, jas_stream_t *in, int n) + { + int all; +@@ -1085,6 +1092,7 @@ int jas_stream_copy(jas_stream_t *out, jas_stream_t *in, int n) + return 0; + } + ++/* FIXME integral type */ + long jas_stream_setrwcount(jas_stream_t *stream, long rwcnt) + { + int old; +@@ -1094,6 +1102,7 @@ long jas_stream_setrwcount(jas_stream_t *stream, long rwcnt) + return old; + } + ++/* FIXME integral type */ + int jas_stream_display(jas_stream_t *stream, FILE *fp, int n) + { + unsigned char buf[16]; +@@ -1168,6 +1177,7 @@ long jas_stream_length(jas_stream_t *stream) + * Memory stream object. + \******************************************************************************/ + ++/* FIXME integral type */ + static int mem_read(jas_stream_obj_t *obj, char *buf, int cnt) + { + ssize_t n; +@@ -1209,6 +1219,7 @@ static int mem_resize(jas_stream_memobj_t *m, size_t bufsize) + return 0; + } + ++/* FIXME integral type */ + static int mem_write(jas_stream_obj_t *obj, char *buf, int cnt) + { + size_t n; +@@ -1264,6 +1275,7 @@ static int mem_write(jas_stream_obj_t *obj, char *buf, int cnt) + return ret; + } + ++/* FIXME integral type */ + static long mem_seek(jas_stream_obj_t *obj, long offset, int origin) + { + jas_stream_memobj_t *m = (jas_stream_memobj_t *)obj; +@@ -1310,6 +1322,7 @@ static int mem_close(jas_stream_obj_t *obj) + * File stream object. + \******************************************************************************/ + ++/* FIXME integral type */ + static int file_read(jas_stream_obj_t *obj, char *buf, int cnt) + { + jas_stream_fileobj_t *fileobj; +@@ -1318,6 +1331,7 @@ static int file_read(jas_stream_obj_t *obj, char *buf, int cnt) + return read(fileobj->fd, buf, cnt); + } + ++/* FIXME integral type */ + static int file_write(jas_stream_obj_t *obj, char *buf, int cnt) + { + jas_stream_fileobj_t *fileobj; +@@ -1326,6 +1340,7 @@ static int file_write(jas_stream_obj_t *obj, char *buf, int cnt) + return write(fileobj->fd, buf, cnt); + } + ++/* FIXME integral type */ + static long file_seek(jas_stream_obj_t *obj, long offset, int origin) + { + jas_stream_fileobj_t *fileobj; +@@ -1352,6 +1367,7 @@ static int file_close(jas_stream_obj_t *obj) + * Stdio file stream object. + \******************************************************************************/ + ++/* FIXME integral type */ + static int sfile_read(jas_stream_obj_t *obj, char *buf, int cnt) + { + FILE *fp; +@@ -1367,6 +1383,7 @@ static int sfile_read(jas_stream_obj_t *obj, char *buf, int cnt) + return result; + } + ++/* FIXME integral type */ + static int sfile_write(jas_stream_obj_t *obj, char *buf, int cnt) + { + FILE *fp; +@@ -1377,6 +1394,7 @@ static int sfile_write(jas_stream_obj_t *obj, char *buf, int cnt) + return (n != JAS_CAST(size_t, cnt)) ? (-1) : cnt; + } + ++/* FIXME integral type */ + static long sfile_seek(jas_stream_obj_t *obj, long offset, int origin) + { + FILE *fp; +diff --git a/src/libjasper/jp2/jp2_cod.c b/src/libjasper/jp2/jp2_cod.c +index 7f3608a..8d98a2c 100644 +--- a/src/libjasper/jp2/jp2_cod.c ++++ b/src/libjasper/jp2/jp2_cod.c +@@ -183,15 +183,28 @@ jp2_boxinfo_t jp2_boxinfo_unk = { + * Box constructor. + \******************************************************************************/ + +-jp2_box_t *jp2_box_create(int type) ++jp2_box_t *jp2_box_create0() + { + jp2_box_t *box; +- jp2_boxinfo_t *boxinfo; +- + if (!(box = jas_malloc(sizeof(jp2_box_t)))) { + return 0; + } + memset(box, 0, sizeof(jp2_box_t)); ++ box->type = 0; ++ box->len = 0; ++ // Mark the box data as never having been constructed ++ // so that we will not errantly attempt to destroy it later. ++ box->ops = &jp2_boxinfo_unk.ops; ++ return box; ++} ++ ++jp2_box_t *jp2_box_create(int type) ++{ ++ jp2_box_t *box; ++ jp2_boxinfo_t *boxinfo; ++ if (!(box = jp2_box_create0())) { ++ return 0; ++ } + box->type = type; + box->len = 0; + if (!(boxinfo = jp2_boxinfolookup(type))) { +@@ -248,14 +261,9 @@ jp2_box_t *jp2_box_get(jas_stream_t *in) + box = 0; + tmpstream = 0; + +- if (!(box = jas_malloc(sizeof(jp2_box_t)))) { ++ if (!(box = jp2_box_create0())) { + goto error; + } +- +- // Mark the box data as never having been constructed +- // so that we will not errantly attempt to destroy it later. +- box->ops = &jp2_boxinfo_unk.ops; +- + if (jp2_getuint32(in, &len) || jp2_getuint32(in, &box->type)) { + goto error; + } +@@ -263,10 +271,12 @@ jp2_box_t *jp2_box_get(jas_stream_t *in) + box->info = boxinfo; + box->len = len; + JAS_DBGLOG(10, ( +- "preliminary processing of JP2 box: type=%c%s%c (0x%08x); length=%d\n", ++ "preliminary processing of JP2 box: " ++ "type=%c%s%c (0x%08x); length=%"PRIuFAST32"\n", + '"', boxinfo->name, '"', box->type, box->len + )); + if (box->len == 1) { ++ JAS_DBGLOG(10, ("big length\n")); + if (jp2_getuint64(in, &extlen)) { + goto error; + } +@@ -382,6 +392,7 @@ static int jp2_bpcc_getdata(jp2_box_t *box, jas_stream_t *in) + { + jp2_bpcc_t *bpcc = &box->data.bpcc; + unsigned int i; ++ bpcc->bpcs = 0; + bpcc->numcmpts = box->datalen; + if (!(bpcc->bpcs = jas_alloc2(bpcc->numcmpts, sizeof(uint_fast8_t)))) { + return -1; +@@ -462,6 +473,7 @@ static int jp2_cdef_getdata(jp2_box_t *box, jas_stream_t *in) + jp2_cdef_t *cdef = &box->data.cdef; + jp2_cdefchan_t *chan; + unsigned int channo; ++ cdef->ents = 0; + if (jp2_getuint16(in, &cdef->numchans)) { + return -1; + } +@@ -518,7 +530,9 @@ int jp2_box_put(jp2_box_t *box, jas_stream_t *out) + } + + if (dataflag) { +- if (jas_stream_copy(out, tmpstream, box->len - JP2_BOX_HDRLEN(false))) { ++ if (jas_stream_copy(out, tmpstream, box->len - ++ JP2_BOX_HDRLEN(false))) { ++ jas_eprintf("cannot copy box data\n"); + goto error; + } + jas_stream_close(tmpstream); +@@ -777,6 +791,7 @@ static int jp2_cmap_getdata(jp2_box_t *box, jas_stream_t *in) + jp2_cmap_t *cmap = &box->data.cmap; + jp2_cmapent_t *ent; + unsigned int i; ++ cmap->ents = 0; + + cmap->numchans = (box->datalen) / 4; + if (!(cmap->ents = jas_alloc2(cmap->numchans, sizeof(jp2_cmapent_t)))) { +@@ -835,6 +850,7 @@ static int jp2_pclr_getdata(jp2_box_t *box, jas_stream_t *in) + int_fast32_t x; + + pclr->lutdata = 0; ++ pclr->bpc = 0; + + if (jp2_getuint16(in, &pclr->numlutents) || + jp2_getuint8(in, &pclr->numchans)) { +@@ -869,9 +885,9 @@ static int jp2_pclr_putdata(jp2_box_t *box, jas_stream_t *out) + #if 0 + jp2_pclr_t *pclr = &box->data.pclr; + #endif +-/* Eliminate warning about unused variable. */ +-box = 0; +-out = 0; ++ /* Eliminate warning about unused variable. */ ++ box = 0; ++ out = 0; + return -1; + } + -- cgit v1.2.3 From 4467c2d1dcbf88e26767616a49ed49de8ee48f57 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Tue, 28 Mar 2017 17:49:41 +0200 Subject: gnu: Update kde-frameworks to 5.32.0 * gnu/packages/kde-frameworks.scm (breeze-icons): Update to 5.32.0. [arguments]: Re-enable tests. (kio): Update to 5.32.0. [source]: Remove patch. (ktexteditor): Update to 5.32.0. [inputs]: Add ksyntaxhighlighting. (networkmanager-qt): Update to 5.32.0. [source]: Add patches. (kunitconversion): Update to 5.32.0. [arguments] : New phase. (ksyntaxhighlighting): Update to 5.32.0.[native-iputs]: Add qtools. (knewstuff): Update to 5.32.0. [inputs]: Add qtdeclarative. (attica, baloo, bluez-qt, extra-cmake-modules, kactivities, kactivities-stats, kapidox, karchive, kauth, kbookmarks, kcmutils, kcodecs, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kcrash, kdbusaddons, kdeclarative, kded, kdesignerplugin, kdesu, kdnssd, kdoctools, kemoticons, kfilemetadata, kglobalaccel, kguiaddons, ki18n, kiconthemes, kidletime, kimageformats, kinit, kitemmodels, kitemviews, kjobwidgets, knotifications, knotifyconfig, kpackage, kparts, kpeople, kplotting, kpty, krunner, kservice, ktextwidgets, kwallet, kwayland, kwidgetsaddons, kwindowsystem, kxmlgui, kxmlrpcclient, modemmanager-qt, oxygen-icons, plasma-framework, solid, sonnet, threadweaver): Update to 5.32.0. * gnu/packages/patches/kio-CVE-2017-6410.patch: Delete file. * gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch, gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch: New files. * gnu/local.mk (dist_patch_DATA): Remove resp. add the patch files. --- gnu/local.mk | 3 +- gnu/packages/kde-frameworks.scm | 286 +++++++++++---------- gnu/packages/patches/kio-CVE-2017-6410.patch | 53 ---- ...networkmanager-qt-activeconnection-test-1.patch | 60 +++++ ...networkmanager-qt-activeconnection-test-2.patch | 57 ++++ 5 files changed, 268 insertions(+), 191 deletions(-) delete mode 100644 gnu/packages/patches/kio-CVE-2017-6410.patch create mode 100644 gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch create mode 100644 gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 006dbe7997..98dffff648 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -667,7 +667,6 @@ dist_patch_DATA = \ %D%/packages/patches/jq-CVE-2015-8863.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/khmer-use-libraries.patch \ - %D%/packages/patches/kio-CVE-2017-6410.patch \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kobodeluxe-paths.patch \ %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \ @@ -796,6 +795,8 @@ dist_patch_DATA = \ %D%/packages/patches/netsurf-system-utf8proc.patch \ %D%/packages/patches/netsurf-y2038-tests.patch \ %D%/packages/patches/netsurf-longer-test-timeout.patch \ + %D%/packages/patches/networkmanager-qt-activeconnection-test-1.patch \ + %D%/packages/patches/networkmanager-qt-activeconnection-test-2.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \ %D%/packages/patches/ninja-zero-mtime.patch \ %D%/packages/patches/node-9077.patch \ diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index b431a85604..2c263e4718 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2016 Efraim Flashner -;;; Copyright © 2016 Hartmut Goebel +;;; Copyright © 2016,2017 Hartmut Goebel ;;; Copyright © 2016 David Craven ;;; Copyright © 2017 Thomas Danckaert ;;; @@ -59,7 +59,7 @@ (define-module (gnu packages kde-frameworks) (define-public extra-cmake-modules (package (name "extra-cmake-modules") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -68,7 +68,7 @@ (define-public extra-cmake-modules name "-" version ".tar.xz")) (sha256 (base32 - "0yi60qd08x5093wb8dv9cx370iaabn44hzcang92g9ssfmz0zd2h")))) + "1iqakxzr6bcs9wgyi8if1smpq6px0bvlcyddyk0hxhindzl7pn5i")))) (build-system cmake-build-system) (native-inputs `(("qtbase" ,qtbase))) ; For tests (needs qmake) @@ -240,7 +240,7 @@ (define-public kpmcore (define-public attica (package (name "attica") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -249,7 +249,7 @@ (define-public attica name "-" version ".tar.xz")) (sha256 (base32 - "14v6vi8awk1m58l9svpjd54ckd6milzavgfbkdspsz0km1cpqlks")))) + "16vl3gpwqcvfms82grv1bvqlxj085bqssv5ixjx007826pd8qhp5")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -272,7 +272,7 @@ (define-public attica (define-public bluez-qt (package (name "bluez-qt") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -281,7 +281,7 @@ (define-public bluez-qt name "-" version ".tar.xz")) (sha256 (base32 - "1rfzwrvvkc5f4l943f4r235gdniqc7njyw4fx36v00daj2r4aqi9")))) + "0pl6cp0rgjkh7d06ik35rw7qd96j5sh2flgjx4vi21zl5vf3vgyh")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -306,7 +306,7 @@ (define-public bluez-qt (define-public breeze-icons (package (name "breeze-icons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -315,7 +315,7 @@ (define-public breeze-icons name "-" version ".tar.xz")) (sha256 (base32 - "06zwg2g0157ac6xsgxs5f8s1sk8rh2j3y057iqmfg2ng2sh9byh2")))) + "1n51kahzk09v52yhi7k4kqgavqlz3ghqv5cx2ssz2djpyavs18r3")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -323,11 +323,6 @@ (define-public breeze-icons ("libxml2" ,libxml2))) (inputs `(("qtbase" ,qtbase))) - ;; FIXME: Dupes test fails. Issue is fixed upstream - ;; Remove when updating to 5.28. - ;; https://github.com/KDE/breeze-icons/commit/22b383359e3a0e02d4828e6fa8ed8a3d213440b1 - (arguments - `(#:tests? #f)) (home-page "https://community.kde.org/Frameworks") (synopsis "Default KDE Plasma 5 icon theme") (description "Breeze provides a freedesktop.org compatible icon theme. @@ -340,7 +335,7 @@ (define-public breeze-icons (define-public kapidox (package (name "kapidox") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -349,7 +344,7 @@ (define-public kapidox name "-" version ".tar.xz")) (sha256 (base32 - "1whkl9rzhjnnmpj532d23mlrwhp5wcfxfvq4z4bxyr64g9plbzyq")))) + "1z6hdsppwrmqkcanrppxhqcrjvblg9i02rh3bz5m3pn66wwz0sdw")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; has no test target @@ -382,7 +377,7 @@ (define-public kapidox (define-public karchive (package (name "karchive") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -391,7 +386,7 @@ (define-public karchive name "-" version ".tar.xz")) (sha256 (base32 - "1s068z0ih6qk3m4lm10wm28y0nq5qwn4gpnx9vckar51xbrl4bb7")))) + "1dzvphqnc09mmaydqggpxg6zwwyr56p6l4jdf1rf6ns90fzxy0m4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -416,7 +411,7 @@ (define-public karchive (define-public kcodecs (package (name "kcodecs") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -425,7 +420,7 @@ (define-public kcodecs name "-" version ".tar.xz")) (sha256 (base32 - "0r01raiva4iddiz5qqshmbmidgkf4q6illanz6zwmc4n66c6s3q3")))) + "0yybkp52i8nm4qjady6jqswn6v70cqbvjqwgrghjnc88b2cly253")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -451,7 +446,7 @@ (define-public kcodecs (define-public kconfig (package (name "kconfig") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -460,7 +455,7 @@ (define-public kconfig name "-" version ".tar.xz")) (sha256 (base32 - "0kdsaqv880wihxv6il8wailmymh0rh0jrbhg8iz2ljf3ir7g56zy")))) + "1pajh1l08b995shp6l75ri9z4vr6wjapvrkmrmv8hksnxvfi97dp")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -518,7 +513,7 @@ (define-public kconfig (define-public kcoreaddons (package (name "kcoreaddons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -527,7 +522,7 @@ (define-public kcoreaddons name "-" version ".tar.xz")) (sha256 (base32 - "10x2sgd1acsg1kmb741zk8sbss1j9nncfr1ac2pq0fc236ivkiyb")))) + "1n1xzvwwji9pwyxrvwp4rmpc7qzp9nlis26xmn81k607jn587ksx")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -557,7 +552,7 @@ (define-public kcoreaddons (define-public kdbusaddons (package (name "kdbusaddons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -566,7 +561,7 @@ (define-public kdbusaddons name "-" version ".tar.xz")) (sha256 (base32 - "07mzb1xr8wyiid25p8kg6mjp6vq8ngvv1ikhq75zvd2cbax530c8")) + "1a15jjsrkza0ll2viyk834pgdxsdgdacm0982xxwl5z937f75609")) (patches (search-patches "kdbusaddons-kinit-file-name.patch")))) (build-system cmake-build-system) (native-inputs @@ -602,7 +597,7 @@ (define-public kdbusaddons (define-public kdnssd (package (name "kdnssd") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -611,7 +606,7 @@ (define-public kdnssd name "-" version ".tar.xz")) (sha256 (base32 - "1gkqfcz8glfa6krbayaay4kyq3zazcyr21zjg78la76vfnranh0r")))) + "1xakbs2wm627zn01ni8fyrz64xl5jw4by0pdrb70aad7w37dijrw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -629,7 +624,7 @@ (define-public kdnssd (define-public kguiaddons (package (name "kguiaddons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -638,7 +633,7 @@ (define-public kguiaddons name "-" version ".tar.xz")) (sha256 (base32 - "1f3k6g8cqgq49ka9wsfflp0vnqgk81nlp012lb5v875yil6f9m3f")))) + "0rbfd0rykmwl9hs1q22pqg2by8vi9y1pgs2ishgnan4sc4w87wjb")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -662,7 +657,7 @@ (define-public kguiaddons (define-public ki18n (package (name "ki18n") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -671,7 +666,7 @@ (define-public ki18n name "-" version ".tar.xz")) (sha256 (base32 - "0ymg8mnpvas101war3pgm3wv8ssf1wxa6mxg9ym1xx24mx7xzhzw")))) + "068xvw2hy4hlpj85wgjjdj0nc37fygpd8wb1dnpqcvzzy8rc1rsf")))) (build-system cmake-build-system) (propagated-inputs `(("gettext" ,gettext-minimal) @@ -705,7 +700,7 @@ (define-public ki18n (define-public kidletime (package (name "kidletime") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -714,7 +709,7 @@ (define-public kidletime name "-" version ".tar.xz")) (sha256 (base32 - "0cwq8jvsimxriiazivls8yix9jyglk2giqwv34a1ic1cnackhwq7")))) + "0rkxx3bnspjwm4vcy4rdfahk6vcfpkh8fldww0zfdn7s7pigqwch")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -732,7 +727,7 @@ (define-public kidletime (define-public kitemmodels (package (name "kitemmodels") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -741,7 +736,7 @@ (define-public kitemmodels name "-" version ".tar.xz")) (sha256 (base32 - "0zi7wsqcmjd7fms8r2vqvwwvzw75p275qyn6whpgblb09l0pn78z")))) + "0lxld7jdixpq23sycv8n4ckzmdr34aycrsf2zffziw6r59f0mzki")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -793,7 +788,7 @@ (define-public kitemmodels (define-public kitemviews (package (name "kitemviews") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -802,7 +797,7 @@ (define-public kitemviews name "-" version ".tar.xz")) (sha256 (base32 - "0wrlwawgnz1yjav4hfirc3lcki0hqy0cgr8bwhr9nhm27ndgv28p")))) + "1h1zgawdi4vbgymdl5215lx7hpcx9jqxy7vjf5hwgs6b2cls1sws")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -834,7 +829,7 @@ (define-public kitemviews (define-public kplotting (package (name "kplotting") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -843,7 +838,7 @@ (define-public kplotting name "-" version ".tar.xz")) (sha256 (base32 - "1vmwxj03qhrfnz3jg30ka28afpqg0hlgm46dbzyg86kg8hc2hgb2")))) + "0a0pfmdlx84526lb2jvx94i2pf85km57fm2ygis4z5mjgbzsmb6v")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -872,7 +867,7 @@ (define-public kplotting (define-public ksyntaxhighlighting (package (name "ksyntaxhighlighting") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -881,11 +876,12 @@ (define-public ksyntaxhighlighting "syntax-highlighting-" version ".tar.xz")) (sha256 (base32 - "0gf1ldlk4gav6bg5b1231hphaal4simyngirvr1yizcb1rrlygdy")))) + "1d9m7x53mwggwmhhba1c7b8v4f8qjql889y674ldpzs2nrk5y7x3")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("perl" ,perl) + ("qttools" ,qttools) ;; Optional, for compile-time validation of syntax definition files: ("qtxmlpatterns" ,qtxmlpatterns))) (inputs @@ -923,7 +919,7 @@ (define-public ksyntaxhighlighting (define-public kwayland (package (name "kwayland") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -932,7 +928,7 @@ (define-public kwayland name "-" version ".tar.xz")) (sha256 (base32 - "0xm4agsv8hyx8aaiv4zpa121s08ayhbps3pbfbds2ckk57k6ba8k")))) + "1kzvq7qx102rfdv975x5sd37lsl6wn0mzm2m1f9fnnn2rvii3h5d")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -962,7 +958,7 @@ (define-public kwayland (define-public kwidgetsaddons (package (name "kwidgetsaddons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -971,7 +967,7 @@ (define-public kwidgetsaddons name "-" version ".tar.xz")) (sha256 (base32 - "1p22s1cbwpwbm03qxs0wqb1i7w1s19b119diwkmb8xl90cqfdwnn")))) + "1aksy326ppdfcx20zl9hxsd8j0br32j6dlx4i1xxbd976csys9b2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1011,7 +1007,7 @@ (define-public kwidgetsaddons (define-public kwindowsystem (package (name "kwindowsystem") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1020,7 +1016,7 @@ (define-public kwindowsystem name "-" version ".tar.xz")) (sha256 (base32 - "0lzafiwj58gg5vccnvwrhiwjq67y8cn3gllirgw13vz3f69sbr3i")))) + "1c3kd23c4wwzdhfcyhv41czw3y2kk1492xn6ah9n3r98akrhgar1")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1051,7 +1047,7 @@ (define-public kwindowsystem (define-public modemmanager-qt (package (name "modemmanager-qt") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1060,7 +1056,7 @@ (define-public modemmanager-qt name "-" version ".tar.xz")) (sha256 (base32 - "1yfqqp596srvsi0yqrkpm5gzlwjf4szk6hy0wszr12gjjzqprilq")))) + "0ywyiq1kj4ya5knn0r12j9m1ig9mlyfypnrzihlvipddjrqs7jyd")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1089,7 +1085,7 @@ (define-public modemmanager-qt (define-public networkmanager-qt (package (name "networkmanager-qt") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1098,7 +1094,12 @@ (define-public networkmanager-qt name "-" version ".tar.xz")) (sha256 (base32 - "1iq8xrw55k2k9af57l4lfrw72gjxgk7pp7k3m7amjfp0hdqw8602")))) + "0bcy7nzfvx2xah3kxklmrjn08qbjddiny7wf7nkxsbc3kkhrxqyd")) + ;; TODO: Remove these patches when updating to 5.33. + (patches + (search-patches + "networkmanager-qt-activeconnection-test-1.patch" + "networkmanager-qt-activeconnection-test-2.patch")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1128,7 +1129,7 @@ (define-public networkmanager-qt (define-public oxygen-icons (package (name "oxygen-icons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1137,7 +1138,7 @@ (define-public oxygen-icons name "5" "-" version ".tar.xz")) (sha256 (base32 - "05bypc4k86lsjp7d4lpbpsnms7k1gnjyahdbks420585ca0v4qkp")))) + "05v3blgs4qbjl8s6470baahy9a98cfi3mplzp462axcgkqdj1nwf")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1153,7 +1154,7 @@ (define-public oxygen-icons (define-public solid (package (name "solid") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1162,7 +1163,7 @@ (define-public solid name "-" version ".tar.xz")) (sha256 (base32 - "0g6frc7hckbkvzgq40qrymllgp56a3v39l5d2ajqipwb4kabhdpy")))) + "1jhymivravgix0sa0szkax50j09l5fl55xi3fbyjxlb4cil114v5")))) (build-system cmake-build-system) (native-inputs `(("bison" ,bison) @@ -1182,7 +1183,7 @@ (define-public solid (define-public sonnet (package (name "sonnet") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1191,7 +1192,7 @@ (define-public sonnet name "-" version ".tar.xz")) (sha256 (base32 - "1vzn3kvi126jnkq2s5110yii8946kaxp452735fx0l0jqjn92dy8")))) + "17sjv48b3z5fgplsy16ilcw6p7mlqjs61ib6jqd1mqzv4xrr27yi")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1208,7 +1209,7 @@ (define-public sonnet (define-public threadweaver (package (name "threadweaver") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1217,7 +1218,7 @@ (define-public threadweaver name "-" version ".tar.xz")) (sha256 (base32 - "10hy4pvw84l2z8778gsfv5i8pqrfjidvlgd5rc8xffx65s3f28b5")))) + "1qpy2rzqyd4ap5fibkfk87z66ijh2h79cd7f0h506jh2dbx20g0h")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1238,7 +1239,7 @@ (define-public threadweaver (define-public kauth (package (name "kauth") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1247,7 +1248,7 @@ (define-public kauth name "-" version ".tar.xz")) (sha256 (base32 - "09m7dipkykw75dbka6mhsvrikbniwshl1l0qxcny3ywc0fkzgf40")))) + "00kdq16n9w6nf1bpwzl5lp5c2xq74g8nn6081kvnjcd4ld66ncmq")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -1285,7 +1286,7 @@ (define-public kauth (define-public kcompletion (package (name "kcompletion") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1294,7 +1295,7 @@ (define-public kcompletion name "-" version ".tar.xz")) (sha256 (base32 - "1yrlhf6n7xlkid3xbpirf8n6kybc3sqp5fnb01kr1rcl89qs273f")))) + "0fn8imr3m219r38a0rafbnylcpjq4rqhz1w66mx80sc7l10mhcni")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1322,7 +1323,7 @@ (define-public kcompletion (define-public kcrash (package (name "kcrash") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1331,7 +1332,7 @@ (define-public kcrash name "-" version ".tar.xz")) (sha256 (base32 - "0gsly5wvyh0d6yfk5yyv1pgaazwlwvahz245y9sliwzrbxhgj1yv")))) + "1zrkjrpj88ymdy5vbn9db73vxppswvmbn2gkn4gpx773dsmflhz3")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1360,7 +1361,7 @@ (define-public kcrash (define-public kdoctools (package (name "kdoctools") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1369,7 +1370,7 @@ (define-public kdoctools name "-" version ".tar.xz")) (sha256 (base32 - "1mndmxy7vgdkii8axzkzclqqimg0ksn2dmwiqsljcjcik0zfx47c")))) + "0i7zgg7iw6w0sdr6cv3yf4blcr61i8zczgmyqa964ka6p3ywwjs9")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1408,7 +1409,7 @@ (define-public kdoctools (define-public kfilemetadata (package (name "kfilemetadata") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1417,7 +1418,7 @@ (define-public kfilemetadata name "-" version ".tar.xz")) (sha256 (base32 - "0sxifxzyqq0haxfira8ldq9gwali7p5vbbh8jslj8wlxm0dczyw6")))) + "01d91gmrxlax0g13ib841vc4qwmv6r4qdr10wfs77rrxsvw7z08f")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1438,7 +1439,7 @@ (define-public kfilemetadata (define-public kimageformats (package (name "kimageformats") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1447,7 +1448,7 @@ (define-public kimageformats name "-" version ".tar.xz")) (sha256 (base32 - "1h17jm55r9ijmng5mb1w9nqk2hw6h965j9c2nrd8wl9dzy616kra")))) + "05hn8n4sc3rj5c30ki068f76k1gfgvq19zcw5jlqpnn1l5db5fvz")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1475,7 +1476,7 @@ (define-public kimageformats (define-public kjobwidgets (package (name "kjobwidgets") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1484,7 +1485,7 @@ (define-public kjobwidgets name "-" version ".tar.xz")) (sha256 (base32 - "0xh62bjd6qqbmx1jbv9qac1ng0h056mwrs8rkdqd8k10ghmsfx6a")))) + "0lhv3mg2liija0g8x14jpv1mdhb0zjh868p1cs24bs9xrw1l8984")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1503,7 +1504,7 @@ (define-public kjobwidgets (define-public knotifications (package (name "knotifications") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1512,7 +1513,7 @@ (define-public knotifications name "-" version ".tar.xz")) (sha256 (base32 - "1a55c0abs9yg7qaajgidj8bmfbwkysf24300532lnia71n1ms25s")))) + "06ap7m8c2py49pqrnhadbyl69y3nsyamzahbpwipqgh9k62sy34y")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1546,7 +1547,7 @@ (define-public knotifications (define-public kpackage (package (name "kpackage") - (version "5.28.1") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1555,7 +1556,7 @@ (define-public kpackage name "-" version ".tar.xz")) (sha256 (base32 - "0ym5fhhigp7argk7c1zyn2fvfjykgxh3miipidf142c8y3d98vbp")))) + "070zasl5c58n01fk18mjgccfizymc9griwicxizqjgzzbgvkns3r")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1584,7 +1585,7 @@ (define-public kpackage (define-public kpty (package (name "kpty") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1593,7 +1594,7 @@ (define-public kpty name "-" version ".tar.xz")) (sha256 (base32 - "1q22wzx5xpmbj56xg4miiscb1xqqk2lfkljfdi87zl05vwmnc7hn")))) + "0h4318rc9902cvqj69capb8lh7s84y44jd59d11fyhq21jhy152s")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1621,7 +1622,7 @@ (define-public kpty (define-public kunitconversion (package (name "kunitconversion") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1630,8 +1631,18 @@ (define-public kunitconversion name "-" version ".tar.xz")) (sha256 (base32 - "0n6ndy1yarilnk2l09h92qk32v02hknafif1i9mmwcibldvc963q")))) + "0crc8riwafcx6fwhgrc8vfbwmdygd6vlz1fbbgni09gamm8mbcin")))) (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-a-failing-test-case + (lambda _ + ;; TODO: Re-enable this test-case. It was committed with the + ;; message: "tsan says it's clean, apart from issues in Qt + ;; (reported upstream)" + (substitute* "autotests/convertertest.cpp" + (("const int numThreads = 2") "const int numThreads = 0"))))))) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs @@ -1654,7 +1665,7 @@ (define-public kunitconversion (define-public baloo (package (name "baloo") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1663,7 +1674,7 @@ (define-public baloo name "-" version ".tar.xz")) (sha256 (base32 - "071in785y1qplm59fmsmifzbmczvlvkf5gxdb6d0iw93pb36r7h5")))) + "0a4qwinkp4gmcbx4j0qxbj5qb40h7594s39za7sc7bymadicasy1")))) (build-system cmake-build-system) (propagated-inputs `(("kcoreaddons" ,kcoreaddons) @@ -1712,7 +1723,7 @@ (define-public baloo (define-public kactivities (package (name "kactivities") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1721,7 +1732,7 @@ (define-public kactivities name "-" version ".tar.xz")) (sha256 (base32 - "162ilqcfp8b3lb3gpzbw94ppsdqzn6i6ymiwh12xy5nrxixdpagb")))) + "0xin4shaj0zsfsww84mwk5n4ldaqy730jhc369px2j2nq57sg9g7")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1759,7 +1770,7 @@ (define-public kactivities (define-public kactivities-stats (package (name "kactivities-stats") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1768,7 +1779,7 @@ (define-public kactivities-stats name "-" version ".tar.xz")) (sha256 (base32 - "0pjgjl5bwmq0n23nwcqjp3b412fsibnvwsr3s3l67k9scmdpbm4v")))) + "1b3z7bcap3vjc0155y0a9xkbd477fklmpj8dr3rs0ccyc6qxxbvw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1789,7 +1800,7 @@ (define-public kactivities-stats (define-public kbookmarks (package (name "kbookmarks") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1798,7 +1809,7 @@ (define-public kbookmarks name "-" version ".tar.xz")) (sha256 (base32 - "1lfvps0xzpzn42n7rpsdcmsiryclykz6h1hk8sp6nsbhqwzd0r65")))) + "03a024phcjv46afbp5lbmj2p8hb6srfzyaslc6ln6ms473bf5k4w")))) (build-system cmake-build-system) (propagated-inputs `(("kwidgetsaddons" ,kwidgetsaddons))) @@ -1832,7 +1843,7 @@ (define-public kbookmarks (define-public kcmutils (package (name "kcmutils") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1841,7 +1852,7 @@ (define-public kcmutils name "-" version ".tar.xz")) (sha256 (base32 - "0wj3f5ykzb7q9536y9wk8mnfcb6zay2mmc25dg67mdznzwdy36aa")))) + "1mr9h7wc22bfrbm92ajsjfcs16c5xpkrxbxzcma3a0s7jhy6qrm9")))) (build-system cmake-build-system) (propagated-inputs `(("kconfigwidgets" ,kconfigwidgets) @@ -1871,7 +1882,7 @@ (define-public kcmutils (define-public kconfigwidgets (package (name "kconfigwidgets") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1880,7 +1891,7 @@ (define-public kconfigwidgets name "-" version ".tar.xz")) (sha256 (base32 - "0cy53jaq15n8hw2m67l0y6x722ywg0ijfz5ak5vq3fjjhc9fmq8d")))) + "1cq0a3k6pvl9f098ssqqk2rddxh0xn1kk4p5kfyd7w0m3c604zw3")))) (build-system cmake-build-system) (propagated-inputs `(("kauth" ,kauth) @@ -1913,7 +1924,7 @@ (define-public kconfigwidgets (define-public kdeclarative (package (name "kdeclarative") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1922,7 +1933,7 @@ (define-public kdeclarative name "-" version ".tar.xz")) (sha256 (base32 - "1g7bf3smdiwgfhdzwskp3l7l4bn838q1cdy4hp9mzqdssz956wmn")))) + "1y5g3yi1l0g1mkqhhakg265r25zm23qc2fqg55rq0g7l9ss7w7g9")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -1973,7 +1984,7 @@ (define-public kdeclarative (define-public kded (package (name "kded") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -1982,7 +1993,7 @@ (define-public kded name "-" version ".tar.xz")) (sha256 (base32 - "115ywk3vdyhwzna59bpiqfffcc128vafl823yh5fzkwbp8w7qdn5")))) + "0pmmsvqwkw86yvxxf9i6lg13vg80m0kmhjjs88lbm60cgvr5jhq6")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2006,7 +2017,7 @@ (define-public kded (define-public kdesignerplugin (package (name "kdesignerplugin") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2015,7 +2026,7 @@ (define-public kdesignerplugin name "-" version ".tar.xz")) (sha256 (base32 - "12v9pbfniljp23bllxxq6hfv6qnp2q8yjsix6fy6hwf8yrsq42m3")))) + "1hapj8x8nky3m6lx2ianmxwprf00jqyjsknjz3pi4vk3i714vhnf")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2044,7 +2055,7 @@ (define-public kdesignerplugin (define-public kdesu (package (name "kdesu") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2053,7 +2064,7 @@ (define-public kdesu name "-" version ".tar.xz")) (sha256 (base32 - "1f6awbnqs14si13n1ryibb0z3mj90bg0vk320hgabd2zxma00vwp")))) + "0zsy1hivy5bbczrpkpgj72mlx0km2nm53kpgrj2hfdy3ss0vn3hl")))) (build-system cmake-build-system) (propagated-inputs `(("kpty" ,kpty))) @@ -2075,7 +2086,7 @@ (define-public kdesu (define-public kemoticons (package (name "kemoticons") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2084,7 +2095,7 @@ (define-public kemoticons name "-" version ".tar.xz")) (sha256 (base32 - "10qxm9q7bsbbg419f8d0703mikd8w99a8fh501fpm3sgh6k7pbyv")))) + "1ncjs9iy6z6rhk83ff7fj1b68rkylnry0h698rh4jvs98gpw8sgj")))) (build-system cmake-build-system) (propagated-inputs `(("kservice" ,kservice))) @@ -2117,7 +2128,7 @@ (define-public kemoticons (define-public kglobalaccel (package (name "kglobalaccel") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2126,7 +2137,7 @@ (define-public kglobalaccel name "-" version ".tar.xz")) (sha256 (base32 - "0a60f2bs7dhx0rsrgva2p97dcala6jrjfg4z2nv0m4bv82i4kchc")))) + "0dxwjznnqlgnvn15pl34rxlzk3i21cvzn8xbgqmxakny8qiib9ry")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2160,7 +2171,7 @@ (define-public kglobalaccel (define-public kiconthemes (package (name "kiconthemes") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2169,7 +2180,7 @@ (define-public kiconthemes name "-" version ".tar.xz")) (sha256 (base32 - "1i5cpsqfn1vcch8izbrgig2km580gdxf02qmib4ynbwzcfvrnbqc")))) + "00azbyk5y3jgdqv03a2nd0627kdkhq1bkghvw7w62kcnih9k8lq5")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2209,7 +2220,7 @@ (define-public kiconthemes (define-public kinit (package (name "kinit") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2218,7 +2229,7 @@ (define-public kinit name "-" version ".tar.xz")) (sha256 (base32 - "0hwa4anljh5v53gswziacwr6ryvhp136k6y85d10074lrckdr912")))) + "0103lflppdw55l9xiqs68lzaq9897m5qnkmy6fp7dm9wfh9aplqn")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2253,17 +2264,16 @@ (define-public kinit (define-public kio (package (name "kio") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/frameworks/" (version-major+minor version) "/" name "-" version ".tar.xz")) - (patches (search-patches "kio-CVE-2017-6410.patch")) (sha256 (base32 - "1hqc88c2idi9fkb7jy82csb0i740lghv0p2fg1gaglcarjdz7nia")))) + "19da02l0aj0l07x9bbklhvx9slci3v1d8q80jvam4vyzs4qdyjin")))) (build-system cmake-build-system) (propagated-inputs `(("kbookmarks" ,kbookmarks) @@ -2328,7 +2338,7 @@ (define-public kio (define-public knewstuff (package (name "knewstuff") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2337,7 +2347,7 @@ (define-public knewstuff name "-" version ".tar.xz")) (sha256 (base32 - "0p5a6zprqfnhiim0l0qigjy7kky0m4w2nykhllwvr6lda1rg8qs3")))) + "1i3ldy9wwnjhpgdd2d0bg4304k88riin89zqzdl52lpqa6hjl3fp")))) (build-system cmake-build-system) (propagated-inputs `(("attica" ,attica) @@ -2362,6 +2372,7 @@ (define-public knewstuff ("ktextwidgets" ,ktextwidgets) ("kwidgetsaddons" ,kwidgetsaddons) ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) ("solid" ,solid) ("sonnet" ,sonnet))) (arguments @@ -2385,7 +2396,7 @@ (define-public knewstuff (define-public knotifyconfig (package (name "knotifyconfig") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2394,7 +2405,7 @@ (define-public knotifyconfig name "-" version ".tar.xz")) (sha256 (base32 - "0riia9lvp33lqh8ld5r1r0adnfnxikbvmdi4k7kfc4pzra93h10f")))) + "14qc6wj4j5i45vzqsvl2wlc07c6x30hb2680gwfqsvwgiaszkzv4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2427,7 +2438,7 @@ (define-public knotifyconfig (define-public kparts (package (name "kparts") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2436,7 +2447,7 @@ (define-public kparts name "-" version ".tar.xz")) (sha256 (base32 - "1jghgddgz0ghq6n51l1i6jc1s10g0ckda5nlwh4myziv229g9pik")))) + "0hrx0mdvw301nbdyw5fkvgkw60ya6kmfw6hfzmj48bws8mi33rs5")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio) @@ -2478,7 +2489,7 @@ (define-public kparts (define-public kpeople (package (name "kpeople") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2487,7 +2498,7 @@ (define-public kpeople name "-" version ".tar.xz")) (sha256 (base32 - "0dqz6varz3nrnp8jfysdsp2r2mm46hn3vfcqcyyqk3nmv6sd9mpp")))) + "1xqi8zr76hajgyv016iaqlmnr5b84s71fbx412q153g92jglp4mk")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2522,7 +2533,7 @@ (define-public kpeople (define-public krunner (package (name "krunner") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2531,7 +2542,7 @@ (define-public krunner name "-" version ".tar.xz")) (sha256 (base32 - "1mmbrpgw090z41l2vg350hmm3ya2qkfkjmq7v5d90jpb7z7y6pr9")))) + "1k4rg9vqr6h5aj7v51fx3i5z9kxlfpacahs81hkwksi6if8ik4kr")))) (build-system cmake-build-system) (propagated-inputs `(("plasma-framework" ,plasma-framework))) @@ -2578,7 +2589,7 @@ (define-public krunner (define-public kservice (package (name "kservice") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2587,7 +2598,7 @@ (define-public kservice name "-" version ".tar.xz")) (sha256 (base32 - "0mlc3vw0vq1rwcg803dsybzlwxj1n6hg13z9sg0h28wsbyss3l4l")))) + "02xk3ajspprmx964zhwh2l3axm4gns9h0m0pvcb1v5j8pfh9v70q")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2624,7 +2635,7 @@ (define-public kservice (define-public ktexteditor (package (name "ktexteditor") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2633,7 +2644,7 @@ (define-public ktexteditor name "-" version ".tar.xz")) (sha256 (base32 - "1sl152xasbhgpph4f6apkc54b26smgxbd3cxbvch2hfi5cxgb8fq")))) + "1sybw8k3f36mcs5qh3b51v7ynbqn4pbiiabkyxfmyi82i09m2jgw")))) (build-system cmake-build-system) (propagated-inputs `(("kparts" ,kparts))) @@ -2655,6 +2666,7 @@ (define-public ktexteditor ("ki18n" ,ki18n) ("kjobwidgets" ,kjobwidgets) ("kservice" ,kservice) + ("ksyntaxhighlighting" ,ksyntaxhighlighting) ("ktextwidgets" ,ktextwidgets) ("kwidgetsaddons" ,kwidgetsaddons) ("kxmlgui" ,kxmlgui) @@ -2692,7 +2704,7 @@ (define-public ktexteditor (define-public ktextwidgets (package (name "ktextwidgets") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2701,7 +2713,7 @@ (define-public ktextwidgets name "-" version ".tar.xz")) (sha256 (base32 - "0gwjb0isjfrqd15lvln6bwql1lpk2r1vp5f72zxygz2ay8ar1wxp")))) + "1s2fd4n4hfkzscxv0cdfjynjzi1f57pfi9a3fp6rrm5c5645zk7r")))) (build-system cmake-build-system) (propagated-inputs `(("ki18n" ,ki18n) @@ -2738,7 +2750,7 @@ (define-public ktextwidgets (define-public kwallet (package (name "kwallet") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2747,7 +2759,7 @@ (define-public kwallet name "-" version ".tar.xz")) (sha256 (base32 - "0n25mvjwy3sv5bg2x75psz6d6f8yl53j3wfmx9ayh57jk4rq24rm")))) + "0psc4n6lck9gbx2nn7mgv33x4z2r0xp1mx1xcsgy8smvalrfv5xa")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2779,7 +2791,7 @@ (define-public kwallet (define-public kxmlgui (package (name "kxmlgui") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2788,7 +2800,7 @@ (define-public kxmlgui name "-" version ".tar.xz")) (sha256 (base32 - "0plw6fckpssgwf18f5i4vhfp55jmdvfh2rc5lg8fwmlqgqkvrbac")))) + "1pxi4z7z3bzwcnfwq0pvjsmds401fkisyr353lyxf4rvcpwj3a65")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2832,7 +2844,7 @@ (define-public kxmlgui (define-public kxmlrpcclient (package (name "kxmlrpcclient") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2841,7 +2853,7 @@ (define-public kxmlrpcclient name "-" version ".tar.xz")) (sha256 (base32 - "1xrdh5ipldahcv0pxp7dnzjz1ihnkg4r2hpylg6bwvq81clw8xd1")))) + "1kaczibdfdph5mpg1dldsmqb1six57w7ch3v0v7av5h6j6sx0xaq")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio))) @@ -2875,7 +2887,7 @@ (define-public kxmlrpcclient (define-public plasma-framework (package (name "plasma-framework") - (version "5.28.0") + (version "5.32.0") (source (origin (method url-fetch) (uri (string-append @@ -2884,7 +2896,7 @@ (define-public plasma-framework name "-" version ".tar.xz")) (sha256 (base32 - "0j4mfd8wzrspvyy281lww981fly2rkbhnixb9b0pj5k9i8gvkh7q")))) + "1hrnmilc30d1kh20cky329i5ji3qyy7m4f8jzax5cgl7nrjca31h")))) (build-system cmake-build-system) (propagated-inputs `(("kpackage" ,kpackage) diff --git a/gnu/packages/patches/kio-CVE-2017-6410.patch b/gnu/packages/patches/kio-CVE-2017-6410.patch deleted file mode 100644 index 748636f806..0000000000 --- a/gnu/packages/patches/kio-CVE-2017-6410.patch +++ /dev/null @@ -1,53 +0,0 @@ -Fix CVE-2017-6410, "Information Leak when accessing https when using a -malicious PAC file": - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6410 -https://www.kde.org/info/security/advisory-20170228-1.txt - -Patch copied from upstream source repository: - -https://cgit.kde.org/kio.git/commit/?id=f9d0cb47cf94e209f6171ac0e8d774e68156a6e4 - -From f9d0cb47cf94e209f6171ac0e8d774e68156a6e4 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid -Date: Tue, 28 Feb 2017 19:00:48 +0100 -Subject: Sanitize URLs before passing them to FindProxyForURL - -Remove user/password information -For https: remove path and query - -Thanks to safebreach.com for reporting the problem - -CCMAIL: yoni.fridburg@safebreach.com -CCMAIL: amit.klein@safebreach.com -CCMAIL: itzik.kotler@safebreach.com ---- - src/kpac/script.cpp | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/src/kpac/script.cpp b/src/kpac/script.cpp -index a0235f7..2485c54 100644 ---- a/src/kpac/script.cpp -+++ b/src/kpac/script.cpp -@@ -754,9 +754,16 @@ QString Script::evaluate(const QUrl &url) - } - } - -+ QUrl cleanUrl = url; -+ cleanUrl.setUserInfo(QString()); -+ if (cleanUrl.scheme() == QLatin1String("https")) { -+ cleanUrl.setPath(QString()); -+ cleanUrl.setQuery(QString()); -+ } -+ - QScriptValueList args; -- args << url.url(); -- args << url.host(); -+ args << cleanUrl.url(); -+ args << cleanUrl.host(); - - QScriptValue result = func.call(QScriptValue(), args); - if (result.isError()) { --- -cgit v0.11.2 - diff --git a/gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch b/gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch new file mode 100644 index 0000000000..2dd39294ea --- /dev/null +++ b/gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch @@ -0,0 +1,60 @@ +From 61337983ba74361938b7d5323de5d2819a235fdc Mon Sep 17 00:00:00 2001 +From: Jan Grulich +Date: Mon, 3 Apr 2017 12:53:12 +0200 +Subject: Fix unit test for active connections + +Instead of sending PropertiesChanged signal for an active connection we +added recently we should set all properties initially and just advertise +that we have a new active connection once everything is set +--- + src/fakenetwork/fakenetwork.cpp | 26 +++++++------------------- + 1 file changed, 7 insertions(+), 19 deletions(-) + +diff --git a/src/fakenetwork/fakenetwork.cpp b/src/fakenetwork/fakenetwork.cpp +index bc1144e..261fe8e 100644 +--- a/src/fakenetwork/fakenetwork.cpp ++++ b/src/fakenetwork/fakenetwork.cpp +@@ -215,8 +215,14 @@ void FakeNetwork::unregisterService() + + QDBusObjectPath FakeNetwork::ActivateConnection(const QDBusObjectPath &connection, const QDBusObjectPath &device, const QDBusObjectPath &specific_object) + { +- ActiveConnection *newActiveConnection = new ActiveConnection(this); + QString newActiveConnectionPath = QString("/org/kde/fakenetwork/ActiveConnection/") + QString::number(m_activeConnectionsCounter++); ++ ActiveConnection *newActiveConnection = new ActiveConnection(this); ++ newActiveConnection->addDevice(device); ++ newActiveConnection->setActiveConnectionPath(newActiveConnectionPath); ++ newActiveConnection->setConnection(connection); ++ newActiveConnection->setSpecificObject(specific_object); ++ newActiveConnection->setState(NetworkManager::ActiveConnection::Activating); ++ + m_activeConnections.insert(QDBusObjectPath(newActiveConnectionPath), newActiveConnection); + QDBusConnection::sessionBus().registerObject(newActiveConnectionPath, newActiveConnection, QDBusConnection::ExportScriptableContents); + +@@ -227,24 +233,6 @@ QDBusObjectPath FakeNetwork::ActivateConnection(const QDBusObjectPath &connectio + map.insert(QLatin1Literal("ActivatingConnection"), QVariant::fromValue(QDBusObjectPath(newActiveConnectionPath))); + Q_EMIT PropertiesChanged(map); + +- newActiveConnection->addDevice(device); +- newActiveConnection->setActiveConnectionPath(newActiveConnectionPath); +- newActiveConnection->setConnection(connection); +- newActiveConnection->setSpecificObject(specific_object); +- newActiveConnection->setState(NetworkManager::ActiveConnection::Activating); +- +- map.clear(); +- const QList deviceList { device }; +- map.insert(QLatin1Literal("Devices"), QVariant::fromValue >(deviceList)); +- map.insert(QLatin1Literal("Connection"), QVariant::fromValue(connection)); +- if (!specific_object.path().isEmpty()) { +- map.insert(QLatin1Literal("SpecificObject"), QVariant::fromValue(connection)); +- } +- map.insert(QLatin1Literal("State"), NetworkManager::ActiveConnection::Activating); +- QDBusMessage message = QDBusMessage::createSignal(newActiveConnectionPath, QLatin1Literal("org.kde.fakenetwork.Connection.Active"), QLatin1Literal("PropertiesChanged")); +- message << map; +- QDBusConnection::sessionBus().send(message); +- + Device *usedDevice = static_cast(QDBusConnection::sessionBus().objectRegisteredAt(device.path())); + if (usedDevice) { + m_activatedDevice = usedDevice->devicePath(); +-- +cgit v0.11.2 + diff --git a/gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch b/gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch new file mode 100644 index 0000000000..af3cdff729 --- /dev/null +++ b/gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch @@ -0,0 +1,57 @@ +From 3f6155389abc8e2b3dafc5eefa1ce0c929b007fa Mon Sep 17 00:00:00 2001 +From: Jan Grulich +Date: Mon, 3 Apr 2017 14:13:54 +0200 +Subject: One more attempt to fix unit test for active connections + +--- + src/activeconnection.cpp | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/src/activeconnection.cpp b/src/activeconnection.cpp +index 05582fa..3a8e6b2 100644 +--- a/src/activeconnection.cpp ++++ b/src/activeconnection.cpp +@@ -79,11 +79,13 @@ NetworkManager::ActiveConnection::ActiveConnection(const QString &path, QObject + connect(&d->iface, &OrgFreedesktopNetworkManagerConnectionActiveInterface::PropertiesChanged, d, &ActiveConnectionPrivate::propertiesChanged); + #endif + ++#ifndef NMQT_STATIC + /* + * Workaround: Re-check connection state before we watch changes in case it gets changed too quickly + * BUG:352326 + */ + d->recheckProperties(); ++#endif + } + + NetworkManager::ActiveConnection::ActiveConnection(ActiveConnectionPrivate &dd, QObject *parent) +@@ -91,18 +93,26 @@ NetworkManager::ActiveConnection::ActiveConnection(ActiveConnectionPrivate &dd, + { + Q_D(ActiveConnection); + ++#ifndef NMQT_STATIC + #if NM_CHECK_VERSION(1, 4, 0) + QDBusConnection::systemBus().connect(NetworkManagerPrivate::DBUS_SERVICE, d->path, NetworkManagerPrivate::FDO_DBUS_PROPERTIES, + QLatin1String("PropertiesChanged"), d, SLOT(dbusPropertiesChanged(QString,QVariantMap,QStringList))); + #else + connect(&d->iface, &OrgFreedesktopNetworkManagerConnectionActiveInterface::PropertiesChanged, d, &ActiveConnectionPrivate::propertiesChanged); + #endif ++#endif ++ ++#ifdef NMQT_STATIC ++ connect(&d->iface, &OrgFreedesktopNetworkManagerConnectionActiveInterface::PropertiesChanged, d, &ActiveConnectionPrivate::propertiesChanged); ++#endif + ++#ifndef NMQT_STATIC + /* + * Workaround: Re-check connection state before we watch changes in case it gets changed too quickly + * BUG:352326 + */ + d->recheckProperties(); ++#endif + } + + NetworkManager::ActiveConnection::~ActiveConnection() +-- +cgit v0.11.2 + -- cgit v1.2.3 From 4d6ce834bb32aedc0ecd52e67ab3f96603f54d31 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 12 Apr 2017 14:20:30 +0200 Subject: gnu: dovecot: Update to 2.2.29.1. * gnu/packages/mail.scm (dovecot): Update to 2.2.29.1. [source]: Remove 'dovecot-fix-failing-test.patch'. * gnu/packages/patches/dovecot-fix-failing-test.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/mail.scm | 8 +- .../patches/dovecot-fix-failing-test.patch | 118 --------------------- 3 files changed, 3 insertions(+), 124 deletions(-) delete mode 100644 gnu/packages/patches/dovecot-fix-failing-test.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 98dffff648..0f3b4bd7a8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -539,7 +539,6 @@ dist_patch_DATA = \ %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ - %D%/packages/patches/dovecot-fix-failing-test.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ %D%/packages/patches/elixir-disable-failing-tests.patch \ diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 1a6c505efd..255837198b 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1086,17 +1086,15 @@ (define-public exim (define-public dovecot (package (name "dovecot") - (version "2.2.29") + (version "2.2.29.1") (source (origin (method url-fetch) (uri (string-append "https://www.dovecot.org/releases/" (version-major+minor version) "/" name "-" version ".tar.gz")) - (patches (search-patches "dovecot-fix-failing-test.patch")) - (sha256 - (base32 - "19irf7b5mjqq68mrpdd38gxc0zp2nqib942kjp3aif3f2acylffr")))) + (sha256 (base32 + "127kn3fgmahw9fvgz2w3zaghq98ip4j8640wqa3rw7mrgvxrzync")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/patches/dovecot-fix-failing-test.patch b/gnu/packages/patches/dovecot-fix-failing-test.patch deleted file mode 100644 index 343bab03f9..0000000000 --- a/gnu/packages/patches/dovecot-fix-failing-test.patch +++ /dev/null @@ -1,118 +0,0 @@ -This patch fixes a test failure in dovecot 2.2.29, like this [0]: - ------- -Making check in lib-imap-client -make[2]: Entering directory -`/builddir/build/BUILD/dovecot-2.2.29/src/lib-imap-client' -for bin in test-imapc-client; do \ - if ! ./$bin; then exit 1; fi; \ - done -Warning: imapc(127.0.0.1:0): connect(127.0.0.1, 0) failed: Connection -refused - reconnecting (delay 10 ms) -Error: imapc(127.0.0.1:0): connect(127.0.0.1, 0) failed: Connection -refused - disconnecting -test: random seed #1 was 1492054294 -imapc connect failed ................................................. : ok -Warning: imapc(127.0.0.1:42704): connect(127.0.0.1, 42704) timed out -after 0 seconds - reconnecting (delay 0 ms) -Error: imapc(127.0.0.1:42704): connect(127.0.0.1, 42704) timed out after -0 seconds - disconnecting -imapc banner hangs ................................................... : ok -Warning: imapc(127.0.0.1:36762): Authentication timed out after 0 -seconds - reconnecting (delay 0 ms) -Error: imapc(127.0.0.1:36762): Authentication failed: Disconnected from -server -imapc login hangs .................................................... : ok -test-imapc-client.c:358: Assert failed: test_imapc_cmd_last_reply_pop() -== IMAPC_COMMAND_STATE_OK -imapc reconnect ...................................................... : -FAILED -imapc reconnect resend commands ...................................... : ok -imapc reconnect resend commands failed ............................... : ok -imapc reconnect mailbox .............................................. : ok -1 / 7 tests failed ------- - -Patch copied from upstream source repository: - -https://github.com/dovecot/core/commit/3a1c64363a64cdfe9153eb6292d8923f38955d82 - -[0] -https://dovecot.org/pipermail/dovecot/2017-April/107751.html - -From 3a1c64363a64cdfe9153eb6292d8923f38955d82 Mon Sep 17 00:00:00 2001 -From: Timo Sirainen -Date: Mon, 10 Apr 2017 17:07:28 +0300 -Subject: [PATCH] lib-imap-client: Fix reconnection - -There was already code for reconnection. We just shouldn't have gone very -far in imapc_connection_connect() if we were still waiting for reconnection -delay to pass. ---- - src/lib-imap-client/imapc-connection.c | 25 +++++++++---------------- - 1 file changed, 9 insertions(+), 16 deletions(-) - -diff --git a/src/lib-imap-client/imapc-connection.c b/src/lib-imap-client/imapc-connection.c -index 95067e6..6eaf1ab 100644 ---- a/src/lib-imap-client/imapc-connection.c -+++ b/src/lib-imap-client/imapc-connection.c -@@ -130,6 +130,7 @@ struct imapc_connection { - struct timeout *to_throttle, *to_throttle_shrink; - - unsigned int reconnecting:1; -+ unsigned int reconnect_waiting:1; - unsigned int reconnect_ok:1; - unsigned int idling:1; - unsigned int idle_stopping:1; -@@ -504,6 +505,7 @@ static bool imapc_connection_can_reconnect(struct imapc_connection *conn) - static void imapc_connection_reconnect(struct imapc_connection *conn) - { - conn->reconnect_ok = FALSE; -+ conn->reconnect_waiting = FALSE; - - if (conn->selected_box != NULL) - imapc_client_mailbox_reconnect(conn->selected_box); -@@ -536,6 +538,7 @@ imapc_connection_try_reconnect(struct imapc_connection *conn, - imapc_connection_disconnect_full(conn, TRUE); - conn->to = timeout_add(delay_msecs, imapc_connection_reconnect, conn); - conn->reconnect_count++; -+ conn->reconnect_waiting = TRUE; - } - } - } -@@ -1785,6 +1788,12 @@ void imapc_connection_connect(struct imapc_connection *conn) - - if (conn->fd != -1 || conn->dns_lookup != NULL) - return; -+ if (conn->reconnect_waiting) { -+ /* wait for the reconnection delay to finish before -+ doing anything. */ -+ return; -+ } -+ - conn->reconnecting = FALSE; - /* if we get disconnected before we've finished all the pending - commands, don't reconnect */ -@@ -1792,22 +1801,6 @@ void imapc_connection_connect(struct imapc_connection *conn) - array_count(&conn->cmd_send_queue); - - imapc_connection_input_reset(conn); -- -- int msecs_since_last_connect = -- timeval_diff_msecs(&ioloop_timeval, &conn->last_connect); -- if (!conn->reconnect_ok && -- msecs_since_last_connect < (int)conn->client->set.connect_retry_interval_msecs) { -- if (conn->to != NULL) -- timeout_remove(&conn->to); -- conn->reconnecting = TRUE; -- imapc_connection_set_disconnected(conn); -- /* don't wait longer than necessary */ -- unsigned int delay_msecs = -- conn->client->set.connect_retry_interval_msecs - -- msecs_since_last_connect; -- conn->to = timeout_add(delay_msecs, imapc_connection_reconnect, conn); -- return; -- } - conn->last_connect = ioloop_timeval; - - if (conn->client->set.debug) { -- cgit v1.2.3 From bd71525b7ad1bb4f6896793ca7f6283e178b3a06 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 12 Apr 2017 11:28:01 +0200 Subject: gnu: Add kiki. * gnu/packages/games.scm (kiki): New variable. * gnu/packages/patches/kiki-level-selection-crash.patch, gnu/packages/patches/kiki-makefile.patch, gnu/packages/patches/kiki-missing-includes.patch, gnu/packages/patches/kiki-portability-64bit.patch: New patches. * gnu/local.mk (dist_patch_DATA): Add them. --- gnu/local.mk | 4 + gnu/packages/games.scm | 97 ++++++ .../patches/kiki-level-selection-crash.patch | 19 ++ gnu/packages/patches/kiki-makefile.patch | 57 ++++ gnu/packages/patches/kiki-missing-includes.patch | 55 ++++ gnu/packages/patches/kiki-portability-64bit.patch | 328 +++++++++++++++++++++ 6 files changed, 560 insertions(+) create mode 100644 gnu/packages/patches/kiki-level-selection-crash.patch create mode 100644 gnu/packages/patches/kiki-makefile.patch create mode 100644 gnu/packages/patches/kiki-missing-includes.patch create mode 100644 gnu/packages/patches/kiki-portability-64bit.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 0f3b4bd7a8..9385b3df94 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -666,6 +666,10 @@ dist_patch_DATA = \ %D%/packages/patches/jq-CVE-2015-8863.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/khmer-use-libraries.patch \ + %D%/packages/patches/kiki-level-selection-crash.patch \ + %D%/packages/patches/kiki-makefile.patch \ + %D%/packages/patches/kiki-missing-includes.patch \ + %D%/packages/patches/kiki-portability-64bit.patch \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kobodeluxe-paths.patch \ %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 71f35e2fef..710b2746c9 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -89,6 +89,7 @@ (define-module (gnu packages games) #:use-module (gnu packages pkg-config) #:use-module (gnu packages databases) #:use-module (gnu packages sdl) + #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) #:use-module (gnu packages check) #:use-module (gnu packages fonts) @@ -3552,3 +3553,99 @@ (define-public cdogs-sdl license:cc0 license:cc-by3.0 license:cc-by-sa3.0)))) + +(define-public kiki + (package + (name "kiki") + (version "1.0.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/kiki/kiki-src/" + version "/kiki-" version "-src.tgz")) + (sha256 + (base32 + "0ihjdsxbn8z3cz0gpcprafiipcqaiskgdnh1rhmw4qff8dszalbn")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file (find-files "." "\\.dll$")) + #t)) + (patches + (search-patches "kiki-level-selection-crash.patch" + "kiki-makefile.patch" + "kiki-missing-includes.patch" + "kiki-portability-64bit.patch")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:make-flags '("CXX=g++") + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (setenv "CPLUS_INCLUDE_PATH" + (string-append (assoc-ref inputs "sdl-union") + "/include/SDL:" + (assoc-ref inputs "python") + "/include/python2.7:" + (getenv "CPLUS_INCLUDE_PATH"))) + (substitute* "src/main/main.cpp" + (("#include " line) + (string-append line " +#define K_INCLUDE_GLUT +#include \"KIncludeTools.h\"")) + (("// initialize SDL" line) + (string-append "glutInit(&argc,argv);\n" line))) + (substitute* "src/main/KikiController.cpp" + (("getenv\\(\"KIKI_HOME\"\\)") + (string-append "\"" (assoc-ref outputs "out") "/share/kiki/\""))) + (substitute* "linux/Makefile" + (("CXXOPTS =" line) + (string-append line " -fpermissive")) + (("PYTHON_VERSION=.*") "PYTHON_VERSION=2.7") + (("PYTHONHOME =.*") + (string-append "PYTHONHOME = " + (assoc-ref inputs "python") + "/lib/python2.7/")) + (("\\$\\(GLLIBS\\)" line) + (string-append line " -lm -lpython2.7"))) + (substitute* "src/main/KikiPythonWidget.h" + (("#define __KikiPythonWidget" line) + (string-append line "\n#include \"KikiPython.h\""))) + #t)) + (add-before 'build 'build-kodilib + (lambda* (#:key make-flags #:allow-other-keys) + (with-directory-excursion "kodilib/linux" + (zero? (apply system* "make" make-flags))))) + (add-after 'build-kodilib 'chdir + (lambda _ (chdir "linux") #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (share (string-append out "/share/kiki"))) + (mkdir-p bin) + (mkdir-p share) + (install-file "kiki" bin) + (copy-recursively "../py" (string-append share "/py")) + (copy-recursively "../sound" (string-append share "/sound")) + #t)))))) + (inputs + `(("glu" ,glu) + ;; Kiki builds fine with freeglut 3.0.0 but segfaults on start. + ("freeglut" ,freeglut-2.8) + ("sdl-union" ,(sdl-union (list sdl + sdl-mixer + sdl-image))) + ("python" ,python-2))) + (native-inputs + `(("swig" ,swig))) + (home-page "http://kiki.sourceforge.net/") + (synopsis "3D puzzle game") + (description "Kiki the nano bot is a 3D puzzle game. It is basically a +mixture of the games Sokoban and Kula-World. Your task is to help Kiki, a +small robot living in the nano world, repair its maker.") + ;; See + ;; for a statement from the author. + (license license:public-domain))) diff --git a/gnu/packages/patches/kiki-level-selection-crash.patch b/gnu/packages/patches/kiki-level-selection-crash.patch new file mode 100644 index 0000000000..8cc6478509 --- /dev/null +++ b/gnu/packages/patches/kiki-level-selection-crash.patch @@ -0,0 +1,19 @@ +Downloaded from https://anonscm.debian.org/viewvc/pkg-games/packages/trunk/kiki-the-nano-bot/debian/patches/level-selection-with-no-levels-solved.patch?revision=8291&view=co + +Kiki crashes if the user tries to use the level selection menu before +finishing any level. + +Peter De Wachter (pdewacht@gmail.com) +placed in the public domain + +--- a/py/levelselection.py ++++ b/py/levelselection.py +@@ -25,6 +25,8 @@ + # ............................................................................................................ + + last_level = highscore.getLastAvailableLevel() ++ if last_level < 0: ++ last_level = 0 + current_level = (level_index >= 0) and level_index or last_level + + world.max_level_index = last_level diff --git a/gnu/packages/patches/kiki-makefile.patch b/gnu/packages/patches/kiki-makefile.patch new file mode 100644 index 0000000000..7329301f2c --- /dev/null +++ b/gnu/packages/patches/kiki-makefile.patch @@ -0,0 +1,57 @@ +Downloaded from https://anonscm.debian.org/viewvc/pkg-games/packages/trunk/kiki-the-nano-bot/debian/patches/Makefile.patch?revision=15681&view=co + +Makefile fixes: + - Make CXXFLAGS, CPPFLAGS, LDFLAGS available for user-specified flags. + - run SWIG before compiling + +Peter De Wachter (pdewacht@gmail.com) +placed in the public domain + +--- a/kodilib/linux/Makefile ++++ b/kodilib/linux/Makefile +@@ -21,7 +21,7 @@ + + INCLUDES = $(KODI_INCLUDES) $(X11_INCLUDES) $(SDL_INCLUDES) + +-CXXFLAGS = $(INCLUDES) $(SDL_CFLAGS) ++CXXOPTS = -Wall $(INCLUDES) $(SDL_CFLAGS) $(CPPFLAGS) $(CXXFLAGS) + + src = \ + $(KODISRCDIR)/handler/KEventHandler.cpp \ +@@ -95,4 +95,4 @@ + $(RM) -f $(obj) libkodi.a + + %.o: %.cpp +- $(CXX) -c $(CXXFLAGS) -o $@ $< ++ $(CXX) -c $(CXXOPTS) -o $@ $< +--- a/linux/Makefile ++++ b/linux/Makefile +@@ -46,7 +46,7 @@ + + INCLUDES = $(KIKI_INCLUDES) $(X11_INCLUDES) $(PYTHON_INCLUDES) + +-CXXFLAGS = $(INCLUDES) $(SDLCFLAGS) ++CXXOPTS = -Wall $(INCLUDES) $(SDLCFLAGS) $(CPPFLAGS) $(CXXFLAGS) + + src = \ + $(KIKISRC)/base/KikiAction.cpp \ +@@ -105,8 +105,10 @@ + obj = $(src:.cpp=.o) + + kiki: $(KIKISRC)/../SWIG/KikiPy_wrap.cpp $(obj) +- -(cd ../SWIG; swig -c++ -python -globals kiki -o KikiPy_wrap.cpp KikiPy.i; cp kiki.py ../py) +- $(CXX) $(obj) $(KODILIB) -o kiki $(GLLIBS) $(SDLLIBS) $(PYTHONLIBS) ++ $(CXX) $(LDFLAGS) $(obj) $(KODILIB) -o kiki $(GLLIBS) $(SDLLIBS) $(PYTHONLIBS) ++ ++$(KIKISRC)/../SWIG/KikiPy_wrap.cpp: $(wildcard ../SWIG/*.i) ++ (cd ../SWIG && swig -c++ -python -globals kiki -DSWIG_PYTHON_LEGACY_BOOL -o KikiPy_wrap.cpp KikiPy.i && cp kiki.py ../py) + + obj-clean: + $(RM) -f $(obj) +@@ -115,5 +117,5 @@ + $(RM) -f $(obj) kiki + + %.o: %.cpp +- $(CXX) -c $(CXXFLAGS) -o $@ $< ++ $(CXX) -c $(CXXOPTS) -o $@ $< + diff --git a/gnu/packages/patches/kiki-missing-includes.patch b/gnu/packages/patches/kiki-missing-includes.patch new file mode 100644 index 0000000000..e5ee74f3ee --- /dev/null +++ b/gnu/packages/patches/kiki-missing-includes.patch @@ -0,0 +1,55 @@ +Downloaded from https://anonscm.debian.org/viewvc/pkg-games/packages/trunk/kiki-the-nano-bot/debian/patches/missing-includes.patch?revision=7984&view=co + +Status: in upstream CVS + +--- a/kodilib/src/handler/KPickable.h ++++ b/kodilib/src/handler/KPickable.h +@@ -8,6 +8,7 @@ + + #include "KIntrospection.h" + #include ++#include + + #define DEBUG_PICKING false + +--- a/kodilib/src/tools/KIntrospection.h ++++ b/kodilib/src/tools/KIntrospection.h +@@ -11,6 +11,7 @@ + #endif + + #include ++#include + + // -------------------------------------------------------------------------------------------------------- + class KClassInfo +--- a/kodilib/src/tools/KStringTools.cpp ++++ b/kodilib/src/tools/KStringTools.cpp +@@ -6,7 +6,7 @@ + #include "KStringTools.h" + #include "KVector.h" + +-#include // INT_MAX ++#include // INT_MAX + #include + + // -------------------------------------------------------------------------------------------------------- +--- a/kodilib/src/tools/KStringTools.h ++++ b/kodilib/src/tools/KStringTools.h +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + + // -------------------------------------------------------------------------------------------------------- + +--- a/kodilib/src/tools/KXMLTools.cpp ++++ b/kodilib/src/tools/KXMLTools.cpp +@@ -7,6 +7,7 @@ + #include "KConsole.h" + #include "KSeparatedMatrix.h" + #include ++#include + + // -------------------------------------------------------------------------------------------------------- + std::string kXMLTag ( const std::string & name, const std::string & attributes, int depth ) diff --git a/gnu/packages/patches/kiki-portability-64bit.patch b/gnu/packages/patches/kiki-portability-64bit.patch new file mode 100644 index 0000000000..456c008915 --- /dev/null +++ b/gnu/packages/patches/kiki-portability-64bit.patch @@ -0,0 +1,328 @@ +This patch was downloaded from Debian: +https://anonscm.debian.org/viewvc/pkg-games/packages/trunk/kiki-the-nano-bot/debian/patches/portability-64bit.patch?revision=7984&view=co + +Make 64-bit clean (string positions don't fit in an int on 64-bit machines) + +Peter De Wachter (pdewacht@gmail.com) +placed in the public domain + +Status: in upstream CVS + +--- a/kodilib/src/tools/KFileTools.cpp ++++ b/kodilib/src/tools/KFileTools.cpp +@@ -214,8 +214,8 @@ + // -------------------------------------------------------------------------------------------------------- + string kFileSuffix ( const string & path ) + { +- unsigned int lastDotPos = path.rfind("."); +- unsigned int lastSlashPos = path.rfind(kPathSep); ++ std::string::size_type lastDotPos = path.rfind("."); ++ std::string::size_type lastSlashPos = path.rfind(kPathSep); + + if (lastDotPos < path.size() - 1 && (lastDotPos > lastSlashPos || lastSlashPos == string::npos)) + { +@@ -228,7 +228,7 @@ + string kFileDirName ( const string & path ) + { + string native = kFileNativePath(path); +- unsigned int lastSlashPos = native.rfind(kPathSep); ++ std::string::size_type lastSlashPos = native.rfind(kPathSep); + if (lastSlashPos < native.size()) + { + return native.substr(0, lastSlashPos+1); +@@ -241,7 +241,7 @@ + { + string native = kFileNativePath(path); + string baseName = native; +- unsigned int lastSlashPos = native.rfind(kPathSep); ++ std::string::size_type lastSlashPos = native.rfind(kPathSep); + if (lastSlashPos < native.size() - 1) + { + baseName = native.substr(lastSlashPos+1); +--- a/kodilib/src/tools/KKeyTools.cpp ++++ b/kodilib/src/tools/KKeyTools.cpp +@@ -170,7 +170,7 @@ + // -------------------------------------------------------------------------------------------------------- + int kKeyGetDisplayWidthForKey ( const std::string & keyName ) + { +- unsigned int keyPos = keyName.find('_', 0); ++ std::string::size_type keyPos = keyName.find('_', 0); + if (keyPos == std::string::npos) + { + return kKeyGetDisplayWidthForPureKey(keyName) + KDL_MOD_KEY_SPACING; +@@ -313,7 +313,7 @@ + int kKeyDisplayKey ( const std::string & keyName, const KPosition & pos ) + { + KPosition start = pos; +- unsigned int keyPos = keyName.find('_', 0); ++ std::string::size_type keyPos = keyName.find('_', 0); + if (keyPos == std::string::npos) + { + return start.x + kKeyDisplayPureKey(keyName, start) + KDL_MOD_KEY_SPACING; +@@ -380,7 +380,7 @@ + // -------------------------------------------------------------------------------------------------------- + SDL_keysym kKeyGetKeysymForKeyName ( const std::string & keyName ) + { +- unsigned int pos = keyName.find('_'); ++ std::string::size_type pos = keyName.find('_'); + + std::string modString; + std::string symString = keyName; +--- a/kodilib/src/tools/KStringTools.cpp ++++ b/kodilib/src/tools/KStringTools.cpp +@@ -13,7 +13,7 @@ + void kStringInsertStringBehindTags ( std::string & str, const std::string & insertString, + const std::string & tag ) + { +- unsigned int oldPos = 0; ++ std::string::size_type oldPos = 0; + while ((oldPos = str.find(tag, oldPos)) != std::string::npos) + { + oldPos += tag.size(); +@@ -34,8 +34,8 @@ + { + std::vector components; + +- unsigned int dividerLength = divider.size(); +- unsigned int oldpos = 0, pos; ++ std::string::size_type dividerLength = divider.size(); ++ std::string::size_type oldpos = 0, pos; + + while ((pos = str.find(divider, oldpos)) != std::string::npos) + { +@@ -50,7 +50,7 @@ + // -------------------------------------------------------------------------------------------------------- + void kStringReplace ( std::string & str, const std::string & toReplace, const std::string & replacement ) + { +- unsigned int pos = 0, chars = toReplace.size(); ++ std::string::size_type pos = 0, chars = toReplace.size(); + while ((pos = str.find(toReplace, pos)) != std::string::npos) + { + str.replace(pos, chars, replacement); +@@ -60,11 +60,11 @@ + // -------------------------------------------------------------------------------------------------------- + void kStringReplaceTabs ( std::string & str, unsigned int tabWidth ) + { +- unsigned int tabPos; ++ std::string::size_type tabPos; + while ((tabPos = str.find('\t')) != std::string::npos) + { +- unsigned int lastNewlinePos = str.rfind('\n', tabPos-1); +- unsigned int relPos = (lastNewlinePos == std::string::npos) ? tabPos : tabPos - lastNewlinePos; ++ std::string::size_type lastNewlinePos = str.rfind('\n', tabPos-1); ++ std::string::size_type relPos = (lastNewlinePos == std::string::npos) ? tabPos : tabPos - lastNewlinePos; + str.replace(tabPos, 1, std::string(tabWidth-(relPos % tabWidth), ' ')); + } + } +@@ -114,7 +114,7 @@ + // -------------------------------------------------------------------------------------------------------- + unsigned int kStringNthCharPos ( const std::string & str, unsigned int n, char c ) + { +- unsigned int loc = n, oloc = 0; ++ std::string::size_type loc = n, oloc = 0; + while (n > 0 && (loc = str.find(c, oloc)) != std::string::npos) + { + n--; +@@ -138,7 +138,7 @@ + // -------------------------------------------------------------------------------------------------------- + void kStringCropCols ( std::string & str, unsigned int columns ) + { +- unsigned int oloc = 0, nloc = 0; ++ std::string::size_type oloc = 0, nloc = 0; + while ((nloc = str.find('\n', oloc)) != std::string::npos) + { + if ((nloc - oloc) > columns) +@@ -160,10 +160,10 @@ + unsigned int kStringCols ( const std::string & str ) + { + if (str.size() == 0) return 0; +- int oloc = 0, nloc; ++ long oloc = 0, nloc; + std::string substring; + int maxlength = 0, length; +- while ((nloc = str.find('\n', oloc)) != (int)std::string::npos) ++ while ((nloc = str.find('\n', oloc)) != (long)std::string::npos) + { + substring = str.substr(oloc, nloc - oloc); + length = substring.size(); +@@ -181,7 +181,7 @@ + unsigned int kStringRows ( const std::string & str ) + { + if (str.size() == 0) return 1; +- unsigned int loc = 0, lines = 0; ++ std::string::size_type loc = 0, lines = 0; + while ((loc = str.find('\n', loc)) != std::string::npos) { lines++; loc++; } + if (str[str.size()-1] == '\n') return lines; + return lines+1; +@@ -204,8 +204,8 @@ + { + static char str[256]; + std::string format(fmt), subformat, text; +- unsigned int oloc = 0; +- unsigned int nloc = 0; ++ std::string::size_type oloc = 0; ++ std::string::size_type nloc = 0; + + kStringReplaceTabs(format); + +@@ -260,7 +260,7 @@ + // -------------------------------------------------------------------------------------------------------- + bool kStringHasSuffix ( const std::string & str, const std::string & suffix ) + { +- unsigned int result = str.rfind(suffix); ++ std::string::size_type result = str.rfind(suffix); + if (result == std::string::npos) return false; + return (result == str.size()-suffix.size()); + } +--- a/kodilib/src/tools/KXMLTools.cpp ++++ b/kodilib/src/tools/KXMLTools.cpp +@@ -58,11 +58,11 @@ + std::string kXMLParseToTagsInVector ( std::string & xml, const std::vector & tags ) + { + std::string open("<"); +- unsigned int minLoc = std::string::npos; ++ std::string::size_type minLoc = std::string::npos; + std::vector::const_iterator iter = tags.begin(); + while (iter != tags.end()) + { +- unsigned int loc = xml.find(open+(*iter)); ++ std::string::size_type loc = xml.find(open+(*iter)); + if (loc < minLoc) minLoc = loc; + iter++; + } +@@ -77,7 +77,7 @@ + std::string value; + std::string nameStr(name); + nameStr += "='"; +- unsigned int loc = xml.find(nameStr); ++ std::string::size_type loc = xml.find(nameStr); + if (loc != std::string::npos) + { + loc += nameStr.size(); +@@ -90,7 +90,7 @@ + // -------------------------------------------------------------------------------------------------------- + bool kXMLParseNamedCloseTag ( std::string & xml, const std::string & name, bool printError ) + { +- unsigned int loc = xml.find('<'); ++ std::string::size_type loc = xml.find('<'); + if (loc == std::string::npos) + { + if (printError) KConsole::printError(kStringPrintf("invalid XML:\nmissing close tag '%s'", +@@ -117,7 +117,7 @@ + // -------------------------------------------------------------------------------------------------------- + bool kXMLReadNamedOpenTag ( const std::string & xml, const std::string & name, std::string * attributes ) + { +- unsigned int loc = xml.find('<'), endloc; ++ std::string::size_type loc = xml.find('<'), endloc; + + if (loc == std::string::npos || xml[loc+1] == '/') return false; + +@@ -140,7 +140,7 @@ + // -------------------------------------------------------------------------------------------------------- + std::string kXMLParseNamedOpenTag ( std::string & xml, const std::string & name, std::string * attributes, bool printError ) + { +- unsigned int loc = xml.find('<'); ++ std::string::size_type loc = xml.find('<'); + if (loc == std::string::npos || xml[loc+1] == '/') + { + if (printError) KConsole::printError(kStringPrintf("invalid XML:\nmissing tag '%s'", name.c_str())); +@@ -191,7 +191,7 @@ + // -------------------------------------------------------------------------------------------------------- + bool kXMLParseOpenTag ( std::string & xml, std::string & name, std::string * attributes, bool printError ) + { +- unsigned int loc = xml.find('<'); ++ std::string::size_type loc = xml.find('<'); + if (loc == std::string::npos || xml[loc+1] == '/') + { + if (printError) KConsole::printError("invalid XML:\nmissing open tag"); +@@ -295,7 +295,7 @@ + // -------------------------------------------------------------------------------------------------------- + bool kXMLParseValue( std::string & xml, const std::string & name, int type, void * value, bool printError ) + { +- unsigned int loc = xml.find('<'); ++ std::string::size_type loc = xml.find('<'); + if (loc == std::string::npos || xml[loc+1] == '/') + { + if (printError) KConsole::printError(kStringPrintf("invalid XML:\nmissing value '%s'", name.c_str())); +@@ -379,8 +379,8 @@ + } + else if (typeString == "string") + { +- unsigned int first = substring.find("\"")+1; +- unsigned int last = substring.rfind("\"", std::string::npos); ++ std::string::size_type first = substring.find("\"")+1; ++ std::string::size_type last = substring.rfind("\"", std::string::npos); + *((std::string*)value) = substring.substr(first, last-first); + } + +--- a/kodilib/src/types/KKey.cpp ++++ b/kodilib/src/types/KKey.cpp +@@ -31,7 +31,7 @@ + // -------------------------------------------------------------------------------------------------------- + std::string KKey::getUnmodifiedName () const + { +- unsigned int keyPos = name.find('_', 0); ++ std::string::size_type keyPos = name.find('_', 0); + if (keyPos == std::string::npos) + { + return name; +@@ -42,7 +42,7 @@ + // -------------------------------------------------------------------------------------------------------- + std::string KKey::getModifierName () const + { +- unsigned int keyPos = name.find('_', 0); ++ std::string::size_type keyPos = name.find('_', 0); + if (keyPos == std::string::npos) + { + return ""; +--- a/kodilib/src/widgets/KFileNameField.cpp ++++ b/kodilib/src/widgets/KFileNameField.cpp +@@ -41,7 +41,7 @@ + std::string restPath; // path behind cursor + + // map cropped path to current directory and rest path to file prefix +- unsigned int lastSlashPos = croppedPath.rfind("/"); ++ std::string::size_type lastSlashPos = croppedPath.rfind("/"); + if (lastSlashPos < croppedPath.size()-1) + { + restPath = croppedPath.substr(lastSlashPos+1); +@@ -88,7 +88,7 @@ + } + + // ............................collect list of entries in searchDir that match prefix restPath +- unsigned int restLength = restPath.size(); ++ std::string::size_type restLength = restPath.size(); + std::vector matchingEntries; + std::vector::iterator iter = dir_entries.begin(); + while (iter != dir_entries.end()) +@@ -223,7 +223,7 @@ + // -------------------------------------------------------------------------------------------------------- + void KFileNameField::selectLastPathComponent () + { +- unsigned int lastSlashPos = text.rfind("/"); ++ std::string::size_type lastSlashPos = text.rfind("/"); + if (lastSlashPos == text.size()-1) lastSlashPos = text.rfind("/", lastSlashPos-1); + if (lastSlashPos < text.size()) cursor_pos = lastSlashPos+1; + else cursor_pos = 0; +--- a/src/gui/KikiMenu.cpp ++++ b/src/gui/KikiMenu.cpp +@@ -54,7 +54,7 @@ + { + std::string item_text (itemText); + std::string event_name (itemText); +- unsigned int pos; ++ std::string::size_type pos; + float scale_factor = 1.0; + + KikiMenuItem * menu_item = new KikiMenuItem (); +--- a/src/gui/KikiTextLine.cpp ++++ b/src/gui/KikiTextLine.cpp +@@ -46,7 +46,7 @@ + void KikiTextLine::setText ( const std::string & str ) + { + text = str; +- unsigned int pos; ++ std::string::size_type pos; + + if ((pos = text.find ("$scale(")) != std::string::npos) + { -- cgit v1.2.3 From 4264db22095882b7706ae2b9680bde2d355987b3 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Thu, 13 Apr 2017 16:50:22 +0530 Subject: gnu: password-store: Update to 1.7.1. * gnu/packages/password-utils.scm (password-store): Update to 1.7.1. [source]: Remove "password-store-gnupg-compat.patch". * gnu/packages/patches/password-store-gnupg-compat.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/password-utils.scm | 5 +- .../patches/password-store-gnupg-compat.patch | 53 ---------------------- 3 files changed, 2 insertions(+), 57 deletions(-) delete mode 100644 gnu/packages/patches/password-store-gnupg-compat.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 9385b3df94..c97a0ed3b6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -827,7 +827,6 @@ dist_patch_DATA = \ %D%/packages/patches/ots-no-include-missing-file.patch \ %D%/packages/patches/p7zip-CVE-2016-9296.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \ - %D%/packages/patches/password-store-gnupg-compat.patch \ %D%/packages/patches/patchelf-page-size.patch \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 66d5f8cf88..9daacd871e 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -284,7 +284,7 @@ (define-public assword (define-public password-store (package (name "password-store") - (version "1.7") + (version "1.7.1") (source (origin (method url-fetch) (uri @@ -292,8 +292,7 @@ (define-public password-store name "-" version ".tar.xz")) (sha256 (base32 - "002mw7j0m33bw483rllzhcf41wp3ixka8yma6kqrfaj57jyw66hn")) - (patches (search-patches "password-store-gnupg-compat.patch")))) + "0scqkpll2q8jhzcgcsh9kqz0gwdpvynivqjmmbzax2irjfaiklpn")))) (build-system gnu-build-system) (arguments '(#:phases diff --git a/gnu/packages/patches/password-store-gnupg-compat.patch b/gnu/packages/patches/password-store-gnupg-compat.patch deleted file mode 100644 index c314ba6647..0000000000 --- a/gnu/packages/patches/password-store-gnupg-compat.patch +++ /dev/null @@ -1,53 +0,0 @@ -Copied from upstream mailing list: -https://lists.zx2c4.com/pipermail/password-store/2017-March/002844.html. - -The patch actually restores compatibility with GnuPG 2.1.19, the '2.2.19' in -the commit message is a typo. - -From 8723d8e8192683891904aff321446b0fac37d1ad Mon Sep 17 00:00:00 2001 -From: Andreas Stieger -Date: Fri, 10 Mar 2017 15:43:26 +0100 -Subject: [PATCH] Fix compatibility with GnuPG 2.2.19 - -GnuPG 2.2.19 added a warning when no command was given. - -* src/password-store.sh (reencrypt_path): Add --decrypt to --list-only -* tests/t0300-reencryption.sh (gpg_keys_from_encrypted_file): same - -https://bugs.gnupg.org/gnupg/msg9873 -http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commit;h=810adfd47801fc01e45fb71af9f05c91f7890cdb -https://bugzilla.suse.com/show_bug.cgi?id=1028867 ---- - src/password-store.sh | 2 +- - tests/t0300-reencryption.sh | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/password-store.sh b/src/password-store.sh -index 1ab6fb5..bad8d4f 100755 ---- a/src/password-store.sh -+++ b/src/password-store.sh -@@ -125,7 +125,7 @@ reencrypt_path() { - done - gpg_keys="$($GPG $PASSWORD_STORE_GPG_OPTS --list-keys --with-colons "${GPG_RECIPIENTS[@]}" | sed -n 's/sub:[^:]*:[^:]*:[^:]*:\([^:]*\):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[a-zA-Z]*e[a-zA-Z]*:.*/\1/p' | LC_ALL=C sort -u)" - fi -- current_keys="$($GPG $PASSWORD_STORE_GPG_OPTS -v --no-secmem-warning --no-permission-warning --list-only --keyid-format long "$passfile" 2>&1 | cut -d ' ' -f 5 | LC_ALL=C sort -u)" -+ current_keys="$($GPG $PASSWORD_STORE_GPG_OPTS -v --no-secmem-warning --no-permission-warning --decrypt --list-only --keyid-format long "$passfile" 2>&1 | cut -d ' ' -f 5 | LC_ALL=C sort -u)" - - if [[ $gpg_keys != "$current_keys" ]]; then - echo "$passfile_display: reencrypting to ${gpg_keys//$'\n'/ }" -diff --git a/tests/t0300-reencryption.sh b/tests/t0300-reencryption.sh -index 9d46580..6d5811d 100755 ---- a/tests/t0300-reencryption.sh -+++ b/tests/t0300-reencryption.sh -@@ -10,7 +10,7 @@ canonicalize_gpg_keys() { - $GPG --list-keys --with-colons "$@" | sed -n 's/sub:[^:]*:[^:]*:[^:]*:\([^:]*\):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[a-zA-Z]*e[a-zA-Z]*:.*/\1/p' | LC_ALL=C sort -u - } - gpg_keys_from_encrypted_file() { -- $GPG -v --no-secmem-warning --no-permission-warning --list-only --keyid-format long "$1" 2>&1 | cut -d ' ' -f 5 | LC_ALL=C sort -u -+ $GPG -v --no-secmem-warning --no-permission-warning --decrypt --list-only --keyid-format long "$1" 2>&1 | cut -d ' ' -f 5 | LC_ALL=C sort -u - } - gpg_keys_from_group() { - local output="$($GPG --list-config --with-colons | sed -n "s/^cfg:group:$1:\\(.*\\)/\\1/p" | head -n 1)" --- -2.12.0 - -- cgit v1.2.3 From b77e3a1c4eabbd6010083a6cb9aad7cf5a9a4d45 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 12 Apr 2017 22:27:16 +0200 Subject: gnu: Add teeworlds. * gnu/packages/games.scm (teeworlds): New variable. * gnu/packages/patches/teeworlds-use-latest-wavpack.patch: New file. * gnu/local.mk (dist_patch_DATA): Add patch. --- gnu/local.mk | 1 + gnu/packages/games.scm | 89 ++++++++++++++++++++++ .../patches/teeworlds-use-latest-wavpack.patch | 84 ++++++++++++++++++++ 3 files changed, 174 insertions(+) create mode 100644 gnu/packages/patches/teeworlds-use-latest-wavpack.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 779cb0dfd5..45df0eba8a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -957,6 +957,7 @@ dist_patch_DATA = \ %D%/packages/patches/tcsh-fix-autotest.patch \ %D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \ + %D%/packages/patches/teeworlds-use-latest-wavpack.patch \ %D%/packages/patches/texlive-texmf-CVE-2016-10243.patch \ %D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-i18n.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 710b2746c9..a956f0ca44 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -56,6 +56,7 @@ (define-module (gnu packages games) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) #:use-module (gnu packages base) + #:use-module (gnu packages build-tools) #:use-module (gnu packages admin) #:use-module (gnu packages audio) #:use-module (gnu packages avahi) @@ -3649,3 +3650,91 @@ (define-public kiki ;; kiki-the-nano-bot/kiki-the-nano-bot_1.0.2+dfsg1-4_copyright> ;; for a statement from the author. (license license:public-domain))) + +(define-public teeworlds + (package + (name "teeworlds") + (version "0.6.4") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/teeworlds/teeworlds/" + "archive/" version "-release.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1mqhp6xjl75l49050cid36wxyjn1qr0vjx1c709dfg1lkvmgs6l3")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file-recursively + '("src/engine/external/wavpack/" + "src/engine/external/zlib/")) + #t)) + (patches + (search-patches "teeworlds-use-latest-wavpack.patch")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests included + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; Embed path to assets. + (substitute* "src/engine/shared/storage.cpp" + (("#define DATA_DIR.*") + (string-append "#define DATA_DIR \"" + (assoc-ref outputs "out") + "/share/teeworlds/data" + "\""))) + + ;; Bam expects all files to have a recent time stamp. + (for-each (lambda (file) + (utime file 1 1)) + (find-files ".")) + + ;; Do not use bundled libraries. + (substitute* "bam.lua" + (("if config.zlib.value == 1 then") + "if true then") + (("wavpack = .*") + "wavpack = {} +settings.link.libs:Add(\"wavpack\")\n")) + (substitute* "src/engine/client/sound.cpp" + (("#include ") + "#include ")) + #t)) + (replace 'build + (lambda _ + (zero? (system* "bam" "-a" "-v" "release")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (data (string-append out "/share/teeworlds/data"))) + (mkdir-p bin) + (mkdir-p data) + (for-each (lambda (file) + (install-file file bin)) + '("teeworlds" "teeworlds_srv")) + (copy-recursively "data" data) + #t)))))) + ;; FIXME: teeworlds bundles the sources of "pnglite", a two-file PNG + ;; library without a build system. + (inputs + `(("freetype" ,freetype) + ("glu" ,glu) + ("mesa" ,mesa) + ("sdl-union" ,(sdl-union (list sdl + sdl-mixer + sdl-image))) + ("wavpack" ,wavpack) + ("zlib" ,zlib))) + (native-inputs + `(("bam" ,bam) + ("python" ,python-2))) + (home-page "https://www.teeworlds.com") + (synopsis "2D retro multiplayer shooter game") + (description "Teeworlds is an online multiplayer game. Battle with up to +16 players in a variety of game modes, including Team Deathmatch and Capture +The Flag. You can even design your own maps!") + (license license:bsd-3))) diff --git a/gnu/packages/patches/teeworlds-use-latest-wavpack.patch b/gnu/packages/patches/teeworlds-use-latest-wavpack.patch new file mode 100644 index 0000000000..e9fd991087 --- /dev/null +++ b/gnu/packages/patches/teeworlds-use-latest-wavpack.patch @@ -0,0 +1,84 @@ +Downloaded from https://anonscm.debian.org/cgit/pkg-games/teeworlds.git/plain/debian/patches/new-wavpack.patch. + +This patch lets us build teeworlds with wavpack 5.1.0. + +--- a/src/engine/client/sound.cpp ++++ b/src/engine/client/sound.cpp +@@ -328,17 +328,14 @@ void CSound::RateConvert(int SampleID) + pSample->m_NumFrames = NumFrames; + } + +-int CSound::ReadData(void *pBuffer, int Size) +-{ +- return io_read(ms_File, pBuffer, Size); +-} +- + int CSound::LoadWV(const char *pFilename) + { + CSample *pSample; + int SampleID = -1; + char aError[100]; + WavpackContext *pContext; ++ char aWholePath[1024]; ++ IOHANDLE File; + + // don't waste memory on sound when we are stress testing + if(g_Config.m_DbgStress) +@@ -351,19 +348,23 @@ int CSound::LoadWV(const char *pFilename + if(!m_pStorage) + return -1; + +- ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL); +- if(!ms_File) ++ File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL, aWholePath, sizeof(aWholePath)); ++ if(!File) + { + dbg_msg("sound/wv", "failed to open file. filename='%s'", pFilename); + return -1; + } ++ else ++ { ++ io_close(File); ++ } + + SampleID = AllocID(); + if(SampleID < 0) + return -1; + pSample = &m_aSamples[SampleID]; + +- pContext = WavpackOpenFileInput(ReadData, aError); ++ pContext = WavpackOpenFileInput(aWholePath, aError, OPEN_2CH_MAX, 0); + if (pContext) + { + int m_aSamples = WavpackGetNumSamples(pContext); +@@ -419,9 +420,6 @@ int CSound::LoadWV(const char *pFilename + dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError); + } + +- io_close(ms_File); +- ms_File = NULL; +- + if(g_Config.m_Debug) + dbg_msg("sound/wv", "loaded %s", pFilename); + +@@ -527,7 +525,5 @@ void CSound::StopAll() + lock_unlock(m_SoundLock); + } + +-IOHANDLE CSound::ms_File = 0; +- + IEngineSound *CreateEngineSound() { return new CSound; } + +--- a/src/engine/client/sound.h ++++ b/src/engine/client/sound.h +@@ -21,10 +21,6 @@ public: + + static void RateConvert(int SampleID); + +- // TODO: Refactor: clean this mess up +- static IOHANDLE ms_File; +- static int ReadData(void *pBuffer, int Size); +- + virtual bool IsSoundEnabled() { return m_SoundEnabled != 0; } + + virtual int LoadWV(const char *pFilename); -- cgit v1.2.3