From 5937a4aff8cd96cfceff9e98ee108595a26dc696 Mon Sep 17 00:00:00 2001 From: Claudio Bley Date: Tue, 9 Feb 2021 14:38:15 +0100 Subject: [PATCH] spaceFM: Avoid segfault when running under Wayland SpaceFM is a Gtk+ application that was written with only the X11 backend in mind. By explicitly allowing only the "x11" backend, it will not try to use the wayland backend when it is run under sway, for example. Fixes #107242 --- pkgs/applications/misc/spacefm/default.nix | 8 +++++++- pkgs/applications/misc/spacefm/x11-only.patch | 10 ++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 pkgs/applications/misc/spacefm/x11-only.patch diff --git a/pkgs/applications/misc/spacefm/default.nix b/pkgs/applications/misc/spacefm/default.nix index e08240733d12..3d9f72048754 100644 --- a/pkgs/applications/misc/spacefm/default.nix +++ b/pkgs/applications/misc/spacefm/default.nix @@ -13,7 +13,13 @@ stdenv.mkDerivation rec { sha256 = "089r6i40lxcwzp60553b18f130asspnzqldlpii53smz52kvpirx"; }; - patches = [ ./glibc-fix.patch ]; + patches = [ + # fix compilation error due to missing include + ./glibc-fix.patch + + # restrict GDK backends to only X11 + ./x11-only.patch + ]; configureFlags = [ "--with-bash-path=${pkgs.bash}/bin/bash" diff --git a/pkgs/applications/misc/spacefm/x11-only.patch b/pkgs/applications/misc/spacefm/x11-only.patch new file mode 100644 index 000000000000..1b2f9f145824 --- /dev/null +++ b/pkgs/applications/misc/spacefm/x11-only.patch @@ -0,0 +1,10 @@ +--- a/src/main.c 2021-02-09 13:54:32.847364236 +0100 ++++ b/src/main.c 2021-02-09 10:41:51.541203271 +0100 +@@ -1350,6 +1351,7 @@ + vfs_file_monitor_clean(); + return 1; + } ++ gdk_set_allowed_backends("x11"); + gtk_init (&argc, &argv); + int ret = custom_dialog_init( argc, argv ); + if ( ret != 0 )