elementary / initial-setup

New user setup app designed for elementary OS
https://elementary.io
GNU General Public License v3.0
36 stars 12 forks source link

Cannot create new user with non-latin keyboard layout #99

Closed PlatonB closed 2 years ago

PlatonB commented 3 years ago

Describe the bug The bug is widespread in non-Ubiquity and non-Anaconda installers. Unfortunately, it also affected elementary OS.

To Reproduce Steps to reproduce the behavior:

  1. Select the Cyrillic layout.
  2. Try to enter your login and password.
danirabbit commented 3 years ago

The Installer doesn't handle user creation which is what I'm assuming you mean by "login and password". Are you perhaps referring to initial setup which happens after you install and reboot?

MrPotatoBobx commented 3 years ago

With arabic, you can set "Full name" and password with non latin characters, but the user cannot be in arabic Is this some limitation with linux? image

MrPotatoBobx commented 3 years ago

The Installer doesn't handle user creation which is what I'm assuming you mean by "login and password". Are you perhaps referring to initial setup which happens after you install and reboot?

Im guessing it can also affect the encyrption section it only effects user creation, i think you should move this to https://github.com/elementary/initial-setup

davidmhewitt commented 3 years ago

So what happens with the disk encryption password? Is it valid/expected to create a disk encryption password with non-latin characters? And does that password work when booting and decrypting the disk?

I'm just checking whether there are two issues here. If not, we can move this to initial setup.

MrPotatoBobx commented 3 years ago

So what happens with the disk encryption password? Is it valid/expected to create a disk encryption password with non-latin characters? And does that password work when booting and decrypting the disk?

I'm just checking whether there are two issues here. If not, we can move this to initial setup.

  1. Yea you can put non Latin passwords in the drive encryption thing
  2. I'll have to reinstall to check that, please be a bit patient

I think it only effects the username part in user creation

MrPotatoBobx commented 3 years ago

Decrypts and boots up fine if the password has non latin characters

PlatonB commented 3 years ago

Yes, I forgot that creating username and password is now part of a separate program. But the bug is actual.

davidmhewitt commented 3 years ago

Thanks! Please open another issue for the installer if there is an issue with setting the disk decryption password with non-latin layouts. I've moved and renamed this issue into the initial setup repository now.

I'll have a look at the other bug reports you linked and see if we can find a way to solve this.

davidmhewitt commented 3 years ago

I've opened #100 which should help with this.

When you select a non-latin layout, an English (US) layout is also automatically added, and you can switch between that and the layout you selected. So you can enter your full name in Russian or Arabic for example, and then type your username and password with an English (US) layout.

It's still not perfect because every time you get to the login screen, it will default to the layout you were last using, which is probably your non-latin layout (when you want the latin one), and it would also be possible to delete the English (US) layout and lock yourself out. But I'll work on this too.

MrPotatoBobx commented 3 years ago

Its a nice idea but its more of a workaround, is it impossible for a Linux username to be non Latin?

davidmhewitt commented 3 years ago

Its a nice idea but its more of a workaround, is it impossible for a Linux username to be non Latin?

Yes: https://systemd.io/USER_NAMES/

MrPotatoBobx commented 3 years ago

That sucks, how do other installers, like anaconda and ubiquity handle it?

davidmhewitt commented 3 years ago

It looks like other installers add English + the non-latin layout you chose similar to what I'm proposing here. Take a look at the Linux Mint installer screenshot in the linked issue: https://gitlab.gnome.org/GNOME/gnome-initial-setup/-/issues/103

Even Windows does something similar and creates a 2nd English input profile when you select a non-latin keyboard layout.