As a long time professional Linux desktop user (since 2000 or so) I have used numerous desktop environments over the years. Initially Gnome1, then KDE2, then Gnome2 for a long time.

With the advent of Unity and Gnome 3.x, the distro vendors primary focus has understandably switched to supporting the future instead of maintaining the past. I will not go into the discussion whether this has happened too fast, or just fast enough.

Upgrading from the last Ubuntu that supported Gnome 2, I chose to try Unity, found out that it wasn’t for me (dual 1600×1200 monitor setup, multi workspace setup), then tried my luck with KDE (which I parted with around KDE3), and ended up with “Gnome Classic”. Now, after several issues in the process towards Precise Pangolin, I finally jumped ship to Fedora 16, and in that process tried to make the modern Gnome 3 work for me.

I will update this post as I make additional modifications, keeping it as a reference for my own use. Let me know in the comments if you have tips or suggestions.

Here are the adjustments and addons I have found, that improve the out-of-the-box Gnome 3 experience:

Prerequisites

In Fedora, ensure you have the following packages :

gnome-shell-extension-places-menu gnome-shell-extension-auto-move-windows gnome-shell-extension-alternative-status-menu gnome-shell-extension-pidgin gnome-shell-extension-remove-bluetooth-icon gnome-shell-extension-systemMonitor gnome-shell-extension-user-theme gnome-shell-extension-workspace-indicator gnome-shell-extension-remove-accessibility-icon gnome-shell-extension-apps-menu gnome-shell-theme-atolm gnome-tweak-tool

The very nice System Monitor shell extension is not packaged, but is easily installed from git:

https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet/tree/gnome-3.2

I had little luck installing it into ~/.local/share/gnome-shell/extensions, but installing it globally under_ /usr/local/share/gnome-shell/extensions/_ worked fine.

Most of the settings and extensions mentioned below are enabled through gnome-tweak-tool (listed as “Advanced Settings in the Gnome launcher).

Shell extensions

  • Workspace Indicator (re-enables a workspace indicator in the “tasktray”)
  • Pidgin IM Integration (improves the usability of Pidgin under Gnome 3, not as good as it used to be in Gnome 2 but still ..)
  • Remove Accessibility Icon (with the agressive removal of useful indicators in G3 it surprises me how much unnecessary stuff is default enabled)
  • Applications Menu (mostly improves the “familiar feeling”, I don’t really use this much)
  • System Monitor (visual, ever present system monitor, even looks pretty good)
  • Remove Bluetooth Icon (I don’t use BT on my desktop, so this is totally redundant)
  • Places Status Indicator (re-enables quick access to folders in the file browser)
  • User Themes (let’s the user configure Gnome Theme settings)

Theme

I kept most of the defaults, but found that using the “Atolm” Shell Theme made me feel more at home (it makes Gnome 3 look a lot more like Gnome 2 in earlier Ubuntu’s..). I also enabled “Menus Have Icons” and “Buttons Have Icons”. Cursor, Icon, GTK+ and Window themes were kept to their default settings.

Tweaks

In gconf-editor (aka “Configuration Editor” in the launcher) I modified these keys :

  • /desktop/gnome/shell/windows/workspaces_only_on_primary – False  (This makes my dual monitor setup work as I want it and disables the second screen from being a “sticky” workspace)
  • /desktop/gnome/shell/windows/button_layout – close,minimize,maximize:menu (My other OS of choice is OSX, and this makes the transition between them smoother)

Update for Gnome Shell 3.4

Settings that were previously in gconf are now migrated to dconf:

  • org.gnome.shell.overrides : workspaces-only-on-primary – False
  • org.gnome.shell.overrides : button-layout – close,minimize,maximize:menu
  • org.gnome.shell.overrides : attach-modal-dialogs – False (this detaches popupdialogs from their parent window)