Hello, The failure looks like this: --8<---------------cut here---------------start------------->8--- $ geeqie (geeqie:6216): Gdk-ERROR **: 23:30:16.057: The program 'geeqie' received an X Window System error. This probably reflects a bug in the program. The error was 'BadValue (integer parameter out of range for operation)'. (Details: serial 180 error_code 2 request_code 152 (GLX) minor_code 24) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the GDK_SYNCHRONIZE environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) Trace/breakpoint trap $ GDK_SYNCHRONIZE= geeqie (geeqie:6217): Clutter-CRITICAL **: 23:30:26.345: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found. Can't initialize clutter-gtk. Start Geeqie with the option "geeqie --disable-clutter" --8<---------------cut here---------------end--------------->8--- The suggested workaround (geeqie --disable-clutter) works. Thanks, Maxim
On Wed, 24 Nov 2021, Maxim Cournoyer wrote:
> Hello,
>
> The failure looks like this:
>
> --8<---------------cut here---------------start------------->8---
> $ geeqie
>
> (geeqie:6216): Gdk-ERROR **: 23:30:16.057: The program 'geeqie' received an X Window System error.
> This probably reflects a bug in the program.
> The error was 'BadValue (integer parameter out of range for operation)'.
> (Details: serial 180 error_code 2 request_code 152 (GLX) minor_code 24)
> (Note to programmers: normally, X errors are reported asynchronously;
> that is, you will receive the error a while after causing it.
> To debug your program, run it with the GDK_SYNCHRONIZE environment
> variable to change this behavior. You can then get a meaningful
> backtrace from your debugger if you break on the gdk_x_error() function.)
> Trace/breakpoint trap
>
> $ GDK_SYNCHRONIZE= geeqie
>
> (geeqie:6217): Clutter-CRITICAL **: 23:30:26.345: Unable to initialize Clutter: Unable to initialize the Clutter backend: no available drivers found.
> Can't initialize clutter-gtk.
> Start Geeqie with the option "geeqie --disable-clutter"
> --8<---------------cut here---------------end--------------->8---
>
> The suggested workaround (geeqie --disable-clutter) works.
>
> Thanks,
>
> Maxim
Interesting. I don't think I'm going to be of any help, but I just testing
running geeqie from a guix shell with core-updates-frozen commit
d0f6e8ae7944666469ec1a226df502063d4d0670 under a sway wayland session and
it launches fine as a native wayland client.
It doesn't display any images though, but maybe that's a different bug. It
worked the same with and without --disable-clutter.
Best,
Jack
[-- Attachment #1: Type: text/plain, Size: 835 bytes --] I had reported this on IRC earlier and think I've found the fix. The upstream issue is https://github.com/BestImageViewer/geeqie/issues/829 and leads to the following commit that should fix it https://github.com/BestImageViewer/geeqie/commit/f34ea0700048c27319a2256408171adda32a7580 I'm attaching this commit as a patch for our current version (just cherry-picked this commit) to try. I tried it with the following command guix shell geeqie --with-patch=geeqie=0001-Fix-829-segfault-with-clutter-gtk.patch And it started up for me without the error or changing options. I'm not sure if this is related to some other issues that we discussed on IRC (a segfault on icon view?), but at least this fixes the startup problem. Since this is fixed upstream, on the next version update we should be able to remove this patch. John [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: 0001-Fix-829-segfault-with-clutter-gtk.patch --] [-- Type: text/x-patch; name=0001-Fix-829-segfault-with-clutter-gtk.patch, Size: 869 bytes --] 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
Hi John,
John Kehayias <john.kehayias@protonmail.com> skribis:
> I had reported this on IRC earlier and think I've found the fix. The upstream issue is https://github.com/BestImageViewer/geeqie/issues/829 and leads to the following commit that should fix it https://github.com/BestImageViewer/geeqie/commit/f34ea0700048c27319a2256408171adda32a7580
>
> I'm attaching this commit as a patch for our current version (just cherry-picked this commit) to try. I tried it with the following command
>
> guix shell geeqie --with-patch=geeqie=0001-Fix-829-segfault-with-clutter-gtk.patch
>
> And it started up for me without the error or changing options. I'm not sure if this is related to some other issues that we discussed on IRC (a segfault on icon view?), but at least this fixes the startup problem. Since this is fixed upstream, on the next version update we should be able to remove this patch.
I can confirm that the patch fixes the issue for me.
I’ve added it to the ‘geeqie’ package, thank you!
Ludo’.