Bug 859867 - Keyboard not set in minimal install
Keyboard not set in minimal install
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: anaconda (Show other bugs)
18
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Vratislav Podzimek
Fedora Extras Quality Assurance
: Reopened
Depends On:
Blocks: F18Blocker/F18FinalBlocker
  Show dependency treegraph
 
Reported: 2012-09-24 04:48 EDT by Stef Walter
Modified: 2012-12-21 14:43 EST (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 869233 (view as bug list)
Environment:
Last Closed: 2012-12-21 14:43:21 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 Stef Walter 2012-09-24 04:48:41 EDT
Description of problem:

Run an install with the new Fedora 18-Alpha installer. Select a non-standard keyboard, for example Dvorak. Install a minimal install, without a Desktop Environment.

After completing the install the correct keyboard map is not configured at terminal when logging in from a VT.

Version-Release number of selected component (if applicable):

Fedora 18-Alpha

How reproducible:

Every time.
Comment 1 Stef Walter 2012-09-24 05:27:26 EDT
Also not set in many other software set installs. /etc/sysconfig/keyboard is blank.
Comment 2 Vratislav Podzimek 2012-09-24 07:01:57 EDT
(In reply to comment #0)
> Description of problem:
> 
> Run an install with the new Fedora 18-Alpha installer. Select a non-standard
> keyboard, for example Dvorak. Install a minimal install, without a Desktop
> Environment.
> 
> After completing the install the correct keyboard map is not configured at
> terminal when logging in from a VT.
Please see bug #837292 for the reason why this is not yet possible.
Comment 3 Vratislav Podzimek 2012-10-09 05:00:04 EDT
Patches for using systemd-localed to convert X layout to VConsole keymap have been posted to anaconda-patches list. Once they are pushed it will be up to systemd-localed to do the conversion right.
Comment 4 Vratislav Podzimek 2012-10-12 10:18:23 EDT
(In reply to comment #3)
> Patches for using systemd-localed to convert X layout to VConsole keymap
> have been posted to anaconda-patches list. Once they are pushed it will be
> up to systemd-localed to do the conversion right.

Pushed.
Comment 5 Marcos Mello 2012-10-21 09:13:12 EDT
It's working now (F18 Beta TC6). After a minimal install, /etc/vconsole.conf has KEYMAP="br-abnt2" as expected.

Related, the kernel's default console font doesn't have latin characters. Since systemd 194, it doesn't load by default latarcyrheb-sun16 anymore [1]. I need to add FONT="latarcyrheb-sun16" to /etc/vconsole.conf.

[1] http://lists.freedesktop.org/archives/systemd-devel/2012-October/006817.html
Comment 6 Adam Williamson 2012-11-22 21:36:05 EST
This bug looks to have been fixed for several anaconda builds now but missed being closed. If you find you are still experiencing it with Fedora 18 Beta (RC1) or later, please re-open the bug.
Comment 7 Karel Volný 2012-12-18 11:33:35 EST
(In reply to comment #6)
> This bug looks to have been fixed for several anaconda builds now but missed
> being closed. If you find you are still experiencing it with Fedora 18 Beta
> (RC1) or later, please re-open the bug.

I just did a fresh install yesterday - anaconda.log says "/sbin/anaconda 18.37.2" - and I still see this bug

/etc/vconsole.conf has
KEYMAP="us"

despite the fact that the layout configured during installation was cz-qwerty

note also that it is missing the font specification (bug #869233)
Comment 8 Adam Williamson 2012-12-18 17:50:46 EST
So far as I can tell, lsatenstein seems to be also complaining about this in https://bugzilla.redhat.com/show_bug.cgi?id=866887 . I feel like there's another report for this as well, but I'm not sure. Proposing as a blocker, failure to set the console keymap is a serious problem. This might be a regression - it got fixed, then got broken again?
Comment 9 Adam Williamson 2012-12-18 18:09:06 EST
I can't seem to confirm this. I just tried two installs of F18 final TC3 with French keymap - both by picking French on the first page and checking the checkbox, and by picking English on the first page but manually going to the keyboard config page, adding a French layout, and moving it to the top - and on both installs, /etc/vconsole.conf said KEYMAP="fr" and the console keymap was indeed French. Can people check with TC3 and if they can still reproduce this, give exact reproduction steps? Thanks!
Comment 10 Vratislav Podzimek 2012-12-19 05:08:06 EST
I've just tried installation with Czech layout only and I got

KEYMAP="cz-lat2"

in /etc/vconsole.conf as expected. VConsole keymap during installation (e.g. when you switch to tty2) is a different issue. I'm not sure there is a bug for it.
Comment 11 Karel Volný 2012-12-19 10:37:47 EST
ok, so let's try to walk through the install in Czech:

1. $ qemu-img create -f qcow2 F18.qcow2 10G
2. $ qemu-kvm -m 1024 -cdrom bfo.iso -boot d F18.qcow2
3. choose Pre-release => Fedora-18-Branched-x86_64
4. choose "Čeština (Česká republika)"
5. click "Pokračovat"
6. click "Přijímám svůj osud."
7. choose "DATUM & ČAS"
8. pull "Čas ze sítě" to "OFF"
9. click "Hotovo"
10. choose "KLÁVESNICE"
11. choose "Czech"
12. click "^"
13. click "Hotovo"
14. choose "VÝBĚR PROGRAMŮ"
15. choose "Minimal Install"
16. click "Hotovo"
17. choose "CÍL INSTALACE"
18. click "Pokračovat"
19. click "Pokračovat"
20. click "Začít instalaci"
21. wait
22. choose "HESLO SPRÁVCE"
23. enter & re-enter the password
24. click "Hotovo"
25. click "Dokončit konfiguraci"
26. click "Restart"
27. choose Local boot
28. log in as root
29. # cat /etc/vconsole.conf
KEYMAP="cz-lat2"
30. try to type something

kaboom, you can't get Czech (non-ascii) characters ...

but this is another bug, a problem of systemd I guess ...?

however, going through the install steps again, I see what I have done wrong at the first try - I've omitted step 12, so cz is configured as a secondary layout, and we seem not to support layout switching on console, boohoo :-(

it seems this can be closed again as PEBKAC, but ... could I append a RFE here that would make step 12 unnecessary - to make the language-specific layout primary automatically?
Comment 12 Karel Volný 2012-12-19 10:47:49 EST
(In reply to comment #11)
> it seems this can be closed again as PEBKAC, but ... could I append a RFE
> here that would make step 12 unnecessary - to make the language-specific
> layout primary automatically?

ah, now I've finally read *and understood* the referenced bug #866887 and this is the point of that one

as we can see, the "solution" for bug #866887 simply does not work, hm :-(
Comment 13 Adam Williamson 2012-12-19 13:24:40 EST
It did in my test. If I check the checkbox that was added to 'fix' 866887, I get that layout in vconsole.conf. Don't rely on anything lsatenstein said, verify for yourself. I still can't find anything broken here. Can anyone else?
Comment 14 Adam Williamson 2012-12-19 20:28:28 EST
Hum. Well I just tried another test using "French (French (Canada))" as the keyboard layout and it doesn't work right. Testing just the way I did for "French (French)", I did the install in English, added the keyboard layout in Keyboard spoke, moved it to the top with ^, then completed the install. The completed spoke shows "French (French (Canada))", the install completes, but after reboot, I have US keyboard layout at the console, and vconsole.conf says KEYMAP="us".

Just double-checked this: tested French (French (Canada)) again and got failure again, tested French (French) again and got success. Same procedure followed in both cases.

So it seems this works for *some* layouts and not for others. Are the Czech testers who are getting different results using different Czech layout variants?
Comment 15 Vratislav Podzimek 2012-12-21 04:37:05 EST
(In reply to comment #11)
> ok, so let's try to walk through the install in Czech:
> 
> 1. $ qemu-img create -f qcow2 F18.qcow2 10G
> 2. $ qemu-kvm -m 1024 -cdrom bfo.iso -boot d F18.qcow2
> 3. choose Pre-release => Fedora-18-Branched-x86_64
> 4. choose "Čeština (Česká republika)"
> 5. click "Pokračovat"
> 6. click "Přijímám svůj osud."
> 7. choose "DATUM & ČAS"
> 8. pull "Čas ze sítě" to "OFF"
> 9. click "Hotovo"
> 10. choose "KLÁVESNICE"
> 11. choose "Czech"
> 12. click "^"
> 13. click "Hotovo"
> 14. choose "VÝBĚR PROGRAMŮ"
> 15. choose "Minimal Install"
> 16. click "Hotovo"
> 17. choose "CÍL INSTALACE"
> 18. click "Pokračovat"
> 19. click "Pokračovat"
> 20. click "Začít instalaci"
> 21. wait
> 22. choose "HESLO SPRÁVCE"
> 23. enter & re-enter the password
> 24. click "Hotovo"
> 25. click "Dokončit konfiguraci"
> 26. click "Restart"
> 27. choose Local boot
> 28. log in as root
> 29. # cat /etc/vconsole.conf
> KEYMAP="cz-lat2"
> 30. try to type something
> 
> kaboom, you can't get Czech (non-ascii) characters ...
The problem is that keymap 'cz-lat2' doesn't work as a 'cz' until you hit the PauseBreak key. 'cz-lat2' is suggested by systemd-localed as the "matching keymap" for 'cz' X layout.
Comment 16 Vratislav Podzimek 2012-12-21 05:50:40 EST
(In reply to comment #14)
> Hum. Well I just tried another test using "French (French (Canada))" as the
> keyboard layout and it doesn't work right. Testing just the way I did for
> "French (French)", I did the install in English, added the keyboard layout
> in Keyboard spoke, moved it to the top with ^, then completed the install.
> The completed spoke shows "French (French (Canada))", the install completes,
> but after reboot, I have US keyboard layout at the console, and
> vconsole.conf says KEYMAP="us".
> 
> Just double-checked this: tested French (French (Canada)) again and got
> failure again, tested French (French) again and got success. Same procedure
> followed in both cases.
> 
> So it seems this works for *some* layouts and not for others. Are the Czech
> testers who are getting different results using different Czech layout
> variants?
The problem here is that for the 'ca' X layout ("French (French (Canada))") systemd-localed doesn't set matching VConsole keymap when asked to. Thus Anaconda can't get the matching VConsole keymap from systemd-localed and defaults to 'us'. "French (French)" ('fr') works as expected because systemd-localed converts it correctly to the 'fr' VConsole keymap.

There is nothing Anaconda can do about this. It is a separate systemd(-localed) bug.
Comment 17 Adam Williamson 2012-12-21 12:59:43 EST
vpodzime: So now what worries me is this. In https://bugzilla.redhat.com/show_bug.cgi?id=875567#c9 you said:

"It is not a blocker because it affects only some installations -- with a LUKS password set using an X layout different from 'us' which has matching VConsole keymap correctly provided by systemd-localed (there are not much of them)"

I read that as meaning there are not a lot of layouts which have a keymap provided by systemd-localed, and all the ones that didn't already work.

If in fact the truth is that there are not a lot of layouts which have a keymap provided by systemd-localed, and all the ones that didn't are *broken*, isn't that rather a big problem?

Do we have a handy list of what keyboard layouts are going to suffer from this?

I'll file a new bug and redirect discussion there.
Comment 18 Adam Williamson 2012-12-21 13:04:29 EST
Filed https://bugzilla.redhat.com/show_bug.cgi?id=889562 .
Comment 19 Vratislav Podzimek 2012-12-21 13:59:50 EST
(In reply to comment #17)
> vpodzime: So now what worries me is this. In
> https://bugzilla.redhat.com/show_bug.cgi?id=875567#c9 you said:
> 
> "It is not a blocker because it affects only some installations -- with a
> LUKS password set using an X layout different from 'us' which has matching
> VConsole keymap correctly provided by systemd-localed (there are not much of
> them)"
> 
> I read that as meaning there are not a lot of layouts which have a keymap
> provided by systemd-localed, and all the ones that didn't already work.
> 
> If in fact the truth is that there are not a lot of layouts which have a
> keymap provided by systemd-localed, and all the ones that didn't are
> *broken*, isn't that rather a big problem?
> 
> Do we have a handy list of what keyboard layouts are going to suffer from
> this?
There is no such list, maybe systemd guys can provide better info. Please see https://bugzilla.redhat.com/show_bug.cgi?id=889562#c3 for some additional info.
Comment 20 Adam Williamson 2012-12-21 14:43:21 EST
I'm pretty sure we can close this now. This bug was for the fact that there was no kind of attempt to write the console keyboard config. That is definitely now fixed. I believe outstanding issues are all separate bugs.

cz-lat2 may not be the most sensible mapping for Czech: that should be filed against systemd-localed with a suggestion for a better 'default' Czech layout.

I believe the French Canadian case and the cz-qwerty case from comment #7 are both 889562, though I don't know how you check for sure whether or not systemd-localed has a mapping for a given X layout (it's probably something with localectl). I guess the cz-qwerty case could also be a pebkac in omitting the ^ button press on the keymap spoke. Either way, I don't think it's a reason to keep this bug open.

Please track remaining issues in separate bugs. Thanks. Can someone file a bug for the cz-lat2 thing?

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