Package: libclutter-gtk-1.0-0
Version: 1.8.4-4

Package: gnome-session-common
Version: 3.30.1-2


In short: When running a mate session the environment-variable CLUTTER_BACKEND=x11 is set. This variable survives a logout and relogin into the GNOME wayland-session, which doesn't override it. The result is a bunch of not launchable clutter-gtk applications.

To reproduce the issue:
 * Install debian 10.3.0 with gnome and mate environment
 * Optional:
     * Login into GNOME (wayland) Session
         * Run `env | grep -Ei 'x11|wayland'`
            XDG_SESSION_TYPE=wayland
            WAYLAND_DISPLAY=wayland-0
         * Note: CLUTTER_BACKEND is not set
         * Launch `gnome-control-center` via graphical environment or console
            * Works fine
         * Logout
 * Login into MATE session
     * `env | grep -Ei 'x11|wayland'`
        CLUTTER_BACKEND=x11
        XDG_SESSION_TYPE=x11
     * `sudo grep -Ri CLUTTER_BACKEND /etc/`
        /etc/X11/Xsession.d/99mate-environment:    export CLUTTER_BACKEND=x11
     * Logout
 * Login into GNOME (wayland) session
     * `env | grep -Ei 'x11|wayland'`
        CLUTTER_BACKEND=x11 # <- survived!
        XDG_SESSION_TYPE=wayland
        WAYLAND_DISPLAY=wayland-0
     * Launch `gnome-control-center` via graphical environment or console
     * Observe it doesn't startup
        (gnome-control-center:4399): Clutter-Gtk-ERROR **: 12:23:42.914: *** 
Unsupported backend.
     * In fact all of the following apps terminate the same way
         * `compgen -c | while read cmd; do [ -n "$(which $cmd)" ] && ldd $(which $cmd) 
| grep -q clutter-gtk && echo $cmd; done`
            cheese
            totem
            evolution
            gnome-control-center
            gnome-contacts
            cheese
            totem
            evolution
            gnome-control-center
            gnome-contacts
            gnome-nibbles
            swell-foop
            lightsoff
            quadrapassel
     * Now launch `CLUTTER_BACKEND=wayland gnome-control-center`
        * Works fine

So I suppose the surviving of session-variables is the core issue here. In case of it beeng rather a feature than a bug, I suppose gnome should set CLUTTER_BACKEND explicitly aswell. Or maybe clutter-gtk shall respect this constellation of CLUTTER_BACKEND and GDK_WAYLAND_DISPLAY?

Reply via email to