Skip to content
  • Andreas Henriksson's avatar
    main: fix starting gnome session via startx · 890a797a
    Andreas Henriksson authored
    The changes related to gsm_util_setenv during 3.19.x seems to have
    broken starting a gnome desktop the old fashioned way, eg. via startx.
    
    The gnome.session required components has OnlyShowIn=GNOME; which
    disqualifies them from being started unless XDG_CURRENT_DESKTOP is also
    set to GNOME (by the gio utility function used to look up info).
    
    Currently gnome-session already carries code to catch the case of
    XDG_CURRENT_DESKTOP being unset and set it to GNOME as a fallback.
    Unfortunately the changes to gsm_util_setenv seems to have made it only
    set the values in the (dbus activated) child environment, rather than
    the current environment which g_desktop_app_info_get_show_in is looking
    at.
    
    Make the fallback code set XDG_CURRENT_DESKTOP in both current
    and child environment fixes it.
    Also move the entire hunk of code before initializing gio to
    prevent potential thread issues, now that is uses g_setenv.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=764379
    890a797a