Gnome 3.0: the complete guide
5th Jun 2011 | 09:00
The release that's redefining the desktop
Gnome 3.0: the complete guide
Gnome 3 is the first major release of the popular desktop environment in over eight years. Many identify Gnome as being the face of Linux, because most early distros (and many current ones, of course) adopted the desktop in order to put bells and whistles on the ever-maturing kernel at the back.
Gnome 3 is radically different from previous releases. It's got a polished user interface that's been tuned for usability and a slicker code base to please application developers.
Gnome Shell is a new interface that replaces several key components of the desktop, such as the panel and the menus, and influences how you switch tasks, move between windows and more. Along with GTK 3 and the Clutter-based Mutter compositing manager, which serves to replace Metacity, the desktop as a whole has come a long way since the components started popping up in the repositories of many distros.
So without further ado, here's everything you need to know about the sparkling new desktop in town.
Gnome 3.0 development
The Gnome 3 desktop has been in the works for quite a while. The release team first announced to the world that they were working on Gnome 3 at the Gnome Users And Developers European Conference (GUADEC) in Istanbul back in 2008.
After the conference, several developers started evaluating the areas in Gnome 2 that needed to be redesigned for a pleasurable user experience. The discussions led to the Boston User Experience hackfest in October that year.
Vincent Untz, who was on the release team at the time, blogged that the designers and developers at the conference "tried to forget the current Gnome and see what we thought would make sense". They looked at several areas, such as window management, file management and desktop widgets, from a designer's point of view.
In an interview on the Gnome Journal, William Jon McCann, who contributes to several key areas of Gnome, notes that, at the hackfest in Boston, even before any kind of process emerged there was an intentional design-first ethic to the project. That's where the first mock-up of the Gnome 3 desktop was worked on.
It previewed a number of desktop refinements that are the highlights of Gnome 3, such as the integrated desktop search and a graphical interface for moving windows between workspaces.
Stepping out of the shell
At the hackfest, one of the key areas the team decided to re-think was window management. In the current Gnome release, tasks such as application launching, window management and task switching are handled by Metacity. This will now be delegated to Gnome Shell.
Put simply, Gnome Shell refreshes the visual experience of the desktop. Six months after the project began under the leadership of Owen Taylor, William Jon McCann joined as design lead. "The first thing I did when I started working on the Gnome Shell project was read. I spent a month doing nothing but reviewing usability research into desktop computing," says McCann.
Instead of just putting gloss over the existing desktop, the developers designed it after analysing fundamental usage patterns. Taylor outlines some of the questions they wanted to address with the new desktop: "How can we provide a workflow that assists the user in efficiently moving between different tasks, rather than making them do busy-work to manage their files and applications? How should the desktop be different if the user is spending most of their time in the web browser and chat program, rather than in word processor documents and spreadsheets?"
Allan Day, a member of the design team, adds that, "the Gnome 3 desktop was designed so that it would be usable and recognisable across a whole range of computing devices", which is why Gnome 3 is designed to work on everything from the limited real estate of a netbook to a touchscreen laptop or multicore desktop.
Gnome Shell uses compositing and is integrated with Mutter, which is an OpenGL-based window and compositing manager that leverages the Clutter toolkit. At the Boston summit, there were several presentations on using the Clutter toolkit in a range of Gnome applications.
It was there that Frederico Mena-Quintero presented his journal-based file management tool, now called Zeitgeist, which is an integral part of Gnome 3's Activity Journal.
Gnome 3 was set to be released in September 2010, but in July that year the team pushed back the release to March 2011. By the time Gnome 2.32 was released, version 3's release wasn't expected until April 2011.
Whistlestop tour of the Gnome 3 desktop
The main desktop is noticeably different and has made great strides towards being more newbie-proof. You don't have to be a veteran Gnome user to notice that instead of two panels, the Gnome 3 desktop now features just one at the top.
The panel has rearranged the clock and notification icons, but the menus for applications, places and system have been replaced by the solitary Activities menu. Active applications are listed next to this menu, and offer app-specific tasks, as well as options to close the application and open a new window.
This is where we can see most obviously the much-talked-about innovation of Gnome Shell. Activities offers you different ways to switch from one activity or task to another.
You can enable the Activities view by clicking the Activities menu or just moving your mouse to the top-left corner of the screen. The Activities view makes the workspaces more intuitive.
In it, you get a preview of all the open windows, as well as running applications, across workspaces. You can drag new applications, documents and windows between workspaces. It also lets you close multiple windows without having to switch to them. By default, you have two workspaces and can add more as required.
The Activities view also integrates search and browse functionality, which behaves similarly to Gnome Do and is useful in case the application or file you're after isn't immediately visible.
Like all aspects of Gnome Shell, the Applications view is designed to work well with touchscreens. The applications icons can be used to launch programs, and currently running apps are indicated by the addition of a glow underneath the name. Clicking on its name will either switch to the last used window of a running app or launch a new instance.
Another prominent feature is the dashboard on the left side of the screen, which lists currently running applications and also acts as a quick launch for favourite apps.
Besides these always-on display features, Gnome 3 has also had some more subtle user interface redesigns. One of them is the new notification system, which has been developed to communicate events without distracting you.
The notifications appear at the bottom of the screen in order to avoid the usability issues encountered with the notifications system in earlier Gnome releases.
The new Gnome desktop also integrates messaging into the desktop. You can now reply to IM messages, and get a threaded view of a conversation, without launching an app or switching away from your current window.
Improved default apps
It's not just the desktop that's had an overhaul for Gnome 3
It might look different, but at its heart Gnome 3 has the same set of useful applications that it's had for quite a few releases. The apps have been refined, polished and upgraded to the new GTK 3 toolkit. The Nautilus file manager has been redesigned and features a new dialog box for connecting to remote servers.
There's also a new cleaner toolbar, a smarter status bar that appears only when called for, and a sidebar that eases navigation by organising your locations more intuitively.
The zippy vanilla text editor in Gnome, Gedit, features a new search pop-up. It can now open and save compressed files, and boasts a smarter spell-checker, which will also point out spelling errors in comments when editing programming code.
Besides these visual changes, there have been several behind-the-scenes alterations as well, such as to the Gedit documentation, which has been rewritten in the Mallard format.
Mallard is a markup language that makes it easier for developers to write help documentation for their software. The Evince document viewer also uses Mallard for its documentation.
Evince supports several document formats, including PDF, DJVU, TIFF, CBR, CBZ and so on, plus the XML Paper Specification (XPS) format. The File menu and the toolbar have a new Open Container Folder action button, which calls on Nautilus to launch the folder containing the document you're currently viewing.
The user interface for Cheese, the app for taking pictures and videos from your webcam, has been rewritten from scratch in Vala. Cheese also features over 30 user-configurable effects, which can be previewed live.
There have been several under-the-hood changes to the Epiphany web browser to make it zippier. It has a new non-intrusive download manager and a floating status bar to give pages more browser real estate. The feature of grouping tabs by site previously provided by the Tab Groups extension is now built into the browser itself.
The Evolution personal information manager, which provides email, calendar, address book and task list functions, has a new Picture Gallery option in the View menu. Printing the Work View in Evolution's calendar is at last possible, an omission first reported in 2003.
One app that's received a lot of enhancements is the Empathy instant messenger. It's tightly integrated and a core component of the new Gnome desktop. Most of the changes in Empathy are usability improvements. It prompts you for a password only when it's needed, rather than requiring you to save it when you create the account. New incoming calls are now automatically rejected when you're on another call.
Gnome 2 and fallback mode
Although the core Gnome applications are better integrated into the new Gnome 3 desktop, your favourite Gnome apps will work just fine. According to Sri Ramkrishna, an editor of the Gnome Journal, a Gnome 2 application can exist in a Gnome 3 environment.
"We continue to maintain the same GTK API from GTK 2, although they're deprecated while providing newer API for application programmers to use. The advantage is that application developers can move to Gnome 3 at their discretion," he says.
Since Gnome 3 is not only a visual refresh but also provides facilities such as more flexible size allocation, new widgets and so on, you can expect more apps to be ported to the new desktop.
Gnome 3 requires hardware-accelerated graphics, which could be a problem for some people. If the Gnome session manager detects insufficient graphics capabilities, the desktop will automatically switch to a fallback mode, which uses Gnome Panel, Metacity and notification-daemon instead of Gnome Shell, but they'll be configured to behave like they do in Gnome Shell.
Gnome 3 FAQ
How do I test Gnome 3?
The best way to try Gnome 3 is via the official live CD hosted at www.gnome3.org. There are both 32-bit and 64-bit versions of the OpenSUSE-based live CD. You can burn the live CD ISO image onto a blank CD and boot from it.
The other way is to transfer the image onto a USB stick using the dd command. Assuming your USB drive is /dev/sdc, make sure it isn't mounted, and use:
<code># dd if=<path-to-ISO-image>Gnome_3.i686-0.1.0- Build1.1.iso of=/dev/sdc </code>
Currently, you won't be able to experience the full Gnome 3 desktop if you boot the CD image in VirtualBox, even if the 3D acceleration is enabled.
Will my favourite Gnome 2 application work on Gnome 3?
Gnome 3 already bundles a set of core applications. You can install any Gnome 2 app on Gnome 3 that won't look out of place on the desktop. Still, if you have a custom GTK-based app, it's best to try it out in the sandboxed live environment.
Why are there no applets?
When brainstorming Gnome 3, the developers and designers reviewed the core functionalities provided by the most useful applets, such as the clock, calendar, show desktop icon and so on. Since Gnome Shell doesn't omit any of these essential functionalities when in use, they decided to replace the applets with this.
Where have the controls to minimise windows gone?
The lack of minimise (and maximise) buttons in the window title bars in Gnome 3 initially strikes you as being a bug, but it's actually a feature!
According to the design team, the buttons make little sense on the Gnome 3 desktop since there's nothing to minimise the windows to. There's no dock or window list. The team debated whether they should instead replace the minimise button with a button to hide the windows, but ruled against it because communicating the location of the hidden windows would just add complexity.
Instead, in the new desktop, if you want to switch to a particular window, select it from the Activities overview. You can drag windows to resize them and double-click to maximise. Removing the two buttons also adds to the touch-friendly nature of the whole desktop, since now you won't accidentally maximise a window you want to close.
Wait a minute, no dock?
As we said above, the omission of a dock doesn't actually take away any functionality, and in fact is the basis for the distraction-free theme of Gnome 3. Now you can switch windows easily when you want to, and avoid them interfering with the task at hand.
As a bonus, the removal of the window list and dock made the bottom panel unnecessary. Taking it out freed up more real estate on the desktop, which is a luxury on small-screen devices such as netbooks.
I see the sense in that, but why are the customisation options so limited?
One of the design goals of Gnome 3 is to minimise the number of settings and preferences. This has divided opinions in the open source community, since many power users don't like decisions to be made for them.
The Control Center in Gnome 3 has been completely redesigned, including the contents of every settings panel. One of the settings that's been restricted is theming, although changing the desktop background is still possible using the Background panel, which can now pull in images from Flickr.
Another default that's generated a lot of debate is the power setting, which suspends the laptop when the lid is closed, and doesn't provide an option to change that behaviour. You can read some more in-depth commentary about that here.
But this is very much a work-in-progress. The Gnome 3 website mentions that "a powerful extensions system is also planned for a future release that will give users and developers exciting customisation possibilities".
So where's GConf?
The GConf system, used for storing configuration settings for the Gnome desktop and apps running on top of it, has been replaced by GSettings.
If I migrate from Gnome 2 to Gnome 3, what happens to my settings?
In the GSettings hackfest back in April 2010, the developers agreed upon a mechanism to migrate the settings from GConf to GSettings. GSettings hacker Matthias Clasen explains the workflow.
First, the applications that are interested in migrating user settings from GConf to GSettings install a conversion file, which is a keyfile in the directory /usr/share/GConf/ gsettings.
This keyfile is picked by the gsettings-data-convert tool that's installed by GConf and started automatically at login. The tool reads the file and copies data from the user's GConf database to the GSettings. It then keeps track of what conversions it's already done in /.local/share/gsettings-data-convert.
The limitation of this process is that it can only handle simple key types, such as strings, integers, floats, booleans and lists of strings or integers. Clasen explains that during development they discovered it wasn't a good idea to convert user settings for keys that aren't exposed in the user interface.
If advanced users want to tweak these settings, they're still able to do so from the command line. For example, if you want to change the theme, you can do it with the gsettings command line tool:
gsettings set org.gnome.desktop.interface gtk-theme 'Clearlooks'
Um, so can I still use Gnome 2?
Sure you can. Well, at least for the time being. According to the Gnome developers, some parts of Gnome 2 were difficult to maintain and they don't plan to do so for several parts of the Gnome 2 branch following the release of Gnome 3. Still, the Gnome 2 desktop is quite stable and won't disappear off your distro's mirrors any time soon.
Alright then, so how do I install Gnome 3?
Components of the Gnome 3 desktop have been in the testing repos of major distros for a while now. By the time you have this issue in your hands, Gnome 3 will have been released.
For detailed installation instructions, take a look at the Gnome 3 website. Add the relevant repositories, fire up your distro's package manager, get yourself a mojito and enjoy the shiny new desktop!
First published in Linux Format Issue 145
Liked this? Then check out 10 best Linux distros
Sign up for TechRadar's free Week in Tech newsletter
Get the hottest tech stories of the week, plus the most popular reviews delivered straight to your inbox. Sign up at http://www.techradar.com/register