No fallback English layout on "Who are you?" screen during installation. Ubiquity won't accept non-Latin characters

Bug #1942774 reported by Akbarkhon Variskhanov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
subiquity
Triaged
High
Unassigned
ubuntu-desktop-installer
New
Undecided
Unassigned
ubiquity (Ubuntu)
New
Undecided
Unassigned

Bug Description

Impish Indri daily

I cannot reproduce this bug anymore. Layout is hard-set to English, which solves this issue but creates another issue discussed in bug #1945848. Still, I'll leave the steps required to reproduce below:

Steps to reproduce:
1) Choose any language with a character set outside of ISO 8859-1. In my case, Russian
2) Proceed with installation. Arrive at "Who are you?" screen
3) Type in your name in Russian layout
    - The "Your username" field is not filled automatically
5) Try typing a username you wish to use
    - It cannot recognize the characters and won't let you continue.
    - It will thus complain that usernames should begin with lowercase letters

No matter if the letters are lower or upper case, it simply cannot recognize them.

User is forced to manually add English or a similar layout that has Latin characters.

ProblemType: Bug
DistroRelease: Ubuntu 21.10
Package: ubiquity 21.10.5
ProcVersionSignature: Ubuntu 5.13.0-14.14-generic 5.13.1
Uname: Linux 5.13.0-14-generic x86_64
NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
ApportVersion: 2.20.11-0ubuntu68
Architecture: amd64
CasperMD5CheckResult: pass
CasperVersion: 1.465
CurrentDesktop: ubuntu:GNOME
Date: Mon Sep 6 17:37:52 2021
InstallCmdLine: BOOT_IMAGE=/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed maybe-ubiquity quiet splash ---
LiveMediaBuild: Ubuntu 21.10 "Impish Indri" - Alpha amd64 (20210905)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=ru_RU.UTF-8
 SHELL=/bin/bash
SourcePackage: ubiquity
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Akbarkhon Variskhanov (kbar) wrote :
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1942774

tags: added: iso-testing
Revision history for this message
Akbarkhon Variskhanov (kbar) wrote :

I cannot reproduce this bug anymore. Layout is hard-set to English, which solves this issue but creates another issue discussed in bug #1945848

description: updated
Revision history for this message
Akbarkhon Variskhanov (kbar) wrote (last edit ):

This behavior appeared again on today's daily build: Ubuntu Desktop amd64 20211008.1

It prevents creating a new user.

Either all characters from all sets need to be accepted or this page should fallback to English layout by default (possibly warning the user).

summary: - No fallback English layout on "Who are you?" screen during installation
+ No fallback English layout on "Who are you?" screen during installation.
+ Ubiquity doesn't accept non-Latin characters
summary: No fallback English layout on "Who are you?" screen during installation.
- Ubiquity doesn't accept non-Latin characters
+ Ubiquity won't accept non-Latin characters
Revision history for this message
Adam Williamson (awilliamson) wrote :

I can confirm this with Ubuntu 23.04.

I'm the QA team lead for Fedora, and I am possibly excessively interested in keyboard layout stuff. While fixing things for Fedora's new install flow I wanted to look into how other distros handle this, so I started testing, and ran straight into this issue.

As originally described, if you boot Ubuntu 23.04 - the 'desktop' installer image - select to install, then select a non-ASCII-capable keyboard layout like Russian or Bulgarian (either by specifically selecting it, or by selecting a language whose default keyboard is one of these, like...Russian or Bulgarian), *only* that (xkb) layout is configured. This makes it impossible to complete the install, because you cannot enter a username that the installer will accept as valid. You can only complete the install if you break out of the installer and run GNOME Settings and add an ASCII-capable layout yourself.

The way we aim to handle this on Fedora is that if you select a layout that is not ASCII-capable, we add 'us' to the xkb config. Based on user feedback in https://bugzilla.redhat.com/show_bug.cgi?id=1039185 , we make us the *first* layout and the native layout the *second*, because users told us this is what they expect, and it makes sense: usually during installers you need to type Latin (ASCII) characters, not native ones, as you generally want user names, passwords, mount points etc. to be in Latin characters (stuff tends to break otherwise). Similarly on boot of the system, you are more likely to need to type Latin than native characters, so the US layout should be first. We set up both a clickable switcher and a switch key combo to select the native layout, if desired, and show an indicator of the current layout.

Fedora's implementation of this is based on langtable - https://github.com/mike-fabian/langtable - which contains information on whether keyboard layouts are ASCII-capable or not.

The other tricky part here, btw, is selecting an appropriate *console* (kbd) layout. I haven't yet looked into how Ubuntu approaches that.

Dan Bungert (dbungert)
Changed in subiquity:
status: New → Triaged
importance: Undecided → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.