One week with GNOME3

I’ve installed GNOME 3 ppa on my ubuntu natty last week, and have been using it exclusively since then. To be honest I’ve been ranting a lot against GNOME3 before using it for my day to day activities, so I feel I should share my observations now that I really know it. Here are all the good and bad things I’ve seen, with no particular order. I’ll try not being too polemic (that’s hard exercise for me), please keep in mind I’m not pretending being a normal user; I’m a developer so my needs probably are different.

Bugs

I’ve reported most of the bugs/regressions/unusabilities I’ve observed in bugzilla during the week

648190 gnome-settin UNCO NumLock is not enabled by default
648153 gnome-shell UNCO typing on the desktop could start searching in overview
648138 gnome-shell UNCO Issue when swithing from/to dock station with external monitor
648137 gnome-settin UNCO wallpaper suddenly became white
648114 rhythmbox RESO NOTG Window does not always close when running gnome-shell
648106 gnome-shell UNCO My account just below IM presence in me-menu is confusing
648097 gnome-shell UNCO me-menu says I’m available, but I’m not until I start empathy
648096 gnome-shell UNCO inconvenient workspace handling when app needs restart
648094 gnome-shell RESO DUPL Impossible to change wallpaper from desktop
648093 gnome-shell RESO DUPL multimedia keys are not working from overview
648091 gnome-contro UNCO In shortcut tab, “+” and “-” buttons does nothing
648089 gnome-shell RESO DUPL can’t select “wikipedia” with keyboard
648088 nautilus RESO DUPL Impossible to move a file to trash with DELETE key
648087 gnome-tweak- UNCO gnome-shell does not show icons on desktop after login
648084 gnome-shell UNCO Network connected/disconnected notifications stay forever

gnome-tweak-tool

I think I’ve changed the default value for pretty much everything in that tool. I find it sad to unify all gnome-settings in a new shiny and consistent UI, and then rely on a completely different and inconsistent tool for the rest. I know it is extremely hard to define what options to show the user, but IMO this feels like an easy solution to avoid the problem instead of facing it. Maybe we could simply make gnome-tweak-tool just another “tweak” icon in gnome-control-center, so at least it gets linked from there. That would feel more integrated.

GNOME thinks I’m disabled people

Considering all the effort to keep UI as minimum as possible, with no applets on the panel, no way to tweak it at all, and still I’m forced to have that menu for disabled people on my panel. I completely agree it is important for people needing those options to have a way to quickly access them, but this seems really really overkill to me. At least this could be yet-another option in gnome-tweak-tool?

Also please rename those “universal access”; do I really have access to the whole universe in one click? At least this sound silly in the French translation…

ctr-del

I’m probably the last geek to use nautilus to manage my files instead of gnome-terminal, but this change in nautilus to use ctr-del to delete a file surprised me. For the first days I’ve been thinking it was just a bug that nautilus can’t delete files and I used right-click context menu to move to trash. Then I discovered by asking on IRC this was actually intentional!! I won’t even start telling this is wrong, but simply ask one simple questions: How is CTR-DEL discoverable? Pressing DELETE does nothing, just silently ignoring me. My first intuition was of course the context menu to move to trash, and no shortcut is shown there. Since any computer user since in win95 (or even earlier?) are familiar with DELETE key to delete a file, I think it is important to have some notification telling the user what to do.

me-menu

The menu on the right of my screen that kindly reminds me my name, next to the disabled-people-menu (not only GNOME thinks I’m blind, but also that I have Alzheimer), looks like an IM menu to me. It starts with my fullname (which I use as alias on my IM accounts) and a chat bubble icon like the new Empathy icon. Then it have Available/Busy items which are totally IM vocabulary, followed by “My account” which surprisingly does not open Empathy account settings… and this ends here, the rest has nothing to do with IM… I do totally like having IM being first-class citizen in GNOME UI, but something looks wrong here. Especially since when I boot the computer, the menu says I’m available, but all my empathy accounts are actually offline. Changing to busy, back to available, etc does not change my status in Empathy; unless I first start empathy’s contact list view. I know this is partly because Empathy/Telepathy are not yet ready to fully integrate IM into the core desktop.

My vision of Telepathy integration into the desktop, is that “Empathy” as an app does not really exist. We have views for different kind of IM informations (contact list, chats, file transfer, presence, account settings, etc). Those views are provided partly by empathy widgets, but also by gnome-shell itself (presence in me-menu, embedded chat). The views are apps started on-demand but are not THE im application. So empathy’s main window is (should) just a view of the contact list, it does not need to be running to be available on XMPP and receive IM messages.

I have great hopes for 3.2 :D

Embedded IM chats

This is totally awesome! I love it so much! My only concern is the empathy status icon still blinking even after I replied messages in the embedded chat. During the week I’ve almost never actually opened the empathy’s chat window, I’ve been always chatting in gnome-shell directly. If gnome-shell’s activities search could match my contacts names too and let start chat/call, I think I could even not need to see empathy’s UI at all.

non disturbing notifications

Thanks god for smartly hiding notifications, I’m spending much less time in liferea since I don’t see anymore when my RSS are refreshed. I also totally like the rhythmbox’s notification when changing song, that let you pause/skip easily without needing to open the rb window (I’m using multimedia keys most of the time though).

It could be improved a bit though, for example when a new IM message arrive when I was away, I don’t see any notification until I open that bottom panel.

The wow-effect

I think gnome-shell is a perfect balancing between modern OpenGL desktop, but still looking professional. When compiz started showing tones of technically impressive 3D effects, I’ve always though its nice, but not professional. Now gnome-shell succeed in take advantage of technology, but not over-using it.

Launchers

I though it would be worse, but still I’m missing my launchers for some apps. I’m used to open a lots of gnome-terminal everywhere, for example. I had launchers in my gnome-panel before. I’m getting used to keyboard shortcuts now, but still I miss them a bit. I wish the launcher bar in the activities view could be visible on my desktop, and smartly hide when a window is on the border, like the ubuntu unity.

multi desktop

This is also something I though it would be worse. But still I can’t get totally used to it. It should have a way to spin some desktops to they don’t get removed when empty. Since they are dynamically open/close, I sometimes get lost in my desktops, having the preview image when using ctr-alt-up/down could help I think.

Also I miss a direct way to switch desktop using the mouse. May I suggest having the desktop bar we see in activities visible on desktop too. Just like suggested for the launchers above, it would hide like it does for unity’s launcher bar.

The shutdown story

You’ll be surprised, but I personally don’t miss the shutdown option. I almost always suspend anyway. After important upgrades, ubuntu should add a reboot option there; is such distro extension possible? A tooltip or something could suggest ALT magic key to reboot/shutdown, though.

Google/Wikipedia

Wikipedia makes perfect sense for an Open project, but is GNOME paid (like Mozilla AFAIK) for that Google advertisement at least? Even Internet Explorer lets the choice.

Developer feeling

This is probably partly because I have less time to contribute to GNOME this year, but I feel its getting more difficult for developers not having full-time job working on GNOME to contribute. I see 2 main reasons for this:

  1. Gtk3 breakage: In previous cycles it was almost trivial to build Empathy master on latest stable Ubuntu release. Only a few telepathy packages were needed from a ppa. With this GNOME3 cycle, it was mostly impossible to even see what was being worked on. We had the choice between installing totally unstable distro (not even Ubuntu sadly) with a full GNOME3 desktop, or build the world with jhbuild, which I always considered (wrongly?) a pain to get stuff working.
  2. Decisions are more and more made by UX “experts” who knows better, and make their plan partly behind closed doors. I have to admit they did mostly an amazing work, but as user and occasional contributor, I feel I’ve lost my voice. I don’t think anymore I can change stuff that I don’t like in GNOME, not because of technical reasons, but because GNOME is now part of a bigger plan. This is probably a good thing for marketing, but makes the hacker in me sad.

Hopefully point 1 won’t be the case anymore for GNOME 3.1 cycle, and point 2 is maybe more a feeling than a reality and could surely be improved.

Importance of fallback mode

No, not everyone has OpenGL running just fine on linux yet, and no not only proprietary drivers are broken. Just 2 examples on my laptop with intel GPU:

  1. gnome-shell won’t startup in a VM using virt-manager
  2. Playing an OpenGL game with wine works just fine when I launch it from gnome2 desktop with metacity and not effect, but is terribly broken rendering when launch from gnome-shell.

My conclusion

GNOME3 is a good base for upcoming releases. Better than I’ve though before using it everyday, but still lots of place for improvement and not yet the perfect release I hoped. I only hope designers and main hackers will be flexible enough to let it involve to something that can make everyone happy, but still rigorous to keep a consistency. Hard task, really.

18 Responses to “One week with GNOME3”

  1. Stoffe says:

    The CTRL-DEL issue is really wierd, after all, that’s what a good and working trash is for if it’s too easy to slip on the DEL now and then… as it has been since long before it was practical to use the trash due to small drives and we all learned SHIFT-DEL instead. (I have since trained myself back to simple DEL, since that’s what makes sense).

  2. onox says:

    For launchers, you can use a dock like Awn. See https://edge.launchpad.net/~awn-testing/+archive/ppa

  3. xclaesse says:

    @Stoffe: Exactly. Especially since the trash now has the “restore” action to easily recover if a file is deleted by mistake. That feature is new since GNOME 2.something though.

    @onox: Right there are tones of launchers that could do the job, like awn or gnome-do. But here I wanted to use only “core” features. IMO if you need to install extra apps or plugins, it means the core is missing something.

  4. António says:

    I guess the “CTRL-DEL instead of DEL” change is a workaround for the following problem: a user, perhaps unaware of DEL being a shortcut for deleting a file, might inadvertently delete a file, eventualy without noticing it.

    In Windows, the workaround for that problem is the annoying “Are you sure?” dialog. But that is not a good solution either.

    I think the best solution would be displaying a notification “_______ is being moved to trash. [Cancel]” and then “_______ was moved to trash. [Undo]“. I think thats a much better solution because:

    1) You get a notification – so the file operation won’t be unnoticed.
    2) The notification is not intrusive – unlike the “Are you sure?” dialog.
    3) You get a way to cancel/undo the file operation.

    That is already the Gnome Shell behavior for adding and removing Apps form the “favorites” in the dash. That’s also what Gmail does.

    “Be considerate and forgiving
    It is better to offer to undo a mistake than to ask a user if they are “sure.””
    https://live.gnome.org/GnomeShell/Design/Principles

  5. Brian says:

    Shutdown (and rebooting) is available from GNOME SHELL. When you select the Me Menu and hold down the ALT button the ‘Suspend’ item becomes a ‘Power Off’ item, and when selected will display the shutdown window which gives you the choice of shutting down or rebooting.

  6. xclaesse says:

    @António: I like your idea of notification with undo, much better than undiscoverable and non standard CTR-DEL.

    @Brian: I know the trick, as said in that paragraph. However I think this is totally impossible to discover for normal users. The bare minimum would be a tooltip. But I don’t complain loudly on this because in my personal usage, suspend is what I do most of the time :)

  7. Brian says:

    Ah, misread your paragraph. Thought you were asking Ubuntu to add an ALT shutdown option. ;)

  8. Benjamin Otte says:

    Regarding the developer feeling paragraph, do you have an idea on how to improve the GTK3 story? I mean, when somebody is doing an unstable upgrade, they do want to change the API almost daily, so whatever is tracking that code will have problems.

    And GTK is rather easy to handle, as it doesn’t have lots of dependencies, and in this particular case did not have any dependencies you had to track apart from glib, so GTK itself was far from rebuilding the world. Of course, if you were tracking more GNOME libs, this didn’t hold, but as I said, I’m looking for ideas on how to handle it.

  9. xclaesse says:

    @Benjamin Otte: Usually when I wanted to work on Empathy 2.31.x, I had ubuntu with GNOME 2.30 stable release installed. Then I could build Empathy 2.31.x without the need to install anything more, or really not much. This is actually something we cared in empathy dev, to always depend on the last stable version of gtk and not last dev release. So the idea is that GNOME X+1 apps are relatively easy to build on a GNOME X version without the need to install tones of other GNOME X+1 libraries that would eventually break your distro. This makes dev much easier.

    The problem was particular for the Gtk3 migration, because building Empathy3 for example required installing Gtk3, and then lots of libs like canbera3, webkit3, etc. And all those libs were not always happy to install in parallel to the gtk2 version. So the only solution to hack on Empathy3 was to have an almost-full GNOME3 desktop.

    I don’t really have any solution for this, tbh. I just hope it won’t happen again any time soon. ;-)

  10. Mathias Hasselmann says:

    Solution for Empathy hacking: Maybe a virtual machine would work.

  11. xclaesse says:

    @Mathias: It solves indeed the problem to build the application, but then you can’t really use it because VM does not have proper OpenGL to run gnome-shell. See my point “Importance of fallback mode” :)

  12. liam says:

    Jhbuild?
    Nice idea about placing the tweak tool in control center.
    Also Nautilus has an option to enable delete with right click.

  13. Josh says:

    As far as the telepathy stuff goes… They have a way to go on even their I’m client (empathy), so its not super surprising that their gnome desktop integration isn’t ready yet.

    As far as the accessibility thing goes… You can’t see yourself needing to zoom in, make all text big, or change some of those other options when giving a presentation, demo, making a screen cast, or just doing something different? I don’t think the developers think you’re disabled.. I think they see that those options might be useful to other people too.

    Also, I’m not sure hoe up-to-date the ubuntu ppa is… But maybe give gnome shell a shot on a distro where its the default desktop environment, I know fedora keeps their stuff updated pretty well, you might have a different experience there. Try to keep an open mind

  14. xclaesse says:

    @liam: jhbuild is a tool to build all gnome modules from source. About delete, I’m not speaking about deleting directly the file, but move it to trash.

    @Josh: I’ve never needed that myself. There are bazillions of other actions everyone does everyday that could replace that disabled-people menu (shutdown button for example?). About Ubuntu, they have 3.0 packages for everything as far as I can tell, and they are mostly upstream packages since they didn’t port their crap to Gtk3 yet. Hopefully they will eventually realize it’s impossible to keep patching apps like they did. Ironically, their gnome3 ppa is by far more stable than unity :D

  15. Richard says:

    It’s nice to read good technical and design discussion on Planet GNOME again :D

    I’m hoping that instead of a notification telling use we can undo a potentially accidental delete, we’ll get a notification that lets us know “Ctrl Delete” will now do it instead. :)

    Thanks for creating all those bug reports!

  16. Ploum says:

    About the ctrl-del thing: I inadvertantly pressed shift-del a few times instead of ctrl-del.

    I really believe that it’s an highly dangerous move. It definitely should be reverted to the simple “del”

  17. aklapper says:

    > Also please rename those “universal access”

    What’s the bug ID? Seems like you missed it in the list…

  18. xclaesse says:

    @Ploum: I did not even know that shift-del existed, but indeed that seems risky. There is a confirmation dialog though.

    @aklapper: indeed forgot to report that one. Done now: https://bugzilla.gnome.org/show_bug.cgi?id=648669