summary refs log tree commit diff
path: root/gnu/packages/glib.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-09-20 12:21:19 +0200
committerLudovic Courtès <ludo@gnu.org>2019-09-20 12:21:19 +0200
commit3a2efbc8670f72a524cc7290e11559cdb42852a4 (patch)
tree1dc1582efe54eabd81bd1e4b886422b70e431e55 /gnu/packages/glib.scm
parentfb1d8d2baab907493367930e8069f937a5187b61 (diff)
downloadguix-3a2efbc8670f72a524cc7290e11559cdb42852a4.tar.gz
gnu: python-libxml2, itstool: Provide crash-free variants.
Fixes <https://bugs.gnu.org/37468>.

* gnu/packages/patches/python-libxml2-utf8.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xml.scm (python-libxml2/fixed): New variable.
* gnu/packages/glib.scm (itstool/fixed): New variable.
* gnu/packages/gnome.scm (gnumeric)[native-inputs]: Use ITSTOOL/FIXED
instead of ITSTOOL.
Diffstat (limited to 'gnu/packages/glib.scm')
-rw-r--r--gnu/packages/glib.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index ad000ad838..a2f0f2fd8e 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -65,6 +65,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils)
+  #:use-module (srfi srfi-1)
 
   ;; Export variables up-front to allow circular dependency with the 'xorg'
   ;; module.
@@ -495,6 +496,16 @@ information in their documents, such as whether a particular element should be
 translated.")
     (license license:gpl3+)))
 
+(define-public itstool/fixed
+  ;; This variant fixes a python-libxml2 crash when processing UTF-8
+  ;; sequences: <https://bugs.gnu.org/37468>.  Since the issue is quite rare,
+  ;; create this variant here to avoid a full rebuild.
+  (package/inherit
+   itstool
+   (inputs
+    `(("python-libxml2" ,python-libxml2/fixed)
+      ,@(alist-delete "python-libxml2" (package-inputs itstool))))))
+
 (define dbus-glib
   (package
     (name "dbus-glib")