Together with GDMSESSION, DESKTOP_SESSION and XDG_SESSION_DESKTOP, GDM-Session now comes to support XDG_CURRENT_DESKOP. The reason for this is to allow changes to default GSettings values on a per-desktop basis, while it also maintains compatibility with Desktops outside of GNOME.
This, together with the new MIME Application Specifications ( Freedesktop, April 2), promise to solve the “issues” (actually the mess!) when we have installed more than one desktops. For example, KDE+GNOME.
Bastien Nocera in his blog-post XDG Summit: Day #4
During the wee hours of the morning, David Faure posted a new mime applications specification which will allow to setup per-desktop default applications, for example, watching films in GNOME Videos in GNOME, but DragonPlayer in KDE. Up until now, this was implemented differently in at least KDE and GNOME, even to the point that GTK+ applications would use the GNOME default when running on a KDE desktop, and vice-versa.
This is made possible using XDG_CURRENT_DESKTOP as implemented in gdm by Lars. This environment variable will also allow implementing a more flexible OnlyShowIn and NotShowIn desktop entry fields (especially for desktops like Unity implemented on top of GNOME, or GNOME Classic implemented on top of GNOME) and desktop-specific GSettings/dconf configurations (again, very useful for GNOME Classic). The environment variable supports applying custom configuration in sequence (first GNOME Classic then GNOME in that example)
The bug report (& the patch!) comes from Lars Uebernickel #727546
We just specified XDG_CURRENT_DESKTOP at the freedesktop summit as a way for desktop components to find out the name of the currently running session.
This variable needs to be set by gdm so that it’s in the environment of all things in the session, most importantly dbus.
On the same bug report, Ryan Lortie
XDG_CURRENT_DESKTOP is already in wide use outside of GNOME and has a meaning with respect to at least the desktop entry spec (and very soon, some agreed-upon changes to the mimeapp spec).
I also want to use it from gsettings for allowing changes to default values on a per-desktop basis. This is something that Debarshi wanted for gnome-classic mode and something that distributors have been asking about for a while as well.
ie Ubuntu wants some things different in Unity desktops vs. GNOME desktops – right now they have to break GNOME in order to make the changes in Unity.
The patches landed on GDM a couple of hours ago from Lars Uebernickel.