let's try to update gsd to the current unstable version

Bug #931656 reported by Sebastien Bacher
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gnome-settings-daemon (Ubuntu)
Fix Released
Wishlist
Sebastien Bacher

Bug Description

We choosed to be conservative by default this cycle and that was a good move, we are getting close from feature freeze though so it's a good time to re-evaluate new versions to see what the ratio fixes,possibly problematic changes are and what to do.

The options are basically:
- stay with what we have
- look at backporting the upstream fixes we want
- take the new version and revert risky changes
- take the new version and deal with transitions

I've been looking at gsd for a while and I think we would benefit from upgrading with some selected changes reverted

Revision history for this message
Sebastien Bacher (seb128) wrote :

The list of commits in the update (one line by commit, basically the titles), the list is approximative because stable and unstable evolved differently for some time so it's not a perfect match on our version

we have 350 commits, half of those are for translation updates and wacom (which is basically new code so not going to make a difference on what we run current)

Changed in gnome-settings-daemon (Ubuntu):
importance: Undecided → Wishlist
status: New → Confirmed
Revision history for this message
Sebastien Bacher (seb128) wrote :

The upstream diff between 3.2.2 and 3.3.5 without autotools, translations, etc

Revision history for this message
Sebastien Bacher (seb128) wrote :

The diffstat for the package to package update (patches applied, autotools, translation debian dir filtered out)

Some of the main offender there are:

> plugins/common/eggaccelerators.c | 678 ----

the key parsing is done using gtk rather than copied egg code, that's a win

> plugins/keybindings/gsd-keybindings-manager.c | 748 ----

the keybindings plugin is deprecated and has been dropped (the keys are handled by the media-keys one)

> plugins/wacom/gsd-wacom-device.c | 1532 ++++++++++
> plugins/wacom/gsd-wacom-device.h | 157 +
> plugins/wacom/gsd-wacom-manager.c | 642 ++--

wacom, lot of new code but it's a separate .so and handling used for wacom hardware users

> plugins/xrandr/gsd-xrandr-manager.c | 629 ++--

quite some diff but it's work to better handle dock stations and I wanted to backport that work anyway for the lts

> plugins/datetime/gsd-datetime-mechanism-fedora.c | 209 -
> plugins/datetime/gsd-datetime-mechanism-fedora.h | 31
> plugins/datetime/gsd-datetime-mechanism-suse.c | 187 -
> plugins/datetime/gsd-datetime-mechanism-suse.h | 32

don't keep methods for other distros we don't need them (simply a distro patch)

Revision history for this message
Sebastien Bacher (seb128) wrote :

The corresponding debdiff

Revision history for this message
Sebastien Bacher (seb128) wrote :

Changelog for the new version:

  * New upstream version, refreshed patches,
    thanks Jeremy Bicha for starting the work on the new version
  * debian/control.in:
    - build-depends on libwacom
    - updated gtk, gnome-desktop3, g-d-s, upower requirements
  * debian/gnome-settings-daemon.gsettings-override:
    - don't set deprecated "sleep-inactive-battery" key
  * debian/patches/90_set_gmenus_xsettings.patch:
    - refreshed, we don't handle gnome-shell xsettings yet because we still
      ship 3.2, that patch will need an update if we go for the new version
  * debian/patches/git_gsettings_write_only_when_required.patch;
    debian/patches/50_add_dell_backlight.patch:
    - dropped the fix is in the new version
  * debian/patches/revert_git_datetime_dropping.patch:
    - revert the datetime service dropping, ubuntu-system-service doesn't
      implement the timedated interfaces
  * debian/patches/revert_git_dropping_gconf_wrapper.patch:
    - revert the gconf code dropping, we might still need the settings
      gateway for the lts (though it's a bit hackish)
  * debian/patches/revert_git_use_gsetting_keybindings.patch:
    - revert the keybindings switch to gsettings, compiz is not ready,
      it's likely possible to update the patch to do either according to
      the session in use at runtime if somebody wants to work on that
  * debian/patches/revert_git_a11y_gsettings.patch:
    - similar to the previous one
  * debian/patches/revert_git_stop_using_gconf.patch:
    - don't stop using gconf, the other patches listed before need it
  * debian/rules:
    - don't use -Bsymbolic-functions to workaround upstream issues
    - drop deprecated --enable-pulse option

it explains the reverted changes, I will upload that version to the ubuntu-desktop ppa for testing

Revision history for this message
Sebastien Bacher (seb128) wrote :

Ok, code pushed to lp:~ubuntu-desktop/gnome-settings-daemon/unstable

test build uploaded to the ubuntu-desktop ppa for testing (it requires the current unity-greeter from precise as well)

let me know how it goes, things work fine here

Revision history for this message
Martin Pitt (pitti) wrote :

For the record, I have run the g-s-d in the ubuntu-desktop PPA for a day. I explicitly tested multi-monitor, different xrandr settings in control-center, multiple keyboard layouts, screen locking, etc., all is working well.

One thing that regressed is that clicking on "wacom" in control-center crashes immediately. But that seems easy enough to fix (at worst we don't show it, it's a new feature anyway).

So +1 from me.

Changed in gnome-settings-daemon (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Sebastien Bacher (seb128)
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-settings-daemon - 3.3.5-0ubuntu1

---------------
gnome-settings-daemon (3.3.5-0ubuntu1) precise; urgency=low

  * New upstream version (lp: #931656), refreshed patches,
    thanks Jeremy Bicha for starting the work on the new version:
    - change the sound level by device (lp: #340720)
    - correctly unassign keybindings (lp: #515670)
    - define keybinding to take a screenshot of a selection (lp: #625518)
    - resolve some segfaults (lp: #865286)
  * debian/control.in:
    - build-depends on libgudev-1.0-dev
    - breaks unity-greeter (<< 0.2.1-0ubuntu1) due to the wacom schema rename
    - build-depends on libwacom
    - updated gtk, gnome-desktop3, g-d-s, upower requirements
  * debian/gnome-settings-daemon.gsettings-override:
    - don't set deprecated "sleep-inactive-battery" key
  * debian/patches/90_set_gmenus_xsettings.patch:
    - refreshed, we don't handle gnome-shell xsettings yet because we still
      ship 3.2, that patch will need an update if we go for the new version
  * debian/patches/git_gsettings_write_only_when_required.patch;
    debian/patches/50_add_dell_backlight.patch:
    - dropped the fix is in the new version
  * debian/patches/47_delay_pa_connect_to_idle.patch:
    - commented, will need to be updated if still needed
  * debian/patches/revert_git_datetime_dropping.patch:
    - revert the datetime service dropping, ubuntu-system-service doesn't
      implement the timedated interfaces
  * debian/patches/revert_git_dropping_gconf_wrapper.patch:
    - revert the gconf code dropping, we might still need the settings
      gateway for the lts (though it's a bit hackish)
  * debian/patches/revert_git_use_gsetting_keybindings.patch:
    - revert the keybindings switch to gsettings, compiz is not ready,
      it's likely possible to update the patch to do either according to
      the session in use at runtime if somebody wants to work on that
  * debian/patches/revert_git_a11y_gsettings.patch:
    - similar to the previous one
  * debian/patches/revert_git_stop_using_gconf.patch:
    - don't stop using gconf, the other patches listed before need it
  * debian/rules:
    - don't use -Bsymbolic-functions to workaround upstream issues
    - drop deprecated --enable-pulse option
    - use --disable-systemd
  * debian/watch:
    - watch for .xz
 -- Sebastien Bacher <email address hidden> Wed, 15 Feb 2012 11:41:52 +0100

Changed in gnome-settings-daemon (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.