Confirmed in all cases it's just that the X11/Xmir apps can't detect the session bus address of the login (which is on a different TTY BTW). Forcing DBUS_SESSION_BUS_ADDRESS solves the problem.
Here are some stack traces of the hangs:
gedit:
(gdb) bt
#0 0x00007ffff705e853 in select () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff477acd1 in g_spawn_sync ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff477b313 in g_spawn_command_line_sync ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff7862b70 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff78645f2 in g_dbus_address_get_for_bus_sync ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#5 0x00007ffff786f7ee in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6 0x00007ffff787522b in g_bus_get_sync ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7 0x00007ffff784b969 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8 0x00007ffff78488f3 in g_application_register ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9 0x00007ffff784918f in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#10 0x00007ffff78494f2 in g_application_run ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#11 0x0000000000400cfa in main ()
nautilus:
(gdb) bt
#0 0x00007ffff34c9833 in __select_nocancel ()
at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff418ecd1 in g_spawn_sync ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff418f313 in g_spawn_command_line_sync ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff4729b70 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff472b5f2 in g_dbus_address_get_for_bus_sync ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#5 0x00007ffff47367ee in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6 0x00007ffff473c22b in g_bus_get_sync ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7 0x00007ffff4712969 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8 0x00007ffff470f8f3 in g_application_register ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9 0x000000000042c78e in ?? ()
#10 0x00007fffedd29e40 in ffi_call_unix64 ()
from /usr/lib/x86_64-linux-gnu/libffi.so.6
#11 0x00007fffedd298ab in ffi_call ()
from /usr/lib/x86_64-linux-gnu/libffi.so.6
#12 0x00007ffff441fcf5 in g_cclosure_marshal_generic_va ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff441f1d4 in ?? ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff44394b8 in g_signal_emit_valist ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff443a08f in g_signal_emit ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff4710168 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#17 0x00007ffff47104f2 in g_application_run ()
from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#18 0x000000000042ba31 in ?? ()
#19 0x00007ffff33ed7e0 in __libc_start_main (main=0x42b970, argc=1,
argv=0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>,
rtld_fini=<optimised out>, stack_end=0x7fffffffe5a8)
at ../csu/libc-start.c:291
#20 0x000000000042ba99 in ?? ()
/usr/games/sol:
(gdb) bt
#0 0x00007ffff537556d in read () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff0fdacf8 in _dbus_read ()
from /lib/x86_64-linux-gnu/libdbus-1.so.3
#2 0x00007ffff0fde349 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#3 0x00007ffff0fd2c95 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#4 0x00007ffff0fd2b3a in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#5 0x00007ffff0fbd32f in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#6 0x00007ffff0fb8e08 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#7 0x00007fffedc925f6 in atspi_get_a11y_bus ()
from /usr/lib/x86_64-linux-gnu/libatspi.so.0
#8 0x00007ffff39e9052 in atk_bridge_adaptor_init ()
from /usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0
#9 0x00007ffff7117134 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#10 0x00007ffff5f3dfa5 in g_closure_invoke ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007ffff5f4ffc1 in ?? ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007ffff5f58d5c in g_signal_emit_valist ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff5f5908f in g_signal_emit ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff5f424d4 in ?? ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff5f44961 in g_object_notify ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff6de5778 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#17 0x00007ffff5f3e1d4 in ?? ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ffff5f589a6 in g_signal_emit_valist ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ffff5f59555 in g_signal_emit_by_name ()
from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007ffff6e0b6c5 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#21 0x00007ffff6de5646 in gdk_display_manager_open_display ()
from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#22 0x00007ffff72a2266 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#23 0x00007ffff5c71fc8 in g_option_context_parse ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x000055555556c1d6 in ?? ()
#25 0x00007ffff55fbc5d in ?? ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#26 0x00007ffff55d458a in ?? ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#27 0x00007ffff5671d33 in ?? ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#28 0x00007ffff55de283 in scm_call_4 ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#29 0x00007ffff55d4d21 in ?? ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#30 0x00007ffff55d4e05 in scm_c_with_continuation_barrier ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#31 0x00007ffff5654bbc in ?? ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#32 0x00007fffeeccc952 in GC_call_with_stack_base ()
from /usr/lib/x86_64-linux-gnu/libgc.so.1
#33 0x00007ffff5654fe8 in scm_with_guile ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#34 0x00007ffff55fbe35 in scm_boot_guile ()
from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#35 0x0000555555560861 in ?? ()
#36 0x00007ffff4fbc7e0 in __libc_start_main (main=0x5555555607d0, argc=1,
argv=0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>,
rtld_fini=<optimised out>, stack_end=0x7fffffffe5a8)
at ../csu/libc-start.c:291
#37 0x00005555555608c9 in ?? ()
Confirmed in all cases it's just that the X11/Xmir apps can't detect the session bus address of the login (which is on a different TTY BTW). Forcing DBUS_SESSION_ BUS_ADDRESS solves the problem.
Here are some stack traces of the hangs:
gedit: unix/syscall- template. S:84 64-linux- gnu/libglib- 2.0.so. 0 command_ line_sync () 64-linux- gnu/libglib- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 address_ get_for_ bus_sync () x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 register () x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0
(gdb) bt
#0 0x00007ffff705e853 in select () at ../sysdeps/
#1 0x00007ffff477acd1 in g_spawn_sync ()
from /lib/x86_
#2 0x00007ffff477b313 in g_spawn_
from /lib/x86_
#3 0x00007ffff7862b70 in ?? () from /usr/lib/
#4 0x00007ffff78645f2 in g_dbus_
from /usr/lib/
#5 0x00007ffff786f7ee in ?? () from /usr/lib/
#6 0x00007ffff787522b in g_bus_get_sync ()
from /usr/lib/
#7 0x00007ffff784b969 in ?? () from /usr/lib/
#8 0x00007ffff78488f3 in g_application_
from /usr/lib/
#9 0x00007ffff784918f in ?? () from /usr/lib/
#10 0x00007ffff78494f2 in g_application_run ()
from /usr/lib/
#11 0x0000000000400cfa in main ()
nautilus: unix/syscall- template. S:84 64-linux- gnu/libglib- 2.0.so. 0 command_ line_sync () 64-linux- gnu/libglib- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 address_ get_for_ bus_sync () x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 register () x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libffi. so.6 x86_64- linux-gnu/ libffi. so.6 marshal_ generic_ va () x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 emit_valist () x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 x86_64- linux-gnu/ libgio- 2.0.so. 0 0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>, fini=<optimised out>, stack_end= 0x7fffffffe5a8) libc-start. c:291
(gdb) bt
#0 0x00007ffff34c9833 in __select_nocancel ()
at ../sysdeps/
#1 0x00007ffff418ecd1 in g_spawn_sync ()
from /lib/x86_
#2 0x00007ffff418f313 in g_spawn_
from /lib/x86_
#3 0x00007ffff4729b70 in ?? () from /usr/lib/
#4 0x00007ffff472b5f2 in g_dbus_
from /usr/lib/
#5 0x00007ffff47367ee in ?? () from /usr/lib/
#6 0x00007ffff473c22b in g_bus_get_sync ()
from /usr/lib/
#7 0x00007ffff4712969 in ?? () from /usr/lib/
#8 0x00007ffff470f8f3 in g_application_
from /usr/lib/
#9 0x000000000042c78e in ?? ()
#10 0x00007fffedd29e40 in ffi_call_unix64 ()
from /usr/lib/
#11 0x00007fffedd298ab in ffi_call ()
from /usr/lib/
#12 0x00007ffff441fcf5 in g_cclosure_
from /usr/lib/
#13 0x00007ffff441f1d4 in ?? ()
from /usr/lib/
#14 0x00007ffff44394b8 in g_signal_
from /usr/lib/
#15 0x00007ffff443a08f in g_signal_emit ()
from /usr/lib/
#16 0x00007ffff4710168 in ?? () from /usr/lib/
#17 0x00007ffff47104f2 in g_application_run ()
from /usr/lib/
#18 0x000000000042ba31 in ?? ()
#19 0x00007ffff33ed7e0 in __libc_start_main (main=0x42b970, argc=1,
argv=
rtld_
at ../csu/
#20 0x000000000042ba99 in ?? ()
/usr/games/sol: unix/syscall- template. S:84 64-linux- gnu/libdbus- 1.so.3 64-linux- gnu/libdbus- 1.so.3 64-linux- gnu/libdbus- 1.so.3 64-linux- gnu/libdbus- 1.so.3 64-linux- gnu/libdbus- 1.so.3 64-linux- gnu/libdbus- 1.so.3 x86_64- linux-gnu/ libatspi. so.0 adaptor_ init () x86_64- linux-gnu/ libatk- bridge- 2.0.so. 0 x86_64- linux-gnu/ libgtk- 3.so.0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 emit_valist () x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgdk- 3.so.0 x86_64- linux-gnu/ libgobject- 2.0.so. 0 emit_valist () x86_64- linux-gnu/ libgobject- 2.0.so. 0 emit_by_ name () x86_64- linux-gnu/ libgobject- 2.0.so. 0 x86_64- linux-gnu/ libgdk- 3.so.0 manager_ open_display () x86_64- linux-gnu/ libgdk- 3.so.0 x86_64- linux-gnu/ libgtk- 3.so.0 context_ parse () 64-linux- gnu/libglib- 2.0.so. 0 x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 continuation_ barrier () x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 with_stack_ base () x86_64- linux-gnu/ libgc.so. 1 x86_64- linux-gnu/ libguile- 2.0.so. 22 x86_64- linux-gnu/ libguile- 2.0.so. 22 607d0, argc=1, 0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>, fini=<optimised out>, stack_end= 0x7fffffffe5a8) libc-start. c:291
(gdb) bt
#0 0x00007ffff537556d in read () at ../sysdeps/
#1 0x00007ffff0fdacf8 in _dbus_read ()
from /lib/x86_
#2 0x00007ffff0fde349 in ?? () from /lib/x86_
#3 0x00007ffff0fd2c95 in ?? () from /lib/x86_
#4 0x00007ffff0fd2b3a in ?? () from /lib/x86_
#5 0x00007ffff0fbd32f in ?? () from /lib/x86_
#6 0x00007ffff0fb8e08 in ?? () from /lib/x86_
#7 0x00007fffedc925f6 in atspi_get_a11y_bus ()
from /usr/lib/
#8 0x00007ffff39e9052 in atk_bridge_
from /usr/lib/
#9 0x00007ffff7117134 in ?? () from /usr/lib/
#10 0x00007ffff5f3dfa5 in g_closure_invoke ()
from /usr/lib/
#11 0x00007ffff5f4ffc1 in ?? ()
from /usr/lib/
#12 0x00007ffff5f58d5c in g_signal_
from /usr/lib/
#13 0x00007ffff5f5908f in g_signal_emit ()
from /usr/lib/
#14 0x00007ffff5f424d4 in ?? ()
from /usr/lib/
#15 0x00007ffff5f44961 in g_object_notify ()
from /usr/lib/
#16 0x00007ffff6de5778 in ?? () from /usr/lib/
#17 0x00007ffff5f3e1d4 in ?? ()
from /usr/lib/
#18 0x00007ffff5f589a6 in g_signal_
from /usr/lib/
#19 0x00007ffff5f59555 in g_signal_
from /usr/lib/
#20 0x00007ffff6e0b6c5 in ?? () from /usr/lib/
#21 0x00007ffff6de5646 in gdk_display_
from /usr/lib/
#22 0x00007ffff72a2266 in ?? () from /usr/lib/
#23 0x00007ffff5c71fc8 in g_option_
from /lib/x86_
#24 0x000055555556c1d6 in ?? ()
#25 0x00007ffff55fbc5d in ?? ()
from /usr/lib/
#26 0x00007ffff55d458a in ?? ()
from /usr/lib/
#27 0x00007ffff5671d33 in ?? ()
from /usr/lib/
#28 0x00007ffff55de283 in scm_call_4 ()
from /usr/lib/
#29 0x00007ffff55d4d21 in ?? ()
from /usr/lib/
#30 0x00007ffff55d4e05 in scm_c_with_
from /usr/lib/
#31 0x00007ffff5654bbc in ?? ()
from /usr/lib/
#32 0x00007fffeeccc952 in GC_call_
from /usr/lib/
#33 0x00007ffff5654fe8 in scm_with_guile ()
from /usr/lib/
#34 0x00007ffff55fbe35 in scm_boot_guile ()
from /usr/lib/
#35 0x0000555555560861 in ?? ()
#36 0x00007ffff4fbc7e0 in __libc_start_main (main=0x5555555
argv=
rtld_
at ../csu/
#37 0x00005555555608c9 in ?? ()