Bug 882212 - localectl set-x11-keymap: variant settings does not work
localectl set-x11-keymap: variant settings does not work
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: systemd (Show other bugs)
18
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Michal Schmidt
Fedora Extras Quality Assurance
AcceptedNTH
:
Depends On:
Blocks: F18Blocker/F18FinalBlocker F18-accepted/F18FinalFreezeExcept 881624
  Show dependency treegraph
 
Reported: 2012-11-30 07:10 EST by Jan Vcelak
Modified: 2013-03-03 20:30 EST (History)
13 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-12-22 23:37:07 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Jan Vcelak 2012-11-30 07:10:52 EST
Description of problem:

There is an error when 'localectl set-x11-keymap' is invoked with parameters to set an alternative keyboard variant. The keyboard setting is not set and there is a segfault.

Version-Release number of selected component (if applicable):
systemd-195-8.fc18.x86_64

How reproducible:
always


Steps to Reproduce:
1. localectl set-x11-keymap cz pc105 qwerty
2.
3.
  
Actual results:
process 7484: arguments to dbus_message_iter_append_basic() were incorrect, assertion "_dbus_check_is_valid_utf8 (*string_p)" failed in file dbus-message.c line 2598.
This is normally a bug in some application using the D-Bus library.
  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)


Expected results:
X11 keyboard configuration is set correctly.


Additional info:

It works fine without specifying the layout variant:
localectl set-x11-keymap cz pc105
Comment 1 Jan Vcelak 2012-11-30 07:15:15 EST
Keyboard layout setting process changed between F17 and F18. This becomes critical for people upgrading using yum as I did. (Not sure how the migration to new configuration files is handled with other upgrade methods.)

Therefore proposing as a blocker.
Comment 2 Jóhann B. Guðmundsson 2012-11-30 08:33:29 EST
Yum is not officially supported upgrade mechanism thus -1 blocker + 1 nth
Comment 3 Tim Flink 2012-11-30 15:32:31 EST
Are upgrades with FedUp affected by this or is it just yum upgrades?
Comment 5 Jan Vcelak 2012-12-19 06:20:43 EST
I can confirm that the fix is correct.

Here is a scratch build with the patch applied:
https://koji.fedoraproject.org/koji/taskinfo?taskID=4802262

Any chance this can be included in final F18?
Comment 6 Tim Flink 2012-12-19 11:55:47 EST
Yeah, this like it would be ok for NTH (able to pull fix past freeze but wouldn't block F18 release) without testing the FedUp case.

Proposing as NTH, if you could get a build submitted soon for testing, that would be great.
Comment 7 Adam Williamson 2012-12-19 13:18:36 EST
Discussed at 2012-12-19 blocker review meeting: http://meetbot.fedoraproject.org/fedora-bugzappers/2012-12-19/f18final-blocker-review-6.2012-12-19-17.02.log.txt . We're not clear on the impact on fedup upgrades, but accepted NTH at least for the yum case.
Comment 8 Jan Vcelak 2012-12-20 07:49:27 EST
Adam, this has no impact at fedup (at the moment), because fedup does not care about keyboard layout. There is an existing bug #881624 for that, I just nominated it as a blocker.
Comment 9 Fedora Update System 2012-12-20 10:44:38 EST
systemd-195-13.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/systemd-195-13.fc18
Comment 10 Fedora Update System 2012-12-20 20:25:39 EST
Package systemd-195-13.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing systemd-195-13.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-20718/systemd-195-13.fc18
then log in and leave karma (feedback).
Comment 11 Jan Vcelak 2012-12-21 04:03:13 EST
Thank you!
Comment 12 Adam Williamson 2012-12-21 16:11:29 EST
Discussed again at 2012-12-21 blocker review meeting: http://meetbot.fedoraproject.org/fedora-bugzappers/2012-12-21/f18final-blocker-review-7.2012-12-21-18.33.log.txt . We were very unclear on how this actually affects upgrades. systemd %post does not call localectl or systemd-localed in any way to perform the config migration: it simply sources /etc/sysconfig/keyboard and dumps what it finds into /etc/vconsole.conf:

# Migrate /etc/sysconfig/keyboard
if [ -e /etc/sysconfig/keyboard -a ! -e /etc/vconsole.conf ]; then
        unset SYSFONT
        unset SYSFONTACM
        unset UNIMAP
        unset KEYMAP
        [ -e /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n >/dev/null 2>&1 || :
        . /etc/sysconfig/keyboard >/dev/null 2>&1 || :
        [ -n "$SYSFONT" ] && echo FONT=$SYSFONT > /etc/vconsole.conf 2>&1 || :
        [ -n "$SYSFONTACM" ] && echo FONT_MAP=$SYSFONTACM >> /etc/vconsole.conf 2>&1 || :
        [ -n "$UNIMAP" ] && echo FONT_UNIMAP=$UNIMAP >> /etc/vconsole.conf 2>&1 || :
        [ -n "$KEYTABLE" ] && echo KEYMAP=$KEYTABLE >> /etc/vconsole.conf 2>&1 || :

The bug report doesn't explain sufficiently how this actually causes problems on upgrade, and we couldn't figure out how ourselves. So we couldn't really accept it as a blocker. However, it's already accepted as NTH, and should be pulled into the next compose and pushed through the freeze, so it ought to go away either way.
Comment 13 Jan Vcelak 2012-12-22 13:14:51 EST
This currently doesn't affect the upgrade.

I updated one of my machines with "yum distro-sync" and my X11 keyboard layout got lost. That's the reason why I care about working 'localectl set-x11-keymap' and why I nominated it as a blocker. It's fine as NTH.

Then I tried the upgrade using Fedup on my laptop. The result was the same, X11 keyboard layout was dropped. I thought this was a problem of Fedup, but obviously this should be handled by systemd, no matter how. So here is a bug for systemd:
https://bugzilla.redhat.com/show_bug.cgi?id=889699

And sorry for the confusion, I'm getting lost in what is responsible for what.
Comment 14 Fedora Update System 2012-12-22 23:37:11 EST
systemd-195-13.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.