GNOME Shell is a project to create a new, compelling general purpose Free Software desktop user interface.

Visual refresh

A major goal of GNOME Shell is to make use of modern desktop hardware (and corresponding amazing work in Free Software drivers) for hardware to create a new, visually appealing interface. An important part of this is that we shouldn't appear too close to either of the two major proprietary desktops (Windows and OS X) - we want something that when you see it, you can immediately identify it.

Interaction refresh

We learned from experience that some things in GNOME 2 are suboptimal. There are a wide variety of things, but some highlights are:

  • Search (for applications and documents primarily)
  • Access to recent documents (this is completely buried in GNOME 2)
  • The "notification area" is a mess today; applications use it inconsistently, and core desktop functionality like networking is mixed in with non-core functionality. GNOME Shell has a new messaging tray design for applications to use that will be less obtrusive, and we plan to better integrate things like NetworkManager to really feel like part of the desktop experience rather than just being a random 24 pixel icon.

Have a better designed core, and a more powerful extension system

The GNOME 2 interface is too flexible in places it shouldn't be, and not flexible enough in others. For example, we discovered that the ability to put "panels" anywhere by default in any sort of mode created user confusion. The "applet" system had a mix of key desktop components (that can't really be optional), and toy games.

On the other hand, it is too hard to change some things in GNOME 2. If for example you wanted to experiment with how windows are positioned, you had to resort to hacking C code and somehow distributing that patch. We've lowered that barrier significantly by moving closer to a Firefox-style architecture with a corresponding extension system.

Like Firefox, you can now experiment with many types changes to the core interface with simple JavaScript code, and share those with others by distributing a .zip file. A web system for sharing like is a possibility. Not everything can necessarily be done from script, but experimenting with changes to the GNOME desktop core (and sharing those changes with others) has never been easier.

More information and background

See the GnomeShell/Design page for more information about the current design of the shell.

GnomeShell/NotesAboutDesktopUsage has a longer list of some of the issues from GNOME 2, as well as a blog post link for a summarization of the original hackfest where GNOME Shell was conceptualized.

Projects/GnomeShell/Design/Goals (last edited 2015-10-20 14:22:52 by AllanDay)