summary refs log tree commit diff
path: root/gnu/packages/gtk.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2019-03-29 23:28:45 -0400
committerMark H Weaver <mhw@netris.org>2019-03-30 02:34:24 -0400
commitbc91562939ee002e84c95d13c907482b6d1e9339 (patch)
tree9daa889a8e2d937ce80ca4d402ec8a66260ea3f7 /gnu/packages/gtk.scm
parentc948cf90925dee5c07119140636e78877e9374b4 (diff)
downloadguix-bc91562939ee002e84c95d13c907482b6d1e9339.tar.gz
gnu: gtk+: Graft upstream fix for crashes in Emacs and IceCat.
Fixes <https://bugs.gnu.org/34454>.

* gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gtk.scm (gtk+/fixed): New variable.
(gtk+)[replacement]: New field.
Diffstat (limited to 'gnu/packages/gtk.scm')
-rw-r--r--gnu/packages/gtk.scm15
1 files changed, 14 insertions, 1 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index aab392758f..83aadfd177 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2014, 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
@@ -694,6 +694,7 @@ application suites.")
    ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
    ;;       mate.scm will also need to be updated.
    (version "3.24.2")
+   (replacement gtk+/fixed)
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -787,6 +788,18 @@ application suites.")
            (variable "GUIX_GTK3_PATH")
            (files '("lib/gtk-3.0")))))))
 
+;; Fixes a bug in Gtk that causes crashes in IceCat and Emacs.
+;; See <https://bugs.gnu.org/34454>, <https://bugs.gnu.org/34658>,
+;; and <https://gitlab.gnome.org/GNOME/gtk/issues/1523>.
+(define gtk+/fixed
+  (package
+    (inherit gtk+)
+    (source (origin
+              (inherit (package-source gtk+))
+              (patches
+               (cons (search-patch "gtk3-fix-deprecation-macro-use.patch")
+                     (origin-patches (package-source gtk+))))))))
+
 ;;;
 ;;; Guile bindings.
 ;;;