Control: severity -1 important This really should be fixed ASAP, and also in stretch.
Hi, Samuel Thibault <[email protected]> (2017-04-04): > [email protected], on sam. 01 avril 2017 16:17:00 +0000, wrote: > > The installation was a standard one with encrypted LLVM and the French > > keyboard layout selected. The installation ended successfully. When > > booting, the French keyboard layout was used to type the passphrase to > > unlock the disk and the password to login. > > After login, the keyboard layout is QWERTY instead of the French layout, > > I can confirm the bug: I just installed with default options except > french language (and thus France country and french keyboard layout) > (no real need for LVM encrypted volume), and let it install the > gnome desktop. > > The installed system does have /etc/default/keyboard containing > > XKBMODEL="pc105" > XKBLAYOUT="fr" > XKBVARIANT="latin9" > XKBOPTIONS="" > > BACKSPACE="guess" > > The keyboard icon in the top right corner does propose between en and > fr, but it defaults to en... Setting it to fr for the user fixes it for > the user, but each new user gets the en default. > > Setting XKBVARIANT to "" instead of "latin9" does get fr enabled by > default, but gnome should not require that: there are quite a few > languages for which we do want to use the non-default variant, for > various reasons. gdm3 seems to be just fine (tried to type a user name there, and I was getting the default French layout there), so I've looked into gnome-shell, which seems to toy with XkbInfo, exposed by libgnome-desktop. Looking at libgnome-desktop/gnome-xkb-info.c in src:gnome-desktop3, what you mentioned about the variant changing things might be connected to this part of the add_layout_to_locale_tables() function: | lang_codes = layout->iso639Ids; | country_codes = layout->iso3166Ids; | | if (layout->is_variant) | { | if (!lang_codes) | lang_codes = layout->main_layout->iso639Ids; | if (!country_codes) | country_codes = layout->main_layout->iso3166Ids; | } So depending on the is_variant flag, we get overriden values for {lang,country}_codes, looking at a layout->main_layout instead of just layout? I haven't double checked this by inserting some gdb or print statements though. KiBi.
signature.asc
Description: Digital signature

