My desktop in a GNOME shell
Ripping off Linux Outlaws title for episode 122, here is my review of GNOME’s upcoming desktop shell. Promised to be the pinnacle of the much talked about GNOME 3.0 release (which was happening and then not happening and then happening again) that is currently scheduled for September of 2010 (though no GTK+ 3.0, as far as I understand).
The new GNOME shell is, off the bat, pretty awesome – it is a completely new and refreshing approach to the desktop (checkout the screenshots in the link).
The GNOME shell replaces 3 different components of the modern X11 free desktop – the Window Manager, the panel set and the Compositing Manager – with a single setup. By running gnome-shell --replace
it takes over all these responsibilities. Unlike KDE’s 4th iteration the new GNOME leaves Nautilus to manager the root window as a file view – the so called “desktop icons”1.
GNOME shell is using mutter as the window manager – mutter is an experimental metacity replacement that is uses the OpenGL based toolkit clutter for doing the 3D compositing, and the shell itself is written in Javascript, which definitely lowers the boundary for entrance but may also be responsible for the slowness of GNOME shell – it is using the Mozilla Spider Monkey, the Javascript engine used in Firefox.
I’ve been using GNOME shell on and off for about a week now and my first impression is that it is slow – not enough to be a real problem for occasional use, but it would be a problem if they can’t get it much more snazzy by the release date. It may be because of the Javascript nature of the shell or because of mutter. My bet is on mutter as I’ve tried using it in the past and it is slow. GNOME shell also tends to freak out once in a while and eat all my memory, at which point I have to kill it and go back to compiz.
Usability wise,I think GNOME shell is very nice. The “activity orientation” works very well and is a bit similar to the point that KDE 4 went, but GNOME shell takes it further by completely ditching the panel approach. On the face of it it looks like they do they old GNOME thing – taking away all configuration and user options and do their “sensible defaults” thing. They did throw away the concept of applets which was one thing that you could customize GNOME with – with the new shell it looks like the only option you have is to choose which applications you use and how many activities you have.
That was the rant, and we’ll see where it goes from here. On the plus side, though, the new work flow with the shell is indeed very easy and flowing. The animations – though simple – make using the shell a pleasure (when its not thrashing my computer), and the favorite applications concept that have been used successfully elsewhere (in KDE’s kickout menu, Apple’s dock and the Windows XP menu) is used to great effect here.
In the future I would like to see more and better animations and compositing effects – currently GNOME shell is very plain looking compared to even the compiz default settings. Also I’d like to see more theming and customization options – I think applets are a great use case for small applications that do not need constant screen presence – like Tomboy or Hamster that I use – and I would be sad to see them go, possibly to the point of going back to KDE. Maybe a widget overlay like in KDE and MacOSX would allow that.
Lastly, here are some screenshots:
- KDE 4 tried to do away with this and instead use the root window as a widget canvas, but due to popular demand have later brought back the “desktop icons” file view as an optional widget and later as an alternative to the widget canvas [↩]
Let me tack my impressions here, as I’ve used it for almost a week now.
One of the things I miss the most is the keyboard layout indicator. I like to know which layout I’m with right now. For example I started typing the message with the wrong layout. oops. Most monolinguals won’t notice though.
The activity orientation bothers me some. I’ve got 4 desktops now – media, browsing, misc and IM. I find myself switching way too often. Maybe I just have an attention deficit, or maybe the split into activities is a bit artificial – for example I like to watch a movie during a slow going IM conversation… so I have to drag the VLC window onto the IM activities desktop.
Another annoyance is when you minimize something it goes nowhere. woo scary. It still shows up in the activities view and you can click it and it restores, but… annoying.
I don’t think I’ll stay here forever, I’ll return to gnome proper and wait some more.
— Arik
Keyboard indicator: this is current implemented as an applet in GNOME, which you can optionally add in the original GNOME panel. As there are no applets in the new shell, obviously its gone. Although I wouldn’t have necessarily chosen this as the most important applet, it is a must in a multilingual world and I don’t see how they can justify putting just that back in without allowing all applets – which as I understand, getting rid of is one of the original design’s goals.
Activities: maybe your segregation of activities is not right for you? I use email;development;terminal;browsing;vms+remotes;misc. IMs can live everywhere (and often are “show in all desktops”), and transitory stuff like videos show where I open them (usually from the web or email) and gone when I stop watching them. I do switch a lot, but I enjoy the deterministicity (is that a word?) of finding the correct application by going directly to the workspace where it is (using the non-default keyboard mapping of CTRL+F< #> to go to that workspace). So activities usually work for me and I like the capability of being able to start a session by throwing the applications to the workspaces where they should be in – with original GNOME I either have to start each application by going to the correct workspace, launching it, wait until the window shows up (which in the case of Eclipse takes forever and a half), lather rinse repeat; or launch all my applications and then start sorting them out to workspaces.
Minimizing: it takes time to adjust living without the crutch of a task list ;-p I personally never minimizes windows so I’m not sure what the use case for that may be.
In the mean time I will give them the benefit of assuming they know what they are doing and will solve all the usability problems by end of next year. That being said, knowing GNOME devs are hostile to suggestions of giving more control to users, I may be overly optimistic.
[…] My desktop in a GNOME shell (geek.co.il) […]