SRU: xorg.conf.d/90-zap.conf destroys xorg keyboard settings

Bug #1574789 reported by Alkis Georgopoulos on 2016-04-25
22
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Ubuntu MATE
High
Martin Wimpress 
ubuntu-mate-settings (Ubuntu)
High
Martin Wimpress 
Xenial
High
Unassigned

Bug Description

With Ubuntu MATE 16.04, I'm unable to switch between keyboard layouts properly.

My locale is LANG=el_GR.UTF-8 and LANGUAGE=el.
The Ubuntu MATE installer correctly made those settings for me:
$ grep -i xkboptions /etc/default/keyboard
XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"

I.e. I should be able to switch between the US and the Greek keyboard layout using Alt+Shift, and the keyboard scroll led indicates the active language.

Unfortunately ubuntu-mate-default-settings overrides the correct settings, making me unable to switch languages via Alt+Shift:

$ grep -i xkboptions /usr/share/X11/xorg.conf.d/90-zap.conf
    Option "XKbOptions" "terminate:ctrl_alt_bksp,grp"

So, please make sure that 90-zap.conf *adds* "terminate:ctrl_alt_bksp,grp" to the current xkboptions, instead of *replacing* them.
If it's unable to add instead of replacing settings, then please completely remove 90-zap.conf.

[Impact]

 * Ubuntu MATE included the ability to kill the X server using Ctrl+Alt+BkSpc over a year ago while the initial Compiz integration was being added. That facility is a hangover and no longer required.

 * This updated version of Ubuntu MATE Settings removes usr/share/X11/xorg.conf.d/90-zap.conf and restores the ability to switch keyboard layouts using Alt+Shift.

[Test Cases]

 * Install Ubuntu MATE 16.04 using Greek language and locale and US language. You will be unable to switch between the US and the Greek keyboard layout using Alt+Shift.

 * Once Ubuntu MATE Settings 16.04.5.3 is installed it will be possible to switch between keyboard layouts using Alt+Shift.

[Regression Potential]

 * The ability to kill the X session using Ctrl+Alt+BkSpc will be lost. But none of the other Ubuntu flavours support this functionality and it's removal restore the default Xorg behaviour.

Alkis Georgopoulos (alkisg) wrote :

Another way to define a keyboard combination to terminate the X server, that doesn't destroy users' XKBOptions, is to define this in the livecd ubuntu-mate seeds:
keyboard-configuration keyboard-configuration/ctrl_alt_bksp boolean true

Although I don't think that this should be flavor specific, I vote that 90-zap.conf be completely dropped.

90-zap.conf is a hangover from when I was adding the inital Compiz support to Ubuntu MATE over a year ago. It is no longer required, this functionality doesn't exist in other Ubuntu flavours and (as you describe) breaks functionality for some locales.

I'll file an SRU to drop 90-zap.conf from ubuntu-mate.settings.

Changed in ubuntu-mate-settings (Ubuntu):
status: New → In Progress
assignee: nobody → Martin Wimpress (flexiondotorg)
Changed in ubuntu-mate:
importance: Undecided → High
status: New → Triaged
assignee: nobody → Martin Wimpress (flexiondotorg)
Changed in ubuntu-mate-settings (Ubuntu):
status: In Progress → Fix Committed
Changed in ubuntu-mate:
status: Triaged → Fix Committed

Hello Alkis, or anyone else affected,

Accepted ubuntu-mate-settings into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-mate-settings/16.04.5.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

description: updated
Changed in ubuntu-mate-settings (Ubuntu Xenial):
status: New → Fix Committed
tags: added: verification-needed

I think that the committed fix has a bad side-effect:
http://launchpadlibrarian.net/257669273/ubuntu-mate-settings_16.04.5_16.04.5.1.diff.gz

Note the line that reads:
+rm_conffile /usr/share/X11/xorg.conf.d/90-zap.conf 16.04.5

This file is not a conffile and shouldn't be handled as a conffile.

Now, when upgrading to the proposed package, I got this warning:
> Obsolete conffile /usr/share/X11/xorg.conf.d/90-zap.conf has been modified by you.
> Saving as /usr/share/X11/xorg.conf.d/90-zap.conf.dpkg-bak ...

I never modified that file though, so a .dpkg-bak file shouldn't be left on my disk.

@flexiondotorg, could you please reupload without that rm_conffile line?

The 90-zap.conf file will properly get deleted by dpkg on upgrade since it's not a conffile, so there's no need to handle it specially...

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-mate-settings - 16.10.0

---------------
ubuntu-mate-settings (16.10.0) yakkety; urgency=medium

  * Do not automatically start Tilda.
  * Migrate to LibreOffice Tango icons.
  * Hide Compton desktop icon when running MATE.

 -- Martin Wimpress <email address hidden> Tue, 17 May 2016 22:57:48 +0100

Changed in ubuntu-mate-settings (Ubuntu):
status: Fix Committed → Fix Released
tags: added: verification-done
removed: verification-needed
Martin Pitt (pitti) wrote :

> +rm_conffile /usr/share/X11/xorg.conf.d/90-zap.conf 16.04.5

Indeed, this is wrong and should be dropped. Marking as v-failed, please reupload without this.

tags: added: verification-failed
removed: verification-done
Changed in ubuntu-mate-settings (Ubuntu):
status: Fix Released → In Progress
Changed in ubuntu-mate-settings (Ubuntu Xenial):
status: Fix Committed → In Progress
Mathew Hodson (mhodson) on 2016-07-04
Changed in ubuntu-mate-settings (Ubuntu):
importance: Undecided → High
Changed in ubuntu-mate-settings (Ubuntu Xenial):
importance: Undecided → High
Changed in ubuntu-mate-settings (Ubuntu):
milestone: none → ubuntu-16.04.1
Changed in ubuntu-mate-settings (Ubuntu Xenial):
milestone: none → ubuntu-16.04.1

As discussed in LP: #1577706 this SRU is now being tracked in this bug only. ubuntu-mate-settings 16.04.5.3 has just been uploaded to address the issue reported.

description: updated
summary: - xorg.conf.d/90-zap.conf destroys xorg keyboard settings
+ SRU: xorg.conf.d/90-zap.conf destroys xorg keyboard settings
Martin Pitt (pitti) wrote :

The xenial update was not verified in three months, this still has not been fixed in yakkety. I'll remove this SRU next week if there isn't any progress here as this seem stuck.

Changed in ubuntu-mate-settings (Ubuntu):
milestone: ubuntu-16.04.1 → none
Changed in ubuntu-mate-settings (Ubuntu):
status: In Progress → Fix Released

Hello Alkis, or anyone else affected,

Accepted ubuntu-mate-settings into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-mate-settings/16.04.5.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubuntu-mate-settings (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: removed: verification-failed
tags: added: verification-needed

This was fixed in ubuntu-mate-settings 16.10.1 for Yakkety.

tags: added: verification-done
removed: verification-needed
Alkis Georgopoulos (alkisg) wrote :

I too confirm that ubuntu-mate-default-settings 16.04.5.3 indeed solves the reported issues in Ubuntu 16.04.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-mate-settings - 16.04.5.3

---------------
ubuntu-mate-settings (16.04.5.3) xenial; urgency=medium

  * Re-upload. Closes (LP: #1574789)

 -- Martin Wimpress <email address hidden> Sun, 03 Jul 2016 09:31:54 +0100

Changed in ubuntu-mate-settings (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for ubuntu-mate-settings has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Changed in ubuntu-mate:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers