GNOME Shell to support a "classic" mode

From: Matthias Clasen <matthias.clasen-Re5JQEeQqe8AvxtiuMwx3w-AT-public.gmane.org> To: desktop-devel-list <desktop-devel-list-rDKQcyrBJuzYtjvyW6yDsg-AT-public.gmane.org>, GNOME release team <release-team-rDKQcyrBJuzYtjvyW6yDsg-AT-public.gmane.org> Subject: Fallback mode is going away - what now ? Date: Wed, 21 Nov 2012 08:17:16 -0500 Message-ID: <CAFwd_vDG7t9YARUJxKxVkfgS6B+kqg74G+gsn6-mhTizuu5wvw@mail.gmail.com> Archive-link: Article, Thread

In the discussion over fallback mode at the Boston, we've talked about GNOME users who use fallback mode because they are used to certain elements and features of the GNOME 2 UX, such as task bars, minimization, etc. GNOME 3 has brought new patterns to replace these, such as overview and search. And while we certainly hope that many users will find the new ways comfortable and refreshing after a short learning phase, we should not fault people who prefer the old way. After all, these features were a selling point of GNOME 2 for ten years! So, what to do ? Thankfully, we have a pretty awesome extension mechanism in gnome-shell (extensions.gnome.org), and there are a ton of extensions out there which allow users to tweak gnome-shell in all kinds of ways. This also includes extensions which bring back many of the aforementioned 'classic' UX elements. The downsides of extensions are that (a) there is no guarantee that they will work with a new shell release - you often have to wait for your favourite extension to be ported and (b) there's so many of them, which often do very similar things - choice is always hard. As part of the planning for the DropOrFixFallbackMode feature[1], we've decided that we will compile a list of supported gnome-shell extensions. This will be a small list, focused on just bringing back some central 'classic' UX elements: classic alt tab, task bar, min/max buttons, main menu. To ensure that these extensions keep working, we will release them as a tarball, just like any other module. Giovanni already added an --enable-extensions=classic-mode configure option to the gnome-shell-extensions repository, which we will use for this work. We haven't made a final decision yet on how to let users turn on this 'classic mode' - it may be a switch in gnome-tweak-tool or something else. Some questions that I expect will be asked: Q: Why not just make gnome-shell itself more tweakable ? A: We still believe that there should be a single, well-defined UX for GNOME 3, and extensions provide a great mechanism to allow tweaks without giving up on this vision. That being said, there are examples like the a11y menu[2] or search[3], where the shell will become more configurable in the future. Q: Why not cinnamon ? A: Cinnamon is a complete fork of mutter/gnome-shell/nautilus - ie a completely separate desktop shell. Our aim with dropping fallback mode is to reduce the number of desktop shells we ship, not replace one by another. We've had a friendly discussion with clem about the reasons why they went from a set of extensions to an outright fork, and we don't think they apply in our situation. Q: Why isn't it enough to just have these 'classic mode' extensions on extensions.gnome.org ? A: We want to support these, ie make sure that they are available and work at the same time as the next major GNOME release. The most straightforward way to do that is to make them part of our traditional release mechanism - git repositories and tarballs. Q: Who is working on this ? A: Giovanni, Debarshi and Florian. Comments, questions, suggestions welcome. Matthias [1] https://live.gnome.org/ThreePointSeven/Features/DropOrFix... [2] https://bugzilla.gnome.org/show_bug.cgi?id=681528 [3] https://live.gnome.org/ThreePointSeven/Features/Integrate...