Skip to content

exo-open sets invalid $DISPLAY on Wayland

When exo-open launches a preferred application from inside a Wayland session, it sets $DISPLAY to $WAYLAND_DISPLAY, which breaks programs that don't support Wayland. To demonstrate:

echo $DISPLAY
exo-open --launch TerminalEmulator
# echo $DISPLAY in new TerminalEmulator window

On my system echo $DISPLAY prints :0 before exo-open and wayland-1 in the new TerminalEmulator window.

This occurs due to the set_environment function passed to g_spawn_async by exo_execute_preferred_application_on_screen which sets $DISPLAY to the result of gdk_display_get_name.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information