From f528df99f1e99fa32f7cc6d291262192234ec758 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 20 Jan 2020 11:34:01 -0500 Subject: gnu: QEMU: Fix CVE-2020-{7039,7211}. * gnu/packages/patches/qemu-CVE-2020-7039.patch, gnu/packages/patches/qemu-CVE-2020-7211.patch: New files. * gnu/local.mk (dist_patch_DATA): Add them. * gnu/packages/virtualization.scm (qemu)[source]: Use them. --- gnu/local.mk | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 563c98b122..2cb400d84b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1336,6 +1336,8 @@ dist_patch_DATA = \ %D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ + %D%/packages/patches/qemu-CVE-2020-7039.patch \ + %D%/packages/patches/qemu-CVE-2020-7211.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ -- cgit v1.2.3 From 3778b3d9d013a443eec7990c31f47f887f72fe59 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 19 Jan 2020 18:25:06 -0500 Subject: gnu: QEMU: Update to 4.2.0. * gnu/packages/virtualization.scm (qemu): Update to 4.2.0. [source]: Use new patch. * gnu/packages/patches/qemu-fix-documentation-build-failure.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + .../qemu-fix-documentation-build-failure.patch | 43 ++++++++++++++++++++++ gnu/packages/virtualization.scm | 7 ++-- 3 files changed, 48 insertions(+), 3 deletions(-) create mode 100644 gnu/packages/patches/qemu-fix-documentation-build-failure.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 2cb400d84b..bc011c09fb 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1338,6 +1338,7 @@ dist_patch_DATA = \ %D%/packages/patches/qemu-glibc-2.27.patch \ %D%/packages/patches/qemu-CVE-2020-7039.patch \ %D%/packages/patches/qemu-CVE-2020-7211.patch \ + %D%/packages/patches/qemu-fix-documentation-build-failure.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ diff --git a/gnu/packages/patches/qemu-fix-documentation-build-failure.patch b/gnu/packages/patches/qemu-fix-documentation-build-failure.patch new file mode 100644 index 0000000000..c913c553b2 --- /dev/null +++ b/gnu/packages/patches/qemu-fix-documentation-build-failure.patch @@ -0,0 +1,43 @@ +Fix a build failure caused by a texinfo bug: + +qemu-doc.texi:41: @menu reference to nonexistent node `QEMU Guest Agent' + +Patch copied from upstream source repository: + +https://git.qemu.org/?p=qemu.git;a=commitdiff;h=80bc935eaaf93e5b9a4efe97abd7c51d645f2612 + +From 80bc935eaaf93e5b9a4efe97abd7c51d645f2612 Mon Sep 17 00:00:00 2001 +From: Thomas Huth +Date: Mon, 16 Dec 2019 14:29:41 +0100 +Subject: [PATCH] qemu-doc: Remove the unused "Guest Agent" node +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The node has been removed from the texi file some months ago, so we +should remove it from the menu section, too. + +Fixes: 27a296fce982 ("qemu-ga: Convert invocation documentation to rST") +Signed-off-by: Thomas Huth +Reviewed-by: Philippe Mathieu-Daudé +Message-Id: <20191216132941.25729-1-thuth@redhat.com> +Signed-off-by: Laurent Vivier +--- + qemu-doc.texi | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/qemu-doc.texi b/qemu-doc.texi +index eea91a2d1e..39f950471f 100644 +--- a/qemu-doc.texi ++++ b/qemu-doc.texi +@@ -38,7 +38,6 @@ + * Introduction:: + * QEMU PC System emulator:: + * QEMU System emulator for non PC targets:: +-* QEMU Guest Agent:: + * QEMU User space emulator:: + * System requirements:: + * Security:: +-- +2.24.1 + diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 3001c4ee50..b7e4dfe0c4 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -110,16 +110,17 @@ (define-public qemu (package (name "qemu") - (version "4.1.1") + (version "4.2.0") (source (origin (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) (patches (search-patches "qemu-CVE-2020-7039.patch" - "qemu-CVE-2020-7211.patch")) + "qemu-CVE-2020-7211.patch" + "qemu-fix-documentation-build-failure.patch")) (sha256 (base32 - "1lm1jndfpc5sydwrxyiz5sms414zkcg9jdl0zx318qbjsayxnvzd")))) + "1w38hzlw7xp05gcq1nhga7hxvndxy6dfcnzi7q2il8ff110isj6k")))) (build-system gnu-build-system) (arguments '(;; Running tests in parallel can occasionally lead to failures, like: -- cgit v1.2.3 From af204f933f11928aacb6747cf94dfe90665cf614 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Mon, 20 Jan 2020 22:02:28 +0100 Subject: gnu: Add dolphin. * gnu/packages/kde-system.scm: New file. * gnu/local.mk: Add it. --- gnu/local.mk | 1 + gnu/packages/kde-systemtools.scm | 88 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 89 insertions(+) create mode 100644 gnu/packages/kde-systemtools.scm (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 7267bb79de..209bc7abf3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -285,6 +285,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/kde-frameworks.scm \ %D%/packages/kde-multimedia.scm \ %D%/packages/kde-plasma.scm \ + %D%/packages/kde-systemtools.scm \ %D%/packages/kde-utils.scm \ %D%/packages/kerberos.scm \ %D%/packages/key-mon.scm \ diff --git a/gnu/packages/kde-systemtools.scm b/gnu/packages/kde-systemtools.scm new file mode 100644 index 0000000000..11228630ab --- /dev/null +++ b/gnu/packages/kde-systemtools.scm @@ -0,0 +1,88 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2020 Hartmut Goebel +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages kde-systemtools) + #:use-module (guix build-system qt) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages kde) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages qt) + #:use-module (gnu packages ruby)) + +(define-public dolphin + (package + (name "dolphin") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/dolphin-" version ".tar.xz")) + (sha256 + (base32 "0klxyvcj1bmzpsyahj9kq3smvwzww30pjk5c90j6jpf14hizawfy")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools) + ("ruby" ,ruby) + ("ruby-test-unit" ,ruby-test-unit))) + (inputs + `(("baloo" ,baloo) + ("baloo-widgets" ,baloo-widgets) + ("kactivities" ,kactivities) + ("kbookmarks" ,kbookmarks) + ("kcmutils" ,kcmutils) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kinit" ,kinit) + ("kio" ,kio) + ("knewstuff" ,knewstuff) + ("knotifications" ,knotifications) + ("kparts" ,kparts) + ("ktextwidgets" ,ktextwidgets) + ("kwindowsystem" ,kwindowsystem) + ("oxygen-icons" ,oxygen-icons) ;; default icon set + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("solid" ,solid))) + (arguments + `(#:tests? #f)) ;; TODO: 4/15 tests fail even with offscreen + (home-page "https://kde.org/applications/system/org.kde.dolphin") + (synopsis "File manager for KDE") + (description "Dolphin is a file manager for KDE focusing on usability. +The main features of Dolphin are: +@itemize +@item Navigation bar for URLs, which allows to navigate quickly + through the file hierarchy. +@item View properties are remembered for each folder. +@item Split of views is supported. +@item Network transparency. +@item Undo/redo functionality. +@item Renaming of a variable number of selected items in one step. +@end itemize") + (license ;; GPL for programs, FDL for documentation + (list license:gpl2+ license:fdl1.2+)))) -- cgit v1.2.3 From 0d486909083c98d7c75cdfc027f89e69f9bf8f48 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 29 Jan 2020 22:42:12 +0100 Subject: gnu: opensmtpd-next: Promote to opensmtpd [fixes CVE-2020-7247]. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's still unclear (to me) whether our opensmtpd package is affected, but this change has been delayed for long enough in any case. * gnu/packages/mail.scm (opensmtpd-next): Rename to… (opensmtpd): …this. * gnu/packages/patches/opensmtpd-fix-crash.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/mail.scm | 66 -------------------------- gnu/packages/patches/opensmtpd-fix-crash.patch | 44 ----------------- 3 files changed, 111 deletions(-) delete mode 100644 gnu/packages/patches/opensmtpd-fix-crash.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index bc011c09fb..aa8e6e0d0d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1235,7 +1235,6 @@ dist_patch_DATA = \ %D%/packages/patches/openjdk-10-idlj-reproducibility.patch \ %D%/packages/patches/openmpi-mtl-priorities.patch \ %D%/packages/patches/openocd-nrf52.patch \ - %D%/packages/patches/opensmtpd-fix-crash.patch \ %D%/packages/patches/openssl-runpath.patch \ %D%/packages/patches/openssl-1.1-c-rehash-in.patch \ %D%/packages/patches/openssl-c-rehash-in.patch \ diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index aa37c4e38c..0538342977 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -2301,72 +2301,6 @@ transfer protocols.") (define-public opensmtpd (package (name "opensmtpd") - (version "6.0.3p1") - (source (origin - (method url-fetch) - (uri (string-append "https://www.opensmtpd.org/archives/" - name "-" version ".tar.gz")) - (sha256 - (base32 - "10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619")) - ;; Fixed upstream: . - (patches (search-patches "opensmtpd-fix-crash.patch")))) - (build-system gnu-build-system) - (inputs - `(("bdb" ,bdb) - ("libressl" ,libressl) - ("libevent" ,libevent) - ("libasr" ,libasr) - ("linux-pam" ,linux-pam) - ("zlib" ,zlib))) - (native-inputs - `(("bison" ,bison) - ("groff" ,groff))) - (arguments - `(#:configure-flags - (list "--with-table-db" "--with-auth-pam" "--localstatedir=/var" - "--with-user-smtpd=smtpd" "--with-user-queue=smtpq" - "--with-group-queue=smtpq" - "--with-path-socket=/var/run" ; not default (./configure lies) - "--with-path-CAfile=/etc/ssl/certs/ca-certificates.crt") - #:phases - (modify-phases %standard-phases - ;; Fix some incorrectly hard-coded external tool file names. - (add-after 'unpack 'patch-FHS-file-names - (lambda _ - (substitute* "smtpd/smtpctl.c" - (("/bin/cat") (which "cat")) - (("/bin/sh") (which "sh"))) - #t)) - ;; OpenSMTPD provides a single utility smtpctl to control the daemon and - ;; the local submission subsystem. To accomodate systems that require - ;; historical interfaces such as sendmail, newaliases or makemap, the - ;; smtpctl utility can operate in compatibility mode if called with the - ;; historical name. - (add-after 'install 'install-compability-links - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (sbin (string-append out "/sbin/"))) - (for-each (lambda (command) - (symlink "smtpctl" (string-append sbin command))) - '("makemap" "sendmail" "send-mail" - "newaliases" "mailq"))) - #t))))) - (synopsis "Lightweight SMTP daemon") - (description - "OpenSMTPD is an implementation of the server-side SMTP protocol, with -some additional standard extensions. It allows ordinary machines to exchange -e-mails with other systems speaking the SMTP protocol.") - (home-page "https://www.opensmtpd.org") - (license (list bsd-2 bsd-3 bsd-4 (non-copyleft "file://COPYING") - public-domain isc license:openssl)))) - -;; OpenSMTPd 6.4 introduced a new and incompatible configuration file format. -;; Use a different name, for now, to avoid auto-upgrades and broken mail boxes. -;; OPENSMTP-CONFIGURATION in (gnu services mail) will also need an overhaul. -(define-public opensmtpd-next - (package - (name "opensmtpd-next") (version "6.6.2p1") (source (origin diff --git a/gnu/packages/patches/opensmtpd-fix-crash.patch b/gnu/packages/patches/opensmtpd-fix-crash.patch deleted file mode 100644 index 0030167533..0000000000 --- a/gnu/packages/patches/opensmtpd-fix-crash.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 9b5f70b93e038df5446bd37a4adac5a0380748e7 Mon Sep 17 00:00:00 2001 -From: johannes -Date: Wed, 21 Feb 2018 23:57:11 +0100 -Subject: [PATCH] crypt_checkpass: include HAVE_CRYPT_H definition, add NULL - check - ---- - openbsd-compat/crypt_checkpass.c | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/openbsd-compat/crypt_checkpass.c b/openbsd-compat/crypt_checkpass.c -index dafd2dae..d10b3a57 100644 ---- a/openbsd-compat/crypt_checkpass.c -+++ b/openbsd-compat/crypt_checkpass.c -@@ -1,5 +1,6 @@ - /* OPENBSD ORIGINAL: lib/libc/crypt/cryptutil.c */ - -+#include "includes.h" - #include - #ifdef HAVE_CRYPT_H - #include -@@ -10,6 +11,8 @@ - int - crypt_checkpass(const char *pass, const char *goodhash) - { -+ char *c; -+ - if (goodhash == NULL) - goto fail; - -@@ -17,7 +20,11 @@ crypt_checkpass(const char *pass, const char *goodhash) - if (strlen(goodhash) == 0 && strlen(pass) == 0) - return 0; - -- if (strcmp(crypt(pass, goodhash), goodhash) == 0) -+ c = crypt(pass, goodhash); -+ if (c == NULL) -+ goto fail; -+ -+ if (strcmp(c, goodhash) == 0) - return 0; - - fail: - -- cgit v1.2.3 From aa2e83cce2b4a4d20e1d68edaa1aaa0c590ad72e Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Fri, 31 Jan 2020 09:14:07 -0600 Subject: gnu: superlu-dist: Update to 6.2.0. * gnu/packages/maths.scm (superlu-dist): Update to 6.2.0. [source]: Update upstream url. Remove mpi deprecations patch. * gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/maths.scm | 11 ++--- .../superlu-dist-fix-mpi-deprecations.patch | 57 ---------------------- 3 files changed, 5 insertions(+), 64 deletions(-) delete mode 100644 gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index aa8e6e0d0d..24ab39a6a8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1394,7 +1394,6 @@ dist_patch_DATA = \ %D%/packages/patches/spice-fix-test-armhf.patch \ %D%/packages/patches/steghide-fixes.patch \ %D%/packages/patches/superlu-dist-awpm-grid.patch \ - %D%/packages/patches/superlu-dist-fix-mpi-deprecations.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/supertux-unbundle-squirrel.patch \ %D%/packages/patches/swig-guile-gc.patch \ diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 62f86ff13b..5ac3bd1403 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015, 2016, 2019 Andreas Enge ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2014, 2016, 2017 John Darrington -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Eric Bavier +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Eric Bavier ;;; Copyright © 2014 Federico Beffa ;;; Copyright © 2014 Mathieu Lirzin ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus @@ -2473,14 +2473,14 @@ also provides threshold-based ILU factorization preconditioners.") (define-public superlu-dist (package (name "superlu-dist") - (version "6.1.0") + (version "6.2.0") (source (origin (method url-fetch) - (uri (string-append "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/" + (uri (string-append "https://portal.nersc.gov/project/sparse/superlu/" "superlu_dist_" version ".tar.gz")) (sha256 - (base32 "0pqgcgh1yxhfzs99fas3mggajzd5wca3nbyp878rziy74gfk03dl")) + (base32 "1ynmwqajc9sc3my2hssa5k9s58ggvizqv9rdss0j7w99pbh5mnvw")) (modules '((guix build utils))) (snippet ;; Replace the non-free implementation of MC64 with a stub @@ -2506,8 +2506,7 @@ void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g, "RowPerm = NOROWPERM;")) #t)) (patches (search-patches "superlu-dist-scotchmetis.patch" - "superlu-dist-awpm-grid.patch" - "superlu-dist-fix-mpi-deprecations.patch")))) + "superlu-dist-awpm-grid.patch")))) (build-system cmake-build-system) (native-inputs `(("tcsh" ,tcsh))) diff --git a/gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch b/gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch deleted file mode 100644 index 25f0aaf2f3..0000000000 --- a/gnu/packages/patches/superlu-dist-fix-mpi-deprecations.patch +++ /dev/null @@ -1,57 +0,0 @@ -From c9cbcf8730221e366c7495073f8f8d819ee8ce89 Mon Sep 17 00:00:00 2001 -From: Eric Bavier -Date: Wed, 6 Feb 2019 10:06:59 -0600 -Subject: [PATCH] Replace deprecated MPI_Attr_get. - -Fixes build with OpenMPI version 4.0. - -* SRC/pdgstrf.c, SRC/pdgstrf.c, SRC/superlu_grid.c: 'MPI_Attr_get' -> - 'MPI_Comm_get_attr'. ---- - SRC/pdgstrf.c | 2 +- - SRC/pzgstrf.c | 2 +- - SRC/superlu_grid.c | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/SRC/pdgstrf.c b/SRC/pdgstrf.c -index 736ffa2..f92a1ba 100644 ---- a/SRC/pdgstrf.c -+++ b/SRC/pdgstrf.c -@@ -426,7 +426,7 @@ pdgstrf(superlu_dist_options_t * options, int m, int n, double anorm, - s_eps = smach_dist("Epsilon"); - thresh = s_eps * anorm; - -- MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag); -+ MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag); - if (!flag) { - fprintf (stderr, "Could not get TAG_UB\n"); - return (-1); -diff --git a/SRC/pzgstrf.c b/SRC/pzgstrf.c -index 8896548..8800057 100644 ---- a/SRC/pzgstrf.c -+++ b/SRC/pzgstrf.c -@@ -426,7 +426,7 @@ pzgstrf(superlu_dist_options_t * options, int m, int n, double anorm, - s_eps = smach_dist("Epsilon"); - thresh = s_eps * anorm; - -- MPI_Attr_get (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag); -+ MPI_Comm_get_attr (MPI_COMM_WORLD, MPI_TAG_UB, &attr_val, &flag); - if (!flag) { - fprintf (stderr, "Could not get TAG_UB\n"); - return (-1); -diff --git a/SRC/superlu_grid.c b/SRC/superlu_grid.c -index 1213d27..0c0fb90 100644 ---- a/SRC/superlu_grid.c -+++ b/SRC/superlu_grid.c -@@ -150,7 +150,7 @@ void superlu_gridmap( - { - int tag_ub; - if ( !grid->iam ) { -- MPI_Attr_get(Bcomm, MPI_TAG_UB, &tag_ub, &info); -+ MPI_Comm_get_attr(Bcomm, MPI_TAG_UB, &tag_ub, &info); - printf("MPI_TAG_UB %d\n", tag_ub); - /* returns 4295677672 - In reality it is restricted to no greater than 16384. */ --- -2.20.1 - -- cgit v1.2.3 From 1f9fae008d52a9901d016d418d3931f6e9ccbd00 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sun, 2 Feb 2020 02:07:17 +0000 Subject: gnu: u-boot-qemu-riscv64-smode: Patch to fix boot menu. * gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch: New patch. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/bootloaders (u-boot-qemu-riscv64-smode): Add patch. --- gnu/local.mk | 1 + gnu/packages/bootloaders.scm | 8 +++- .../patches/u-boot-riscv64-fix-extlinux.patch | 54 ++++++++++++++++++++++ 3 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 24ab39a6a8..42516544cc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1430,6 +1430,7 @@ dist_patch_DATA = \ %D%/packages/patches/tomb-fix-errors-on-open.patch \ %D%/packages/patches/tuxpaint-stamps-path.patch \ %D%/packages/patches/txr-shell.patch \ + %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \ %D%/packages/patches/ucx-tcp-iface-ioctl.patch \ %D%/packages/patches/udiskie-no-appindicator.patch \ %D%/packages/patches/unzip-CVE-2014-8139.patch \ diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index be5e4eebb1..63a88dd7ec 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -755,7 +755,13 @@ to Novena upstream, does not load u-boot.img from the first partition.") (make-u-boot-package "qemu-riscv64" "riscv64-linux-gnu")) (define-public u-boot-qemu-riscv64-smode - (make-u-boot-package "qemu-riscv64_smode" "riscv64-linux-gnu")) + (let ((base (make-u-boot-package "qemu-riscv64_smode" "riscv64-linux-gnu"))) + (package + (inherit base) + (source (origin + (inherit (package-source u-boot)) + (patches + (search-patches "u-boot-riscv64-fix-extlinux.patch"))))))) (define-public u-boot-sifive-fu540 (make-u-boot-package "sifive_fu540" "riscv64-linux-gnu")) diff --git a/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch b/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch new file mode 100644 index 0000000000..3feeb1dc5e --- /dev/null +++ b/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch @@ -0,0 +1,54 @@ +From 3fc056f0b9f7c26e58a1e947c8c0184e55919614 Mon Sep 17 00:00:00 2001 +From: David Abdurachmanov +Date: Wed, 21 Aug 2019 12:07:20 -0700 +Subject: [PATCH] qemu-riscv64_smode, sifive-fu540: fix extlinux (define + preboot) +Forwarded: https://patchwork.ozlabs.org/patch/1151125/ + +Commit 37304aaf60bf92a5dc3ef222ba520698bd862a44 removed preboot +commands in RISC-V targets and broke extlinux support as reported +by Fu Wei . + +The patch finishes migration of CONFIG_USE_PREBOOT and CONFIG_REBOOT +to Kconfig. + +Signed-off-by: David Abdurachmanov +--- + configs/qemu-riscv64_smode_defconfig | 2 ++ + configs/sifive_fu540_defconfig | 2 ++ + include/configs/sifive-fu540.h | 4 ---- + 3 files changed, 4 insertions(+), 4 deletions(-) + +Index: u-boot/configs/qemu-riscv64_smode_defconfig +=================================================================== +--- u-boot.orig/configs/qemu-riscv64_smode_defconfig ++++ u-boot/configs/qemu-riscv64_smode_defconfig +@@ -14,3 +14,5 @@ CONFIG_CMD_NVEDIT_EFI=y + CONFIG_OF_PRIOR_STAGE=y + CONFIG_SYS_RELOC_GD_ENV_ADDR=y + CONFIG_DM_MTD=y ++CONFIG_USE_PREBOOT=y ++CONFIG_PREBOOT="setenv fdt_addr ${fdtcontroladdr}; fdt addr ${fdtcontroladdr};" +Index: u-boot/configs/sifive_fu540_defconfig +=================================================================== +--- u-boot.orig/configs/sifive_fu540_defconfig ++++ u-boot/configs/sifive_fu540_defconfig +@@ -12,3 +12,5 @@ CONFIG_DISPLAY_BOARDINFO=y + CONFIG_DEFAULT_DEVICE_TREE="hifive-unleashed-a00" + CONFIG_SYS_RELOC_GD_ENV_ADDR=y + CONFIG_DM_MTD=y ++CONFIG_USE_PREBOOT=y ++CONFIG_PREBOOT="setenv fdt_addr ${fdtcontroladdr}; fdt addr ${fdtcontroladdr};" +Index: u-boot/include/configs/sifive-fu540.h +=================================================================== +--- u-boot.orig/include/configs/sifive-fu540.h ++++ u-boot/include/configs/sifive-fu540.h +@@ -40,8 +40,4 @@ + "ramdisk_addr_r=0x88300000\0" \ + BOOTENV + +-#define CONFIG_PREBOOT \ +- "setenv fdt_addr ${fdtcontroladdr};" \ +- "fdt addr ${fdtcontroladdr};" +- + #endif /* __CONFIG_H */ -- cgit v1.2.3 From f389c65dbbc4ed1802707aba709bef01bd315895 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 3 Jan 2020 17:20:27 +0100 Subject: gnu: Add sdl-pango. * gnu/packages/sdl.scm (sdl-pango): New variable. * gnu/packages/patches/sdl-pango-api_additions.patch: New file. * gnu/packages/patches/sdl-pango-blit_overflow.patch: New file. * gnu/packages/patches/sdl-pango-fillrect_crash.patch: New file. * gnu/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch: New file. * gnu/packages/patches/sdl-pango-matrix_declarations.patch: New file. * gnu/packages/patches/sdl-pango-sans-serif.patch: New file. * gnu/local.mk (sdl-pango): Reference patches. add --- gnu/local.mk | 6 + gnu/packages/patches/sdl-pango-api_additions.patch | 128 ++++++++++++++++++++ gnu/packages/patches/sdl-pango-blit_overflow.patch | 32 +++++ .../patches/sdl-pango-fillrect_crash.patch | 15 +++ ...x-explicit-SDLPango_CopyFTBitmapToSurface.patch | 20 ++++ .../patches/sdl-pango-matrix_declarations.patch | 131 +++++++++++++++++++++ gnu/packages/patches/sdl-pango-sans-serif.patch | 13 ++ gnu/packages/sdl.scm | 52 +++++++- 8 files changed, 396 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/sdl-pango-api_additions.patch create mode 100644 gnu/packages/patches/sdl-pango-blit_overflow.patch create mode 100644 gnu/packages/patches/sdl-pango-fillrect_crash.patch create mode 100644 gnu/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch create mode 100644 gnu/packages/patches/sdl-pango-matrix_declarations.patch create mode 100644 gnu/packages/patches/sdl-pango-sans-serif.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 42516544cc..53d94ff1e7 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1248,6 +1248,12 @@ dist_patch_DATA = \ %D%/packages/patches/p7zip-CVE-2017-17969.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \ %D%/packages/patches/pam-mount-luks2-support.patch \ + %D%/packages/patches/sdl-pango-api_additions.patch \ + %D%/packages/patches/sdl-pango-blit_overflow.patch \ + %D%/packages/patches/sdl-pango-fillrect_crash.patch \ + %D%/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch \ + %D%/packages/patches/sdl-pango-matrix_declarations.patch \ + %D%/packages/patches/sdl-pango-sans-serif.patch \ %D%/packages/patches/patchutils-test-perms.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ diff --git a/gnu/packages/patches/sdl-pango-api_additions.patch b/gnu/packages/patches/sdl-pango-api_additions.patch new file mode 100644 index 0000000000..5c02e79910 --- /dev/null +++ b/gnu/packages/patches/sdl-pango-api_additions.patch @@ -0,0 +1,128 @@ +Index: SDL_Pango-0.1.2/src/SDL_Pango.c +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2004-12-10 10:06:33.000000000 +0100 ++++ SDL_Pango-0.1.2/src/SDL_Pango.c 2007-09-18 14:56:35.362379428 +0200 +@@ -723,13 +723,9 @@ + SDL_UnlockSurface(surface); + } + +-/*! +- Create a context which contains Pango objects. + +- @return A pointer to the context as a SDLPango_Context*. +-*/ + SDLPango_Context* +-SDLPango_CreateContext() ++SDLPango_CreateContext_GivenFontDesc(const char* font_desc) + { + SDLPango_Context *context = g_malloc(sizeof(SDLPango_Context)); + G_CONST_RETURN char *charset; +@@ -743,8 +739,7 @@ + pango_context_set_language (context->context, pango_language_from_string (charset)); + pango_context_set_base_dir (context->context, PANGO_DIRECTION_LTR); + +- context->font_desc = pango_font_description_from_string( +- MAKE_FONT_NAME (DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE)); ++ context->font_desc = pango_font_description_from_string(font_desc); + + context->layout = pango_layout_new (context->context); + +@@ -762,6 +757,17 @@ + } + + /*! ++ Create a context which contains Pango objects. ++ ++ @return A pointer to the context as a SDLPango_Context*. ++*/ ++SDLPango_Context* ++SDLPango_CreateContext() ++{ ++ SDLPango_CreateContext_GivenFontDesc(MAKE_FONT_NAME(DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE)); ++} ++ ++/*! + Free a context. + + @param *context [i/o] Context to be free +@@ -1053,6 +1059,20 @@ + pango_layout_set_font_description (context->layout, context->font_desc); + } + ++void ++SDLPango_SetText_GivenAlignment( ++ SDLPango_Context *context, ++ const char *text, ++ int length, ++ SDLPango_Alignment alignment) ++{ ++ pango_layout_set_attributes(context->layout, NULL); ++ pango_layout_set_text (context->layout, text, length); ++ pango_layout_set_auto_dir (context->layout, TRUE); ++ pango_layout_set_alignment (context->layout, alignment); ++ pango_layout_set_font_description (context->layout, context->font_desc); ++} ++ + /*! + Set plain text to context. + Text must be utf-8. +@@ -1067,11 +1087,7 @@ + const char *text, + int length) + { +- pango_layout_set_attributes(context->layout, NULL); +- pango_layout_set_text (context->layout, text, length); +- pango_layout_set_auto_dir (context->layout, TRUE); +- pango_layout_set_alignment (context->layout, PANGO_ALIGN_LEFT); +- pango_layout_set_font_description (context->layout, context->font_desc); ++ SDLPango_SetText_GivenAlignment(context, text, length, SDLPANGO_ALIGN_LEFT); + } + + /*! +Index: SDL_Pango-0.1.2/src/SDL_Pango.h +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.h 2004-12-10 10:06:33.000000000 +0100 ++++ SDL_Pango-0.1.2/src/SDL_Pango.h 2007-09-18 15:00:41.736419485 +0200 +@@ -26,6 +26,7 @@ + + #ifndef SDL_PANGO_H + #define SDL_PANGO_H ++#define SDL_PANGO_HAS_GC_EXTENSIONS + + #include "SDL.h" + +@@ -109,12 +110,20 @@ + SDLPANGO_DIRECTION_NEUTRAL /*! Neutral */ + } SDLPango_Direction; + +- ++/*! ++ Specifies alignment of text. See Pango reference for detail ++*/ ++typedef enum { ++ SDLPANGO_ALIGN_LEFT, ++ SDLPANGO_ALIGN_CENTER, ++ SDLPANGO_ALIGN_RIGHT ++} SDLPango_Alignment; + + extern DECLSPEC int SDLCALL SDLPango_Init(); + + extern DECLSPEC int SDLCALL SDLPango_WasInit(); + ++extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext_GivenFontDesc(const char* font_desc); + extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext(); + + extern DECLSPEC void SDLCALL SDLPango_FreeContext( +@@ -157,6 +166,12 @@ + const char *markup, + int length); + ++extern DECLSPEC void SDLCALL SDLPango_SetText_GivenAlignment( ++ SDLPango_Context *context, ++ const char *text, ++ int length, ++ SDLPango_Alignment alignment); ++ + extern DECLSPEC void SDLCALL SDLPango_SetText( + SDLPango_Context *context, + const char *markup, diff --git a/gnu/packages/patches/sdl-pango-blit_overflow.patch b/gnu/packages/patches/sdl-pango-blit_overflow.patch new file mode 100644 index 0000000000..411d066a74 --- /dev/null +++ b/gnu/packages/patches/sdl-pango-blit_overflow.patch @@ -0,0 +1,32 @@ +Index: sdlpango-0.1.2/src/SDL_Pango.c +=================================================================== +--- sdlpango-0.1.2.orig/src/SDL_Pango.c 2007-10-08 19:44:15.000000000 +0000 ++++ sdlpango-0.1.2/src/SDL_Pango.c 2007-10-08 19:45:27.000000000 +0000 +@@ -725,16 +725,23 @@ + int x = rect->x; + int y = rect->y; + ++ if(x < 0) { ++ width += x; x = 0; ++ } + if(x + width > surface->w) { + width = surface->w - x; +- if(width <= 0) +- return; ++ } ++ if(width <= 0) ++ return; ++ ++ if(y < 0) { ++ height += y; y = 0; + } + if(y + height > surface->h) { + height = surface->h - y; +- if(height <= 0) +- return; + } ++ if(height <= 0) ++ return; + + if(SDL_LockSurface(surface)) { + SDL_SetError("surface lock failed"); diff --git a/gnu/packages/patches/sdl-pango-fillrect_crash.patch b/gnu/packages/patches/sdl-pango-fillrect_crash.patch new file mode 100644 index 0000000000..7a41bbf2fe --- /dev/null +++ b/gnu/packages/patches/sdl-pango-fillrect_crash.patch @@ -0,0 +1,15 @@ +Index: SDL_Pango-0.1.2/src/SDL_Pango.c +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2007-09-18 15:56:12.406223540 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.c 2007-09-18 15:57:27.986530616 +0200 +@@ -932,7 +932,9 @@ + width = PANGO_PIXELS (logical_rect.width); + height = PANGO_PIXELS (logical_rect.height); + +- SDL_FillRect(surface, NULL, SDL_MapRGBA(surface->format, 0, 0, 0, 0)); ++ if (width && height) { ++ SDL_FillRect(surface, NULL, SDL_MapRGBA(surface->format, 0, 0, 0, 0)); ++ } + + if((! context->tmp_ftbitmap) || context->tmp_ftbitmap->width < width + || context->tmp_ftbitmap->rows < height) diff --git a/gnu/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch b/gnu/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch new file mode 100644 index 0000000000..3d4b10cc10 --- /dev/null +++ b/gnu/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch @@ -0,0 +1,20 @@ +--- a/src/SDL_Pango.h ++++ b/src/SDL_Pango.h +@@ -171,7 +171,7 @@ + SDLPango_Direction direction); + + +-#ifdef __FT2_BUILD_UNIX_H__ ++#ifdef FT2BUILD_H_ + + extern DECLSPEC void SDLCALL SDLPango_CopyFTBitmapToSurface( + const FT_Bitmap *bitmap, +@@ -179,7 +179,7 @@ + const SDLPango_Matrix *matrix, + SDL_Rect *rect); + +-#endif /* __FT2_BUILD_UNIX_H__ */ ++#endif + + + #ifdef __PANGO_H__ diff --git a/gnu/packages/patches/sdl-pango-matrix_declarations.patch b/gnu/packages/patches/sdl-pango-matrix_declarations.patch new file mode 100644 index 0000000000..c35d0a708d --- /dev/null +++ b/gnu/packages/patches/sdl-pango-matrix_declarations.patch @@ -0,0 +1,131 @@ +Index: SDL_Pango-0.1.2/src/SDL_Pango.c +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2007-09-18 15:03:10.732910311 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.c 2007-09-18 15:04:41.970109622 +0200 +@@ -286,6 +286,59 @@ + } contextImpl; + + ++const SDLPango_Matrix _MATRIX_WHITE_BACK ++ = {255, 0, 0, 0, ++ 255, 0, 0, 0, ++ 255, 0, 0, 0, ++ 255, 255, 0, 0,}; ++ ++/*! ++ Specifies white back and black letter. ++*/ ++const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK; ++ ++const SDLPango_Matrix _MATRIX_BLACK_BACK ++ = {0, 255, 0, 0, ++ 0, 255, 0, 0, ++ 0, 255, 0, 0, ++ 255, 255, 0, 0,}; ++/*! ++ Specifies black back and white letter. ++*/ ++const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK; ++ ++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER ++ = {0, 0, 0, 0, ++ 0, 0, 0, 0, ++ 0, 0, 0, 0, ++ 0, 255, 0, 0,}; ++/*! ++ Specifies transparent back and black letter. ++*/ ++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER; ++ ++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER ++ = {255, 255, 0, 0, ++ 255, 255, 0, 0, ++ 255, 255, 0, 0, ++ 0, 255, 0, 0,}; ++/*! ++ Specifies transparent back and white letter. ++*/ ++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER; ++ ++const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER ++ = {255, 255, 0, 0, ++ 255, 255, 0, 0, ++ 255, 255, 0, 0, ++ 0, 0, 0, 0,}; ++/*! ++ Specifies transparent back and transparent letter. ++ This is useful for KARAOKE like rendering. ++*/ ++const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER; ++ ++ + /*! + Initialize the Glib and Pango API. + This must be called before using other functions in this library, +Index: SDL_Pango-0.1.2/src/SDL_Pango.h +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.h 2007-09-18 15:03:10.732910311 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.h 2007-09-18 15:06:24.919976401 +0200 +@@ -47,57 +47,27 @@ + Uint8 m[4][4]; /*! Matrix variables */ + } SDLPango_Matrix; + +-const SDLPango_Matrix _MATRIX_WHITE_BACK +- = {255, 0, 0, 0, +- 255, 0, 0, 0, +- 255, 0, 0, 0, +- 255, 255, 0, 0,}; +- + /*! + Specifies white back and black letter. + */ +-const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK; +- +-const SDLPango_Matrix _MATRIX_BLACK_BACK +- = {0, 255, 0, 0, +- 0, 255, 0, 0, +- 0, 255, 0, 0, +- 255, 255, 0, 0,}; ++extern const SDLPango_Matrix *MATRIX_WHITE_BACK; + /*! + Specifies black back and white letter. + */ +-const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK; +- +-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER +- = {0, 0, 0, 0, +- 0, 0, 0, 0, +- 0, 0, 0, 0, +- 0, 255, 0, 0,}; ++extern const SDLPango_Matrix *MATRIX_BLACK_BACK; + /*! + Specifies transparent back and black letter. + */ +-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER; +- +-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER +- = {255, 255, 0, 0, +- 255, 255, 0, 0, +- 255, 255, 0, 0, +- 0, 255, 0, 0,}; ++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER; + /*! + Specifies transparent back and white letter. + */ +-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER; +- +-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER +- = {255, 255, 0, 0, +- 255, 255, 0, 0, +- 255, 255, 0, 0, +- 0, 0, 0, 0,}; ++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER; + /*! + Specifies transparent back and transparent letter. + This is useful for KARAOKE like rendering. + */ +-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER; ++extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER; + + /*! + Specifies direction of text. See Pango reference for detail diff --git a/gnu/packages/patches/sdl-pango-sans-serif.patch b/gnu/packages/patches/sdl-pango-sans-serif.patch new file mode 100644 index 0000000000..ccdc8150a7 --- /dev/null +++ b/gnu/packages/patches/sdl-pango-sans-serif.patch @@ -0,0 +1,13 @@ +Index: SDL_Pango-0.1.2/src/SDL_Pango.c +=================================================================== +--- SDL_Pango-0.1.2.orig/src/SDL_Pango.c 2007-09-18 15:12:20.736253215 +0200 ++++ SDL_Pango-0.1.2/src/SDL_Pango.c 2007-09-18 15:12:44.621614364 +0200 +@@ -234,7 +234,7 @@ + //! non-zero if initialized + static int IS_INITIALIZED = 0; + +-#define DEFAULT_FONT_FAMILY "Sans" ++#define DEFAULT_FONT_FAMILY "sans-serif" + #define DEFAULT_FONT_SIZE 12 + #define DEFAULT_DPI 96 + #define _MAKE_FONT_NAME(family, size) family " " #size diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index a01cafb34a..26c9bd5eb3 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018, 2019 Ricardo Wurmus ;;; Copyright © 2019 Kei Kebreau -;;; Copyright © 2019 Nicolas Goaziou +;;; Copyright © 2019, 2020 Nicolas Goaziou ;;; Copyright © 2019 Marius Bakke ;;; Copyright © 2019 Pierre Neidhardt ;;; Copyright © 2020 Timotej Lazar @@ -42,10 +42,12 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (gnu packages audio) + #:use-module (gnu packages autotools) #:use-module (gnu packages fcitx) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages ibus) #:use-module (gnu packages image) @@ -326,6 +328,54 @@ SDL.") (home-page "https://www.libsdl.org/projects/SDL_net/") (license zlib))) +(define-public sdl-pango + (package + (name "sdl-pango") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/sdlpango/SDL_Pango/" version "/" + "SDL_Pango-" version ".tar.gz")) + (sha256 + (base32 "197baw1dsg0p4pljs5k0fshbyki00r4l49m1drlpqw6ggawx6xbz")) + (patches + (search-patches + "sdl-pango-api_additions.patch" + "sdl-pango-blit_overflow.patch" + "sdl-pango-fillrect_crash.patch" + "sdl-pango-fix-explicit-SDLPango_CopyFTBitmapToSurface.patch" + "sdl-pango-matrix_declarations.patch" + "sdl-pango-sans-serif.patch")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags (list "--disable-static") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'autogen + ;; Force reconfiguration because the included libtool + ;; generates linking errors. + (lambda _ (invoke "autoreconf" "-vif")))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("glib" ,glib) + ("harfbuzz" ,harfbuzz) + ("pango" ,pango) + ("sdl" ,sdl))) + (home-page "http://sdlpango.sourceforge.net") + (synopsis "Pango SDL binding") + (description "This library is a wrapper around the Pango library. +It allows you to use TrueType fonts to render internationalized and +tagged text in SDL applications.") + (license lgpl2.1))) + (define-public sdl-ttf (package (name "sdl-ttf") -- cgit v1.2.3 From e1026ba70138f105ebc95281d22c09241feee9d5 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 2 Feb 2020 17:46:37 +0100 Subject: gnu: t4k-common: Add missing patch. * gnu/packages/patches/t4k-common-libpng16.patch: Add file. * gnu/local.mk (dist_patch_DATA): Reference it here. --- gnu/local.mk | 1 + gnu/packages/patches/t4k-common-libpng16.patch | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 gnu/packages/patches/t4k-common-libpng16.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 53d94ff1e7..941b8125b8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1412,6 +1412,7 @@ dist_patch_DATA = \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ %D%/packages/patches/t1lib-CVE-2011-0764.patch \ %D%/packages/patches/t1lib-CVE-2011-1552+.patch \ + %D%/packages/patches/t4k-common-libpng16.png \ %D%/packages/patches/tar-remove-wholesparse-check.patch \ %D%/packages/patches/tar-skip-unreliable-tests.patch \ %D%/packages/patches/tcc-boot-0.9.27.patch \ diff --git a/gnu/packages/patches/t4k-common-libpng16.patch b/gnu/packages/patches/t4k-common-libpng16.patch new file mode 100644 index 0000000000..17967773de --- /dev/null +++ b/gnu/packages/patches/t4k-common-libpng16.patch @@ -0,0 +1,26 @@ +Description: Fix for libpng 1.6 +Author: Programmer Nerd +Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=743388#20 +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=743388 +Reviewed-by: Tobias Frost > +Last-Update: 2016-04-07 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/src/t4k_loaders.c ++++ b/src/t4k_loaders.c +@@ -1028,12 +1028,9 @@ + { + png_init_io(png_ptr, fi); + +- info_ptr->width = surf->w; +- info_ptr->height = surf->h; +- info_ptr->bit_depth = 8; +- info_ptr->color_type = PNG_COLOR_TYPE_RGB_ALPHA; +- info_ptr->interlace_type = 1; +- info_ptr->valid = 0; /* will be updated by various png_set_FOO() functions */ ++ png_set_IHDR(png_ptr, info_ptr, surf->w, surf->h, 8, ++ PNG_COLOR_TYPE_RGB_ALPHA, PNG_INTERLACE_NONE, ++ PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); + + png_set_sRGB_gAMA_and_cHRM(png_ptr, info_ptr, + PNG_sRGB_INTENT_PERCEPTUAL); -- cgit v1.2.3 From c3cfa2b182cbbee7365ec47c94984a2c619e1686 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 2 Feb 2020 18:11:44 +0100 Subject: gnu: Fix patch name typo. This follows up on commit e1026ba70138f105ebc95281d22c09241feee9d5. Reported by NieDzejkob on #guix. * gnu/local.mk (dist_patch_DATA): Fix typo. --- gnu/local.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 941b8125b8..c3b42fb638 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1412,7 +1412,7 @@ dist_patch_DATA = \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ %D%/packages/patches/t1lib-CVE-2011-0764.patch \ %D%/packages/patches/t1lib-CVE-2011-1552+.patch \ - %D%/packages/patches/t4k-common-libpng16.png \ + %D%/packages/patches/t4k-common-libpng16.patch \ %D%/packages/patches/tar-remove-wholesparse-check.patch \ %D%/packages/patches/tar-skip-unreliable-tests.patch \ %D%/packages/patches/tcc-boot-0.9.27.patch \ -- cgit v1.2.3 From e35b50ecdd553f3fac4d16db311149dbcc3028fe Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Thu, 5 Dec 2019 19:05:29 +0100 Subject: gnu: Add akonadi. * gnu/packages/kde-pim.scm, gnu/packages/patches/akonadi-paths.patch, gnu/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch gnu/packages/patches/akonadi-timestamps.patch: New files. * gnu/local.mk (MODULES): Add kde-pim.scm. (dist_patch): Add the patches. --- gnu/local.mk | 4 + gnu/packages/kde-pim.scm | 112 +++++++++++++++++++++ ...ert-Make-installation-properly-relocatabl.patch | 49 +++++++++ gnu/packages/patches/akonadi-paths.patch | 49 +++++++++ gnu/packages/patches/akonadi-timestamps.patch | 14 +++ 5 files changed, 228 insertions(+) create mode 100644 gnu/packages/kde-pim.scm create mode 100644 gnu/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch create mode 100644 gnu/packages/patches/akonadi-paths.patch create mode 100644 gnu/packages/patches/akonadi-timestamps.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 209bc7abf3..912809b74d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -284,6 +284,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/kde.scm \ %D%/packages/kde-frameworks.scm \ %D%/packages/kde-multimedia.scm \ + %D%/packages/kde-pim.scm \ %D%/packages/kde-plasma.scm \ %D%/packages/kde-systemtools.scm \ %D%/packages/kde-utils.scm \ @@ -707,6 +708,9 @@ dist_patch_DATA = \ %D%/packages/patches/aegisub-icu59-include-unistr.patch \ %D%/packages/patches/aegisub-boost68.patch \ %D%/packages/patches/agg-am_c_prototype.patch \ + %D%/packages/patches/akonadi-paths.patch \ + %D%/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch \ + %D%/packages/patches/akonadi-timestamps.patch \ %D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \ %D%/packages/patches/amule-crypto-6.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ diff --git a/gnu/packages/kde-pim.scm b/gnu/packages/kde-pim.scm new file mode 100644 index 0000000000..3bf3e96a02 --- /dev/null +++ b/gnu/packages/kde-pim.scm @@ -0,0 +1,112 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2019, 2020 Hartmut Goebel +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages kde-pim) + #:use-module (guix build-system qt) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages boost) + #:use-module (gnu packages databases) + #:use-module (gnu packages documentation) + #:use-module (gnu packages gnome) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages qt) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages xml)) + +(define-public akonadi + (package + (name "akonadi") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/akonadi-" version ".tar.xz")) + (sha256 + (base32 "0v7f1049wjnqxhwxr1443wc2cfbdqmf15xcwjz3j1m0vgdva9pyg")) + (patches (search-patches + "akonadi-paths.patch" + "akonadi-timestamps.patch" + "akonadi-Revert-Make-installation-properly-relocatabl.patch")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("qttools" ,qttools) + ("shared-mime-info" ,shared-mime-info))) + (inputs + `(("boost" ,boost) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("kdesignerplugin" ,kdesignerplugin) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kio" ,kio) + ("kitemmodels" ,kitemmodels) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ;; Do NOT add mysql or postgresql to the inputs. Otherwise the binaries + ;; and wrapped files will refer to them, even if the user choices none + ;; of these. Executables are searched on $PATH then. + ("qtbase" ,qtbase) + ("sqlite" ,sqlite))) + (arguments + `(#:tests? #f ;; TODO 135/167 tests fail + #:configure-flags '("-DDATABASE_BACKEND=SQLITE") ; lightweight + #:modules ((ice-9 textual-ports) + ,@%qt-build-system-modules) + #:phases + (modify-phases (@ (guix build qt-build-system) %standard-phases) + (add-before 'configure 'add-definitions + (lambda _ + (let ((out (assoc-ref %outputs "out")) + (mysql (assoc-ref %build-inputs "mysql")) + (pgsql (assoc-ref %build-inputs "postgresql"))) + (with-output-to-file "CMakeLists.txt.new" + (lambda _ + (display + (string-append + "add_compile_definitions(\n" + "NIX_OUT=\"" out "\"\n" + ;; pin binaries for mysql backend + ")\n\n")) + (display + (call-with-input-file "CMakeLists.txt" + get-string-all)))) + (rename-file "CMakeLists.txt.new" "CMakeLists.txt")) + #t))))) + (home-page "https://kontact.kde.org/components/akonadi.html") + (synopsis "Extensible cross-desktop storage service for PIM") + (description "Akonadi is an extensible cross-desktop Personal Information +Management (PIM) storage service. It provides a common framework for +applications to store and access mail, calendars, addressbooks, and other PIM +data. + +This package contains the Akonadi PIM storage server and associated +programs.") + (license license:fdl1.2+))) diff --git a/gnu/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch b/gnu/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch new file mode 100644 index 0000000000..c3964c5c05 --- /dev/null +++ b/gnu/packages/patches/akonadi-Revert-Make-installation-properly-relocatabl.patch @@ -0,0 +1,49 @@ +From bc018b4bc816a3b51deb9739bedbf8a2268d0684 Mon Sep 17 00:00:00 2001 +From: gnidorah +Date: Fri, 22 Dec 2017 17:36:03 +0300 +Subject: [PATCH] Revert "Make Akonadi installation properly relocatable" + +This reverts commit b2bb55f13f2ac783f89cc414de8c39f62fa2096a. +--- + CMakeLists.txt | 3 --- + KF5AkonadiConfig.cmake.in | 6 +++--- + 2 files changed, 3 insertions(+), 6 deletions(-) + +Index: akonadi-19.08.0/CMakeLists.txt +=================================================================== +--- akonadi-19.08.0.orig/CMakeLists.txt ++++ akonadi-19.08.0/CMakeLists.txt +@@ -306,9 +306,6 @@ configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/KF5AkonadiConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/KF5AkonadiConfig.cmake" + INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} +- PATH_VARS AKONADI_DBUS_INTERFACES_INSTALL_DIR +- AKONADI_INCLUDE_DIR +- KF5Akonadi_DATA_DIR + ) + + install(FILES +Index: akonadi-19.08.0/KF5AkonadiConfig.cmake.in +=================================================================== +--- akonadi-19.08.0.orig/KF5AkonadiConfig.cmake.in ++++ akonadi-19.08.0/KF5AkonadiConfig.cmake.in +@@ -26,8 +26,8 @@ if(BUILD_TESTING) + find_dependency(Qt5Test "@QT_REQUIRED_VERSION@") + endif() + +-set_and_check(AKONADI_DBUS_INTERFACES_DIR "@PACKAGE_AKONADI_DBUS_INTERFACES_INSTALL_DIR@") +-set_and_check(AKONADI_INCLUDE_DIR "@PACKAGE_AKONADI_INCLUDE_DIR@") ++set_and_check(AKONADI_DBUS_INTERFACES_DIR "@AKONADI_DBUS_INTERFACES_INSTALL_DIR@") ++set_and_check(AKONADI_INCLUDE_DIR "@AKONADI_INCLUDE_DIR@") + + find_dependency(Boost "@Boost_MINIMUM_VERSION@") + +@@ -35,7 +35,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/KF5Ako + include(${CMAKE_CURRENT_LIST_DIR}/KF5AkonadiMacros.cmake) + + # The directory where akonadi-xml.xsd and kcfg2dbus.xsl are installed +-set(KF5Akonadi_DATA_DIR "@PACKAGE_KF5Akonadi_DATA_DIR@") ++set(KF5Akonadi_DATA_DIR "@KF5Akonadi_DATA_DIR@") + + #################################################################################### + # CMAKE_AUTOMOC diff --git a/gnu/packages/patches/akonadi-paths.patch b/gnu/packages/patches/akonadi-paths.patch new file mode 100644 index 0000000000..da250ee9e8 --- /dev/null +++ b/gnu/packages/patches/akonadi-paths.patch @@ -0,0 +1,49 @@ +This is based on the respectve patch from NixPkgs, but with the parts pinning +mysql and postgresql executables removed. The our package definition on why. + + +Index: akonadi-19.08.0/src/akonadicontrol/agentmanager.cpp +=================================================================== +--- akonadi-19.08.0.orig/src/akonadicontrol/agentmanager.cpp ++++ akonadi-19.08.0/src/akonadicontrol/agentmanager.cpp +@@ -78,12 +78,12 @@ AgentManager::AgentManager(bool verbose, + mStorageController = new Akonadi::ProcessControl; + mStorageController->setShutdownTimeout(15 * 1000); // the server needs more time for shutdown if we are using an internal mysqld + connect(mStorageController, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::serverFailure); +- mStorageController->start(QStringLiteral("akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash); ++ mStorageController->start(QLatin1String(NIX_OUT "/bin/akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash); + + if (mAgentServerEnabled) { + mAgentServer = new Akonadi::ProcessControl; + connect(mAgentServer, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::agentServerFailure); +- mAgentServer->start(QStringLiteral("akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash); ++ mAgentServer->start(QLatin1String(NIX_OUT "/bin/akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash); + } + } + +Index: akonadi-19.08.0/src/akonadicontrol/agentprocessinstance.cpp +=================================================================== +--- akonadi-19.08.0.orig/src/akonadicontrol/agentprocessinstance.cpp ++++ akonadi-19.08.0/src/akonadicontrol/agentprocessinstance.cpp +@@ -62,7 +62,7 @@ bool AgentProcessInstance::start(const A + } else { + Q_ASSERT(agentInfo.launchMethod == AgentType::Launcher); + const QStringList arguments = QStringList() << executable << identifier(); +- const QString agentLauncherExec = Akonadi::StandardDirs::findExecutable(QStringLiteral("akonadi_agent_launcher")); ++ const QString agentLauncherExec = QLatin1String(NIX_OUT "/bin/akonadi_agent_launcher"); + mController->start(agentLauncherExec, arguments); + } + return true; +Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp +=================================================================== +--- akonadi-19.08.0.orig/src/server/storage/dbconfigmysql.cpp ++++ akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp +@@ -209,7 +193,7 @@ bool DbConfigMysql::startInternalServer( + #endif + + // generate config file +- const QString globalConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-global.conf")); ++ const QString globalConfig = QLatin1String(NIX_OUT "/etc/xdg/akonadi/mysql-global.conf"); + const QString localConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-local.conf")); + const QString actualConfig = StandardDirs::saveDir("data") + QLatin1String("/mysql.conf"); + if (globalConfig.isEmpty()) { diff --git a/gnu/packages/patches/akonadi-timestamps.patch b/gnu/packages/patches/akonadi-timestamps.patch new file mode 100644 index 0000000000..e299a6991f --- /dev/null +++ b/gnu/packages/patches/akonadi-timestamps.patch @@ -0,0 +1,14 @@ +Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp +=================================================================== +--- akonadi-19.08.0.orig/src/server/storage/dbconfigmysql.cpp ++++ akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp +@@ -235,8 +235,7 @@ bool DbConfigMysql::startInternalServer( + bool confUpdate = false; + QFile actualFile(actualConfig); + // update conf only if either global (or local) is newer than actual +- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) || +- (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) { ++ if (true) { + QFile globalFile(globalConfig); + QFile localFile(localConfig); + if (globalFile.open(QFile::ReadOnly) && actualFile.open(QFile::WriteOnly)) { -- cgit v1.2.3 From 533c95bc17cd253455be077a54b1435d0c60950c Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Sun, 8 Dec 2019 20:06:14 +0100 Subject: gnu: Add choqok. * gnu/packages/kde-internet.scm: New file. * gnu/packages/patches/choqok-Fix-building-under-Qt-5.13.patch: New file. * gnu/lokal.mk: Add them. --- gnu/local.mk | 2 + gnu/packages/kde-internet.scm | 94 ++++++++++++++++++++++ .../choqok-Fix-building-under-Qt-5.13.patch | 89 ++++++++++++++++++++ 3 files changed, 185 insertions(+) create mode 100644 gnu/packages/kde-internet.scm create mode 100644 gnu/packages/patches/choqok-Fix-building-under-Qt-5.13.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index 912809b74d..da3291fdc6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -283,6 +283,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/kawa.scm \ %D%/packages/kde.scm \ %D%/packages/kde-frameworks.scm \ + %D%/packages/kde-internet.scm \ %D%/packages/kde-multimedia.scm \ %D%/packages/kde-pim.scm \ %D%/packages/kde-plasma.scm \ @@ -771,6 +772,7 @@ dist_patch_DATA = \ %D%/packages/patches/ceph-disable-cpu-optimizations.patch \ %D%/packages/patches/ceph-volume-respect-PATH.patch \ %D%/packages/patches/chmlib-inttypes.patch \ + %D%/packages/patches/choqok-Fix-building-under-Qt-5.13.patch \ %D%/packages/patches/clamav-config-llvm-libs.patch \ %D%/packages/patches/clamav-system-tomsfastmath.patch \ %D%/packages/patches/clang-3.5-libc-search-path.patch \ diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm new file mode 100644 index 0000000000..4b382df2e7 --- /dev/null +++ b/gnu/packages/kde-internet.scm @@ -0,0 +1,94 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2019, 2020 Hartmut Goebel +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages kde-internet) + #:use-module (guix build-system qt) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages kde) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages kde-pim) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages qt) + #:use-module (gnu packages web)) + +(define-public choqok + (package + (name "choqok") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/choqok/" + (version-major+minor version) + "/src/choqok-" version ".tar.xz")) + (sha256 + (base32 "03ri4y1wzyqlixnhczsls5gmy7jzzm67bb5gz8bav51ngc32fxca")) + (patches (search-patches "choqok-Fix-building-under-Qt-5.13.patch")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools) + ("pkg-config" ,pkg-config))) + (inputs + `(("attica" ,attica) + ("kcmutils" ,kcmutils) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kdewebkit" ,kdewebkit) + ("kemoticons" ,kemoticons) + ("kglobalaccel" ,kglobalaccel) + ("kguiaddons" ,kguiaddons) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("knotifications" ,knotifications) + ("knotifyconfig" ,knotifyconfig) + ("kparts" ,kparts) + ("ktextwidgets" ,ktextwidgets) + ("kwallet" ,kwallet) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kxmlgui" ,kxmlgui) + ;; TODO: telepathy + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("qca" ,qca) + ("qoauth" ,qoauth) + ("qtbase" ,qtbase) + ("qtwebkit" ,qtwebkit) + ("sonnet" ,sonnet))) + (home-page "https://kde.org/applications/internet/org.kde.choqok") + (synopsis "Micro-Blogging Client") + (description "Choqok is a fast, efficient and simple to use micro-blogging +client for KDE. It currently supports the twitter.com and identi.ca +microblogging services. + +Other notable features include: +@itemize +@item Support for user + friends time-lines. +@item Support for @Reply time-lines. +@item Support for sending and receiving direct messages. +@item Twitpic.com integration. +@item The ability to use multiple accounts simultaneously. +@item Support for search APIs for all services. +@item KWallet integration. +@item Support for automatic shortening urls with more than 30 characters. +@item Support for configuring status lists appearance. +@end itemize") + (license license:gpl3+))) diff --git a/gnu/packages/patches/choqok-Fix-building-under-Qt-5.13.patch b/gnu/packages/patches/choqok-Fix-building-under-Qt-5.13.patch new file mode 100644 index 0000000000..4250106a19 --- /dev/null +++ b/gnu/packages/patches/choqok-Fix-building-under-Qt-5.13.patch @@ -0,0 +1,89 @@ +Add QMap include to fix building under Qt 5.13 + +This combines several patches which all add the same missing include: +- e13ab06f65a4e8b6259bccda1401abb9c1c9fdca +- 546ede9ef712bb1b156a55ce30df81c3203dde61 +- 08fb06b63a78888e6703de6ac1a4fd6a0e2791eb +- bef6784596bf0b41287ebad81f138e1c8c2a6be2 + +Include is no longer added transitively. +--- + +--- a/plugins/betternotify/notify.h ++++ b/plugins/betternotify/notify.h +@@ -23,6 +23,7 @@ + #ifndef NOTIFY_H + #define NOTIFY_H + ++#include + #include + #include + #include +--- a/plugins/untiny/untiny.h ++++ b/plugins/untiny/untiny.h +@@ -27,6 +27,7 @@ + + #include "plugin.h" + ++#include + #include + #include + #include +--- a/plugins/uploaders/flickr/flickr.h ++++ b/plugins/uploaders/flickr/flickr.h +@@ -26,6 +26,8 @@ + + #include "uploader.h" + ++#include ++ + /** + @author Andrey Esin \ + */ +diff --git a/plugins/uploaders/imageshack/imageshack.h b/plugins/uploaders/imageshack/imageshack.h +index d9ddc88..63d0e3f 100644 +--- a/plugins/uploaders/imageshack/imageshack.h ++++ b/plugins/uploaders/imageshack/imageshack.h +@@ -26,6 +26,8 @@ + + #include "uploader.h" + ++#include ++ + /** + @author Mehrdad Momeny \ + */ +--- a/plugins/uploaders/mobypicture/mobypicture.h ++++ b/plugins/uploaders/mobypicture/mobypicture.h +@@ -26,6 +26,8 @@ + + #include "uploader.h" + ++#include ++ + class KJob; + + class Mobypicture : public Choqok::Uploader +--- a/plugins/uploaders/posterous/posterous.h ++++ b/plugins/uploaders/posterous/posterous.h +@@ -26,6 +26,8 @@ + + #include "uploader.h" + ++#include ++ + class KJob; + + class Posterous : public Choqok::Uploader +--- a/plugins/uploaders/twitgoo/twitgoo.h ++++ b/plugins/uploaders/twitgoo/twitgoo.h +@@ -26,6 +26,8 @@ + + #include "uploader.h" + ++#include ++ + class KJob; + + class Twitgoo : public Choqok::Uploader +-- -- cgit v1.2.3 From 579aa350eddcf6e645b2455d845e7caad6163ca9 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Sun, 8 Dec 2019 23:09:54 +0100 Subject: gnu: Add konversation. * gnu/packages/kde-internet.scm (konversation): New variable. * gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch: New file. * gnu/lokal.mk: Add it. --- gnu/local.mk | 1 + gnu/packages/kde-internet.scm | 72 ++++++++++++++++++++++ .../konversation-Fix-build-with-Qt-5.11.patch | 24 ++++++++ 3 files changed, 97 insertions(+) create mode 100644 gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch (limited to 'gnu/local.mk') diff --git a/gnu/local.mk b/gnu/local.mk index da3291fdc6..98b7395598 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1071,6 +1071,7 @@ dist_patch_DATA = \ %D%/packages/patches/kodi-increase-test-timeout.patch \ %D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \ %D%/packages/patches/kodi-skip-test-449.patch \ + %D%/packages/patches/konversation-Fix-build-with-Qt-5.11.patch \ %D%/packages/patches/laby-make-install.patch \ %D%/packages/patches/lcalc-default-parameters-1.patch \ %D%/packages/patches/lcalc-default-parameters-2.patch \ diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index 5f21b99685..54ca9250ae 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -155,3 +155,75 @@ HTTP(S) as well as pausing downloads. This package is part of the KDE networking module.") (license ;; GPL for programs, LGPL for libraries, FDL for documentation (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + +(define-public konversation + (package + (name "konversation") + (version "1.7.5") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/konversation/" version + "/src/konversation-" version ".tar.xz")) + (sha256 + (base32 "0h098yhlp36ls6pdvs2r93ig8dv4fys62m0h6wxccprb0qrpbgv0")) + (patches (search-patches "konversation-Fix-build-with-Qt-5.11.patch")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools))) + (inputs + `(("karchive" ,karchive) + ("kbookmarks" ,kbookmarks) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("kemoticons" ,kemoticons) + ("kglobalaccel" ,kglobalaccel) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kidletime" ,kidletime) + ("kio" ,kio) + ("kitemviews" ,kitemviews) + ("knotifications" ,knotifications) + ("knotifyconfig" ,knotifyconfig) + ("kparts" ,kparts) + ("kwallet" ,kwallet) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("qca" ,qca) + ("solid" ,solid) + ("sonnet" ,sonnet))) + (home-page "https://kde.org/applications/internet/org.kde.konversations") + (synopsis "Graphical Internet Relay Chat (IRC) client for KDE") + (description "Konversation is a graphical Internet Relay Chat client (IRC) +with KDE support. + +Features are: +@itemize +@item Standard IRC features +@item SSL server support +@item Bookmarking support +@item Easy to use graphical user interface +@item Multiple servers and channels in one single window +@item DCC file transfer with resume support +@item Multiple identities for different servers +@item Text decorations and colors +@item Pattern-based message highlighting and OnScreen Display notifications +@item Automatic UTF-8 detection +@item Per channel encoding support +@item Theme support for nick icons +@item Highly configurable +@item Multi-language scripting support (with DCOP) +@item Customizable command aliases +@item NickServ-aware log-on (for registered nicknames) +@item Smart logging +@item Traditional or enhanced-shell-style nick completion +@end itemize") + (license ;; GPL for programs, FDL for documentation + (list license:gpl2+ license:fdl1.2+)))) diff --git a/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch b/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch new file mode 100644 index 0000000000..d9d29bbd1a --- /dev/null +++ b/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch @@ -0,0 +1,24 @@ +From 4d0036617becc26a76fd021138c98aceec4c7b53 Mon Sep 17 00:00:00 2001 +From: Luca Beltrame +Date: Sun, 21 Jul 2019 09:14:32 +0200 +Subject: Fix build with Qt 5.13 + +--- + src/irc/outputfilter.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/irc/outputfilter.cpp b/src/irc/outputfilter.cpp +index f9e6253..45d11fb 100644 +--- a/src/irc/outputfilter.cpp ++++ b/src/irc/outputfilter.cpp +@@ -32,6 +32,7 @@ + + #include + #include ++#include + #include + #include + #include +-- +cgit v1.1 + -- cgit v1.2.3