Updating GNOME to 3.8

Registered by Sebastien Bacher

We should list the work needed to update to 3.8 next cycle and the known blockers/issues to resolve.

Note that we will require all the patches to be updated and known regressions to be fixed before upload to avoid issues we had this cycle (things landed and nobody cared about addressing known issues during the rest of the cycle)

Blueprint information

Not started
Sebastien Bacher
Needs approval
Series goal:
Milestone target:

Related branches



Work is ongoing in the GNOME3 ppas:


* DONE - gtk 3.8: (Prerequisite for most of the remaining GNOME 3.8 packages)
- DONE - overlay scrollbars work only once LP: #1174927 (fixed in 3.8.2)
- DONE - Unreadable text in Software Center's left sidebar LP: #1173611 (this was a gtk bug, fix will be in 3.8.2, have cherrypicked patch for ppa)
- DONE - White screen when PrintScreen button is pressed LP: #1137907 (fixed in 3.8.1)
- Software Center crashes LP: #1163886

* DONE - gnome-menus
- Now there's a new Sundry category for stuff GNOME thinks is deprecated or shouldn't be as visible.

 * DONE - gnome-bluetooth
 - Drops fallback applet (we don't need it)
 - Drops nautilus-sendto plugin (reverted in Ubuntu)

* DONE - gnome-session LP: #1185873

- Now includes UOA integration

* ibus 1.5:
- INPROGRESS - We need an indicator-keyboard https://launchpad.net/indicator-keyboard
- check status of "by win keymap" and the bugs that made Debian decide to go back to the old version

* NEW QUEUE - mozjs17 - Noticably improves GNOME Shell's responsiveness.
It's unlikely that all of the mozjs rdepends will be ported to the new API this cycle
so we need to have a separate source package (LP: #1113166)

* DONE - pango 1.34.0 / harfbuzz / fontconfig 2.10.92
- https://bugzilla.redhat.com/show_bug.cgi?id=946859 / https://bugzilla.mozilla.org/show_bug.cgi?id=857922

* DONE - new poppler:
- soname change, need somebody to sponsor the transition (LP: #1135995)

* WebKit 2.0.3 (LP: #1186558)
- Packaged in GNOME3 PPA, the amd64 build took a very large number of retries to build without timing out.
- Needs a MIR for libwebp (LP: #1186553)
- WebKit2 libraries are built by default (and used by devhelp and epiphany-webkit2)

* gnome-panel & related "deprecated" pieces
- Should mostly work with a few bugs even though it's unmaintained:

* DONE - Zeitgeist-2.0 0.9.14
- Needs review and sponsoring LP: #1155968

* DONE - gnome-desktop3
- LP: #1184812
- soname bump
- g-s-d/g-c-c require minor patches
- Except for that, the other rdepends will probably be fine

* Ported to the new appmenu:
- DONE - evince
- DONE - gedit
- DONE - rhythmbox (the UI is a bit unusual)
- DONE - devhelp (note https://bugzilla.gnome.org/695101 )

* DONE - Empathy
- Make sure UOA works correctly. I believe that check was what has so far kept the other social components (folks, evolution, gnome-contacts) from being pushed from Staging to the regular GNOME3 PPA

* DONE - Gedit
- 3.8.1 needs libzeitgeist2 zeitgeist 0.9.9 or higher. The Dashboard plugin needs it too or it won't work.

* Nautilus (LP: #1130746)
- DONE - 16_unity_new_documents.patch isn't sufficient to bring the right-click New Document menu item back
- INPROGRESS - Unity/Compiz really needs to handle drawing the desktop itself (when Nautilus doesn't). See Adam's notes at LP: #1159430

* nautilus-sendto
3.8 drops support for everything except sending files via email. We probably should stay with 3.6.

* gnome-terminal:
- Ported to gsettings, possibility for regressions. How well are existing settings preserved on upgrade?
- Need to figure out the vte.sh sourcing issue (otherwise new tabs won't keep the current working directory) LP: #1132700
   - Will probably require changes to how /etc/bash.bashrc works (it needs to source the vte script); asked doko to look at that
- No longer possible to have translucent backgrounds (but we don't do that by default anyway)

* vino:
- Make sure that the new notifications work correctly with Unity

* gnome-disk-utility:
- requires libdvdread which is in universe (needs a MIR) (https://git.gnome.org/browse/gnome-disk-utility/commit/?id=cb3afaea9c2f61a736871a4881945fb746c8c1ff)
- needs gnome-settings-daemon 3.8 too

* DONE - gucharmap:
- Can be synced from Debian, but unicode-data needs to be in main first

More Discussion

* 3.10 stack components (glib, g-i, gvfs):
- not decided yet, let's land the GNOME 3.8 libraries first and wait to know a bit more of what is on the roadmap for the next cycle


- External panels work
- OnlyShowIn works
- VPN plugins work https://bugzilla.gnome.org/698215
- GNOME Language panel can now install additional languages, which is good because the 3.8 language panel is very different from previous versions
- accountsservice was updated. LP: #1190137

- Upgrade to activity-log-manager 0.9.6 LP: #1189253
- Copy Screen Lock settings (moved to GNOME's Privacy panel) to Privacy. LP: #1189313
- Consider simplifying the Ubuntu logo patch so that we don't have to wait on Design every cycle and to simplify backporting. LP: #1181442
- symbol conflicts between gnome datetime panel and libtimezonemap (LP: #1187981)
- systemd-services should probably recommend libnss-myhostname LP: #1162478
- modemmanager needs to be updated. LP: #1123302
- ibus 1.5 / missing indicator-keyboard
- GNOME Language panel doesn't handle multiple preferred languages https://bugzilla.gnome.org/664723 (is this important enough to block on? - jbicha)
- Enable removing languages (not directly supported by PackageKit)
* Disabled patches:
   - 10_keyboard_layout_on_unity.patch: (layout panel from 3.6 is gone, will need to patch back the old panel if this is wanted)
   - 59_install_gcm_components_on_demand.patch (do we really need this? it saves like 5MB space)
   - 60_ubuntu_nav_bar.patch: Obsolete?
   - 99_add_lock-on-suspend.patch
   - revert_new_ibus_keyboard_use.patch
   - sound_nua_panel.patch (is this still needed? functionality is largely the same with upstream sound panel)

- mpt doesn't like the new list box UI
- name changed to "Settings"; mpt prefers the "System Settings" name. If the name is changed for the GNOME session too, we should think about patching gnome-shell to match.

* The Sharing panel is useful although it was designed for a Red Hat style of handling services. With that model, services are not automatically run when installed, which allows those distros to include openssh-server by default. It's assumed that distros will install all the useful services by default.
- By default Ubuntu will get Screen Sharing (basically replacing vino-preferences) and Bluetooth Sharing (for computers with bluetooth)
- If someone adds PackageKit integration, perhaps Media Sharing (rygel) and Remote Login (openssh-server) could be enabled.
- However, the code currently requires systemd for the ssh "Remote Login" panel.
- Personal File Sharing is the frontend for gnome-user-share now but since it's just webdav sharing, this section is unusable in Ubuntu where gnome-user-share doesn't come with apache2. We could patch to hide sections like this.

Currently, we're showing Sharing in Unity but not (GNOME) Privacy.

- Except for ibus / missing indicator-keyboard and gnome-control-center being ready, g-s-d should be ready now.
- DONE - require logind to land
- DONE - figure details of locking (see https://bugzilla.gnome.org/show_bug.cgi?id=691202 "power: Drop explicit screen locking on suspend", moving to gnome-shell) - was fixed in gnome-screensaver.
- DONE - Check whether media-keys/notifications changes affect Unity (The keygrabber was moved into gnome-shell, notifications patch applies ok with a refresh)
- Things that have been removed that Unity uses:
   - DONE - Screenshots https://bugzilla.gnome.org/show_bug.cgi?id=681844
   - DONE - Automount helper https://bugzilla.gnome.org/show_bug.cgi?id=682859
* Disabled patches from 3.6 that need work:
    - 48_register_client_before_idle_callbacks.patch (I don't think this needed anymore)
    - revert_new_ibus_use.patch


Work Items