Before Thanksgiving I’ve caused some uproar and made people doubt our incurable stubbornness by first announcing the release team decision to drop fallback mode (*), and then that we’re going to be looking at supported extensions as a replacement (*). Some have been calling this ‘classic’ mode – I’m using the term ‘legacy’ here, since ‘classic’ may raise some false expectations.

Two weeks have passed since that initial announcement, so I thought it would be a good idea to give an update on what we [1] have achieved so far.

GNOME Legacy

We’ve decided to use the gnome-shell-extensions repository as the place where we collect the extensions that will be part of this effort. If you configure with –enable-extensions=classic-mode, we will install a small set of extensions.

Since 3.6, GNOME shell has some infrastructure to operate in different ‘modes’. To see the list of supported modes, run:

gnome-shell –list-modes

and to run GNOME shell in a particular mode, you start it like this:

gnome-shell –mode=gdm

Different modes are what defines the GNOME shell appearance on the login screen and on the lock screen. Ever since we first introduced this functionality, the plan was to extend it to allow e.g. a ‘kiosk’ mode, which would reconfigure the shell in a way that is suitable for e.g. a point-of-sale kiosk. The one thing that is still missing is a way to load externally defined modes, since it is somewhat unrealistic to expect people to patch the installed GNOME shell JavaScript files.

Not anymore! In bug 689304, Florian has added support for external modes. And in bug 689285, Debarshi has added the necessary glue to install a desktop file that runs GNOME shell in classic mode and a session definition that includes this modified shell. The upshot is that we now have a ‘GNOME Legacy’ session appear in the session chooser in the login screen:

With all the infrastructure in place, we are now starting to fill out the legacy session. There is not too so much to see yet, but we do have a small extension to add the minimize and maximize buttons back. And in bug 688913, Florian has added a new key binding for a more traditional Alt-Tab switcher:

In another unexpected synergy, this could be built on top of independent work that Rui has done to reuse the switcher popup for an input source switcher.

Next up, we are looking at taskbar and main menu extensions.

Modern GNOME

Does all this attention on legacy mean that we no longer believe in GNOME 3 ? Of course not ! There’s plenty of great new stuff coming to GNOME 3.8. Here are some examples that have either landed already, or are in the process of landing:

A new settings panel to control privacy settings:

Configurable shell search:

Notification filtering:

A new power panel:

A new Photos app:

Among the many things that don’t screenshot so well, a noteworthy improvement that will land very soon: working key bindings in the overview (and elsewhere). Super+M now toggles the message tray off as well as on.

[1] Florian, Debarshi and Giovanni have been doing all the work, I’m just egging them on…