~ruther/guix-local

3b8825421b4cfb44fffd4e3bae312d0b2b8aac62 — Ludovic Courtès 4 years ago 77c8382
gnu: geeqie: Fix X11 error at startup.

Fixes <https://issues.guix.gnu.org/52089>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.
Patch provided by John Kehayias <john.kehayias@protonmail.com>.

* gnu/packages/patches/geeqie-clutter.patch: New file.
* gnu/packages/image-viewers.scm (geeqie)[sources]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
3 files changed, 38 insertions(+), 1 deletions(-)

M gnu/local.mk
M gnu/packages/image-viewers.scm
A gnu/packages/patches/geeqie-clutter.patch
M gnu/local.mk => gnu/local.mk +1 -0
@@ 1121,6 1121,7 @@ dist_patch_DATA =						\
  %D%/packages/patches/gdm-remove-hardcoded-xwayland-path.patch	\
  %D%/packages/patches/gdm-wayland-session-wrapper-from-env.patch	\
  %D%/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch	\
  %D%/packages/patches/geeqie-clutter.patch			\
  %D%/packages/patches/genimage-mke2fs-test.patch		\
  %D%/packages/patches/geoclue-config.patch			\
  %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch	\

M gnu/packages/image-viewers.scm => gnu/packages/image-viewers.scm +2 -1
@@ 314,7 314,8 @@ actions.")
              (sha256
               (base32
                "1i9yd8lddp6b9s9vjjjzbpqj4bvwidxc6kiba6vdrk7dda5akyky"))
              (file-name (git-file-name name version))))
              (file-name (git-file-name name version))
              (patches (search-patches "geeqie-clutter.patch"))))
    (build-system gnu-build-system)
    (arguments
     ;; Enable support for a "map" pane using GPS data.

A gnu/packages/patches/geeqie-clutter.patch => gnu/packages/patches/geeqie-clutter.patch +35 -0
@@ 0,0 1,35 @@
From c99084ac5fc2fb854ff8e8abd4bd3298fb08fb43 Mon Sep 17 00:00:00 2001
From: Colin Clark <colin.clark@cclark.uk>
Date: Sat, 9 Jan 2021 11:35:41 +0000
Subject: [PATCH] Fix #829: segfault with clutter-gtk

https://github.com/BestImageViewer/geeqie/issues/829

This fix might cause other problems which might be cured by calling:
LIBGL_ALWAYS_INDIRECT=1 geeqie

or, worst case:
geeqie --disable-clutter
---
 src/main.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/src/main.c b/src/main.c
index f497240d..4af654fe 100644
--- a/src/main.c
+++ b/src/main.c
@@ -904,11 +904,6 @@ gint main(gint argc, gchar *argv[])
 #ifdef HAVE_GTHREAD
 #if !GLIB_CHECK_VERSION(2,32,0)
 	g_thread_init(NULL);
-#endif
-#ifdef HAVE_CLUTTER
-/* FIXME: see below */
-	putenv("LIBGL_ALWAYS_INDIRECT=1");
-	XInitThreads();
 #endif
 	gdk_threads_init();
 	gdk_threads_enter();
-- 
2.34.0