Merge lp:~mniess/ubuntu/trusty/ibus/fix-lp1240198 into lp:ubuntu/trusty/ibus

Proposed by Matthias Niess
Status: Needs review
Proposed branch: lp:~mniess/ubuntu/trusty/ibus/fix-lp1240198
Merge into: lp:ubuntu/trusty/ibus
Diff against target: 48 lines (+28/-0)
3 files modified
debian/changelog (+8/-0)
debian/patches/ibus-use-system-keyboard.patch (+19/-0)
debian/patches/series (+1/-0)
To merge this branch: bzr merge lp:~mniess/ubuntu/trusty/ibus/fix-lp1240198
Reviewer Review Type Date Requested Status
Jamie Strandboge Needs Fixing
Aron Xu (community) Approve
Review via email: mp+223651@code.launchpad.net

Description of the change

This fixes the bug of randomly changing keyboard layouts (LP: #1240198)

To post a comment you must log in.
Revision history for this message
Aron Xu (happyaron) wrote :

Same here, the files added need to be installed in Makefile.

review: Needs Fixing
Revision history for this message
Matthias Niess (mniess) wrote :

> Same here, the files added need to be installed in Makefile.

There was only one file added to debian/patches which should not need to be added to the Makefile.

Revision history for this message
Aron Xu (happyaron) wrote :

OK, yes.

review: Approve
Revision history for this message
Jamie Strandboge (jdstrand) wrote :

At first glance, this seems ok, however, I have two questions:
 1. is this something suitable for upstreaming and if so, has it been upstreamed to ibus or Debian? I think I can see why it would not be, but it would be good to have someone explicitly comment
 2. the patch is against trusty, but per SRU policies (https://wiki.ubuntu.com/StableReleaseUpdates) it must first be applied to the development release and then applied to a stable release. Can you adjust the packaging and test that it works ok in utopic?

review: Needs Fixing
Revision history for this message
Matthias Niess (mniess) wrote :

> At first glance, this seems ok, however, I have two questions:
> 1. is this something suitable for upstreaming and if so, has it been
> upstreamed to ibus or Debian? I think I can see why it would not be, but it
> would be good to have someone explicitly comment

I'm pretty sure this is related to the way Ubuntu uses ibus (which also leads to custom keyboard shortcuts not working) so I would say this is not suitable for upstreaming.

> 2. the patch is against trusty, but per SRU policies
> (https://wiki.ubuntu.com/StableReleaseUpdates) it must first be applied to the
> development release and then applied to a stable release. Can you adjust the
> packaging and test that it works ok in utopic?

I currently have no machine to put utopic on so I cannot test this. I just wanted to help out get this resolved quickly and have this ready for 14.04.2 as it is a huge problem for non-english users. This is especially bad for corporate users who rely on Ubuntu for their work. It is only one dconf setting that was changed in 13.10 and immediately lead to the issue. It should have never made it into 14.04 but it did.

Revision history for this message
Bruno Nova (brunonova) wrote :

@Matthias, you could install Utopic on a virtual machine (like Virtualbox) and test the patch in there.
(I'm not an Ubuntu developer.)

Revision history for this message
Matthias Niess (mniess) wrote :

> @Matthias, you could install Utopic on a virtual machine (like Virtualbox) and
> test the patch in there.
> (I'm not an Ubuntu developer.)

Will do this weekend!

Revision history for this message
Bruno Nova (brunonova) wrote :

I tried to test this in Utopic, but every time I run debuild, the file data/dconf/00-upstream-settings is deleted, then patch fails because that file doesn't exist.

It seems data/dconf/00-upstream-settings is generated by data/dconf/make-dconf-override-db.sh, which reads the default values from data/dconf/org.freedesktop.ibus.gschema.xml.in.
Patching that file seems to generate the desired data/dconf/00-upstream-settings.

@Matthias, do you want to work on this?

Revision history for this message
Matthias Niess (mniess) wrote :

@Bruno sorry I didn't get to it, yet. As utopic is released the whole thing needs to be based on vivid (15.04) now, right? My time-consuming day job prevented me from installing anything but trusty on my machines until now.

So the only thing really is changing the default for "use-system-keyboard-layout" back to the old default (true).

I would love to work on this but I cannot promise I'll find the time to install vivid soon, to test it there.

Revision history for this message
Bruno Nova (brunonova) wrote :

@Matthias, the development branch of the package will still be the same in Vivid as it was in Utopic: lp:ubuntu/ibus.

I'll work on this then, either today or next Monday.
Setting the "use-system-keyboard-layout" to true is indeed the solution to this problem.
I did that in my laptop using "ibus-setup" and I never had any problems again, and I also haven't noticed any regressions.

Revision history for this message
Bruno Nova (brunonova) wrote :

Editing data/dconf/org.freedesktop.ibus.gschema.xml.in to set use-system-keyboard-layout to true does indeed work in making that dconf variable default to true, which would solve the issue.

But, after compiling the package and installing it using "dpkg -i", running ibus-setup fails, printing:

    (ibus-setup:2680): GLib-GIO-ERROR **: Settings schema 'org.freedesktop.ibus.general.xkblayoutconfig' is not installed

    Trace/breakpoint trap (core dumped)

I have no idea why. I doubt this small change is causing this error.
Also, I tested this in Utopic, since Vivid wouldn't boot in Virtualbox.
I'm going to provide this change as a patch in the bug report.

And I'm not sure that this bug affect Utopic (fresh installs).
/desktop/ibus/general/preload-engines=['xkb:us::eng', 'xkb:pt::por'] in my Trusty laptop, but in Utopic virtual machine was ['xkb:pt::por'].

Unmerged revisions

50. By Matthias Niess

added dep-3 headers

49. By Matthias Niess

* debian/patches/ibus-use-system-keyboard.patch:
  - change dconf default of use-system-keyboard-layout to true
    (LP: #1240198)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2014-03-19 14:08:29 +0000
3+++ debian/changelog 2014-06-18 21:49:52 +0000
4@@ -1,3 +1,11 @@
5+ibus (1.5.5-1ubuntu4) trusty; urgency=medium
6+
7+ * debian/patches/ibus-use-system-keyboard.patch:
8+ - change dconf default of use-system-keyboard-layout to true
9+ (LP: #1240198)
10+
11+ -- Matthias Niess <mniess@gmail.com> Wed, 18 Jun 2014 23:36:45 +0200
12+
13 ibus (1.5.5-1ubuntu3) trusty; urgency=medium
14
15 * debian/patches/ubuntu-forward-panel-properties.patch:
16
17=== added file 'debian/patches/ibus-use-system-keyboard.patch'
18--- debian/patches/ibus-use-system-keyboard.patch 1970-01-01 00:00:00 +0000
19+++ debian/patches/ibus-use-system-keyboard.patch 2014-06-18 21:49:52 +0000
20@@ -0,0 +1,19 @@
21+Description: change dconf default setting that caused keyboard
22+ layouts to be randomly reset to US english
23+Author: Matthias Niess
24+Origin: https://bugs.launchpad.net/ubuntu/+source/indicator-keyboard/+bug/1240198/comments/19
25+Ubuntu-Bug: https://bugs.launchpad.net/ubuntu/+source/indicator-keyboard/+bug/1240198
26+
27+Index: fix-lp1240198/data/dconf/00-upstream-settings
28+===================================================================
29+--- fix-lp1240198.orig/data/dconf/00-upstream-settings 2014-06-18 23:32:39.031968000 +0200
30++++ fix-lp1240198/data/dconf/00-upstream-settings 2014-06-18 23:36:40.875127516 +0200
31+@@ -14,7 +14,7 @@
32+ preload-engines=@as []
33+ switcher-delay-time=400
34+ use-global-engine=true
35+-use-system-keyboard-layout=false
36++use-system-keyboard-layout=true
37+ version=''
38+
39+ [desktop/ibus/general/hotkey]
40
41=== modified file 'debian/patches/series'
42--- debian/patches/series 2014-03-19 14:08:29 +0000
43+++ debian/patches/series 2014-06-18 21:49:52 +0000
44@@ -99,3 +99,4 @@
45 03_dont_run_dconf_update.patch
46 ubuntu-disable-trigger.patch
47 ubuntu-forward-panel-properties.patch
48+ibus-use-system-keyboard.patch

Subscribers

People subscribed via source and target branches