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
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.
Yum is not officially supported upgrade mechanism thus -1 blocker + 1 nth
Are upgrades with FedUp affected by this or is it just yum upgrades?
Fixed upstream: http://cgit.freedesktop.org/systemd/systemd/commit/?id=6b2b6f30e38d67b032d6bdc6b47ae05e143e96c5
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?
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.
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.
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.
systemd-195-13.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/systemd-195-13.fc18
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).
Thank you!
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.
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.
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.