I was one of the Gnome Shell sceptics initially but now I like it a lot. I tried it before with Fedora 16 last year but it was too much of a culture shock for me. The previous week I decided that I'm going to make some effort to try and "get it". And now, since the beginning of this week, I am using Shell and I see no good reason to ever go back to Classic (or the classic desktop Superphor, for that matter). I am using Shell 3.2 with Trisquel 5.5.
I will admit that the default/stock Shell install definitely won't cater to everyone. So I went looking at the Gnome Extensions (https://extensions.gnome.org/#) website and what other websites deemed "the best extensions". For a while I felt like a kid in a candy store looking at all the interesting hacks people have been making for Shell. There are essentially 4 modes for using Shell: Top bar, Top bar and bottom panel, Bottom panel, "VIM mode". The Top panel mode is what you get normally. It is a strange mixture of a legacy concept (the Menu button), the name of the application having focus and then the more traditional system/notification icons. As it is, I felt it was a waste of space. I always use the Super/Windows key to access Overview mode. As for the active window name, I either keep mental track when I have multiple windows open, or I am full-screen and there's nothing to keep track of. So I see no point in that either. I know Shell 3.4 introduced some simplified menu into that Window Name thing (possibly inspired by Unity's Globalmenu) but I'll ignore that for now. So I started to look for ways to customise the top bar. To get straight to the point, it is possible to get it to look almost like the old panel. You can have an old-style menu, shortcut icons, open windows and then on the right side whatever other widgets/applets are available. Let me warn that your new old-style top bar will not be very customisable from the GUI (like with 2.x Panel). You will not be able to drag things around but I realised that's not really an issue for me any more. All my old 2.x Panels always looked like that anyway: Menu, Shortcuts, Windows, Applets, System/Notification Icons, Time. With this customisation I think I might have been satisfied if I wanted the old-style Panel back. But there was one issue that annoyed me: the Window List extension looked very ugly and distracting. So I decided to dig some more and see what I can do with Shell. But here is a list of some of the extensions I used to simulate the old panel (all, except one, of them are on the Gnome Extensions website): * Frippery Applications Menu: this replaces the 'Activities' button with an old-style menu. It doesn't use floating boxes for each level in the menu hierarchy, but instead uses something similar to a website accordion widget. * Frippery Panel Favorites: this adds the items in the Dash as shortcut icons to the top bar. To edit the items here you must edit the Dash instead. * Window List: this adds all the open windows to the top bar. They have an icon and the window title. It also moves the Clock to before the status icon. * Window Icon List: I also tried this one instead of the normal Window List. It adds only an icon for each open window. It is much harder to use, for example while I'm typing this email I can see 2 Thunderbird icons and I have no idea which one is which. There is also no hover text to help me. * Frippery Move Clock: moves the clock to be the second item on the right side. Only the status/username menu is after it. You do not need this extension if you use the Window List extension. * gnome-shell-classic-systray: It moves the notifications from the bottom "shadow panel" to the top, next to the other system icons. Note that you cannot click on the moved icons while you are in Overview mode. You can only get this extension from a PPA (http://www.webupd8.org/2012/04/gnome-shell-classic-systray-message.html). * Remove User Name: as the name says, it removes your name next to the status icon. It is not necessary, but I know what my name is :). The above extensions give you the basic old panel layout. But if you like making crazy modifications to your 2.x Panel then this will not make you happy. There are some other extensions that might be useful: * Remove Accessibility: exactly what the name says. It seems like many people complained that it is there all the time. * Evil Status Icon Forever: this allows you to define what notification icons you want at the top and which of the default icons you want to remove. If you use this you don't need the Remove Accessibility extensions * gTile: it gives you a GUI to organise your windows in a grid. There are no keybindings that I am aware of, which is very annoying. * Alternative Status Menu: by default the Status menu does not have a Shut Down item, you have to hold down ALT. This puts the Shut Down item in the menu. * Places Status Indicator: it adds something like the old Places applet. It shows your Nautilus Bookmarks and standard Places, like Home, Documents, Removable Drives, etc. There are a few ALT+TAB extensions that make it work in the old way, i.e. one icon per window, but I find myself to prefer the new style where you ALT+TAB between different applications and ALT+` to switch between different windows of the same application. I did not really test any of the methods that add a bottom panel because I never liked having two panels anyway and I realised that I do not really want a panel at all. But I had a brief look at: * Frippery Bottom Panel: it adds a bottom panel with open windows and Workspace icons. * Panel-Docklet: it can add a bottom panel with Workspace icons, Favourite icons (from Dash) and open windows. I should add that it is possible to run the Classic Panel alongside Shell. I didn't test it much, but if you run "gnome-panel" you get your Panel back if you want it. But then I found an extension that made me realise how I want to work on a desktop. The extension is "Panel Settings" and doesn't do much by itself. You can use it to move the Top bar to the bottom but it looked ugly because of the curved bottom. But the great thing was that I could make the Top bar appear only in Overview mode. Using that setting in combination with either a Shell bottom panel or gnome-panel would make your desktop look and act like a Classic desktop until you press the Super/Windows key to get the Overview mode. With the Top bar now removed, I realised that I had an almost "VIM mode" desktop. In work mode I had my windows and nothing else. In Overview mode I could do other things. I use Overview mode only to launch applications (usually I need 3 character to find the correct one) and shutdown. I can see a lot of potential if Overview mode is hacked more. I don't even use the mouse when I'm in there (except to shutdown), so if something was done to the preview windows or if it was replace by something useful (in my case) then Overview mode could be more useful. But as it is now, I don't worry too much: I use it to run application, see the time and almost nothing else. And then I found one more extension that made me realise Gnome Shell might turn out to be really awesome after all. It is called "Shellshape" and it makes your window manager use an organic Tiling mode (like Bluetile) in addition to stacking/floating mode. It supports keybindings too. The bad news is that it now only works with Shell 3.4. But that is the perfect excuse for me to try Shell 3.4 before Trisquel 6.0 is released. All I would need with that is a way to hide application titlebars and I think I would have something close to a perfect desktop for me. So now with all distractions hidden and with the exciting idea of Shellshape I now have only one really big problem: what should I do with my empty desktop root window :)? I turned off Nautilus desktop handling so now it is just a big empty space with a picture. Granted, it will not be seen much, maybe only after logging in. I thought that I would just make it plain black and forget about it. Or I could find a cool picture and cover it with a giant clock and some useless l33t stats provided by Conky :). Maybe that will be the perfect place to showcase some really great Trisquel artwork? I've also experienced some weird issues. I mentioned in a previous thread that I couldn't get Nautilus to show up in the Overview applications list. It seems that it only displays applications that are in the Applications Menu. I enabled Nautilus under Accessories/Files using "alacarte" and it showed up. Sometimes I get random lockups: it would show my windows but everything would be frozen. Sometimes I can switch to another virtual terminal but other times not even that would work and I have to do a hardware shutdown on my laptop. I also get graphical corruption. Overview mode will turn solid blue or have big patches of blue covering parts of the screen. It usually corrupts the GUI fonts too. I've also had freezes and corruptions at the same time. The animations are a bit laggy when many open windows are displayed in Overview. Those descriptions aren't the best and I probably missed some details. I have not done much empirical testing, but I suspect this might have more to do with the acceleration on my graphics card (Nvidia NVS 140M) and nouveau than with Gnome Shell 3.2. However. I will definitely test this with Shell 3.4, because it spoils what is otherwise a really nice experience. There was one issue on Trisquel's side. It looks like Gnome Tweak Tool is modified in Trisquel to remove Gnome Shell tweaks (http://bzr.trisquel.info/package-helpers/trunk/annotate/head:/helpers/oneiric/make-gnome-tweak-tool). I had to download Ubuntu 11.10's version and install with dpkg to get the functionality back. The change prevents you from changing some Shell settings and it removes the list that allows you to enable/disable extensions. The extensions one is important because without it I have to go to the Gnome Extensions website to enable/disable extensions or I have to move/remove folders manually. I also have some other problems but I am not sure if I broke some things. I used a Trisquel 5.5 Release Candidate (and probably broke it already) and I added the gnome3-team/gnome3 PPA. Some of the issues I have with the Top bar: * Network Settings no longer opens the program, but "nm-connection-editor" still brings it up manually. * I cannot find a way to change my profile picture. When I click on the big Trisquel icon near my name, it highlights (indicating something should happen) but nothing happens. * There is an "Online Accounts" item in the Status menu but it does nothing. I think I must install it (gnome-online-accounts), but I did not test this. * The Available/Unavailable switcher is useless to me because I use Pidgin instead of Empathy. I have not found any other reason why it is there. Some things I would like to see better integrated: * Pidgin: besides the Available/Unavailable issue, Empathy allows you to type a reply in the Notification popup but Pidgin does not. I don't necessarily need this, but it might be useful. There is an extension, Pidgin Conversation Integration, that might replicate the functionality but I haven't tried. Perhaps I should have a look at Empathy (I've never used it) and see if there is any good reason why I still use Pidgin. * Thunderbird: The DateTime/Calendar applet only works with Evolution for event management. There is supposed to be some a Thunerbird addon that pushes Thunderbird/Lightning events to an Evolution server and then to the calendar applet. But I couldn't get it to work and it seemed like an unnecessary detour. In the past I preferred Thunderbird over Evolution so I don't want to change to Evolution just for that integration. Luckily there is an extension, Nothing To Do, that disables the Calendar's Event functionality so it becomes just a plain calendar. At this point I definitely think Trisquel should adopt Gnome Shell. I used Unity a few times but I prefer Shell's extensibility. It would also give us the opportunity to create a masterfully crafted Shell experience by providing some useful extensions by default. I am fully aware of the reasons why we are not using Shell. In Shell 3.4 accessibility has been improved, but I do not use these functions so I have no idea what still needs attention. The only other big problem is graphic acceleration. Please note that I am not trolling nor am I trying to marginalise a part of the community, but I am not sure how bad that problem really is. I do not follow hardware trends much, but as far as I know most Intel motherboards have had integrated graphics for a long time. I tested Fedora 16 with Shell on an old 2004 Dell with Intel i915 chipset and it worked. I think it lagged once in a while, but it was a live CD and there are extensions to turn off some animations and even speed others up. The point is that I had acceleration on an 8-year old machine, though I probably wouldn't recommend to run it on such an old machine anyway. I never used AMD boards so I do not know if they ever had integrated graphics. Is there a big problem with graphics on AMD motherboards? As far as removable graphics cards are concerned, ATI is a bigger problem than Nvidia, but a graphics card can be removed if it serves no purpose. This is more problematic in laptops where you cannot remove the card. I don't want to use "just buy better supported hardware" as a reason to ignore people with this problem. I am not sure how well the software acceleration works with Shell, but if your CPU is powerful enough to handle that without a problem then there is a big chance that you have integrated graphics anyway. Or am I wrong in assuming this? To get to the point: how big is the issue of not being able to run an graphical accelerated desktop? Trisquel 6.0 is going to be our big product and to be honest now, I no longer think Classic mode should be our default desktop. We should definitely keep it for people who cannot run Shell, or who do not want to run Shell (even if heavily modified to resemble Classic) at all. I would go so far as to say we should have it as separate option during the installer. But we need to take Gnome Shell and integrate it better. Just installing "gnome-shell" makes it feel generic and like we made no effort. Some people prefer Unity, but in my experience Unity was meant to be generic and less customisable and therefore it probably doesn't make much of a difference if it gets installed without modifications. I'm sure people who love and know Unity more might disagree with me. So after this mouthful, who else is using Shell and how do you use/hack it? -- Morne Alberts
signature.asc
Description: OpenPGP digital signature
