fedora-silverblue / issue-tracker

Fedora Silverblue issue tracker
https://fedoraproject.org/atomic-desktops/silverblue/
123 stars 3 forks source link

How do I change the Luks passphrase screen Keyboard language setting? #608

Closed universish closed 1 month ago

universish commented 1 month ago

Password misspelling problem with physical keyboard with Turkish keypad after lvm luks encrypted installation with Fedora silverblue, vmware. Luks screen keyboard language setting is english (en), so there is a character misspelling problem. Characters assigned to keys do not match. This problem occurs because the physical keyboard is recognized as an English keyboard, i.e. it thinks my keyboard is an English physical keyboard. The character written on the keys is not the same as the character written in the box. It does not match. Therefore, it gives a password error because the characters are different in the entered Lux password. Since we cannot see the characters typed in the box, we cannot understand whether we are typing correctly or not because the **** characters that come for security reasons appear instead of the characters. Therefore, we cannot understand that the password was entered incorrectly. We misunderstand and think that we can't remember the password and typed it incorrectly, or that we saved the password incorrectly when we saved it. We don't know that it is the keyboard settings, so we look for the problem elsewhere. That's why I want to change the keyboard language settings on the luks screen. I want to set it to my local language, Turkish, so that the language setting will match my Turkish physical keyboard and the keypad characters will match, so that I can enter the correct characters. This must be a problem that happens to all physical local keyboard users. Solution: I wonder how to change the language setting of the luks screen keyboard?

The problem is not with the virtual machine. It also happens when installed on pc with clean install. The problem is with the luxury interfaces of all distributions.

My thread on fedora discussion about this topic:

https://discussion.fedoraproject.org/t/fedora-silverblue-not-unlocking-password-after-lvm-luks-encrypted-installation-with-vmware/133692
universish commented 1 month ago

For Turkish physical keyboard users; a table showing the characters that the keypad matches with English characters:

tr-keypad's button --->  English character  
 |   Shift + tr-keypad's button ---> English character  
 |   Alt Gr + tr-keypad's button  --->  (no) English character :
-------------------------------------------------------------------------
q  --->  q      |  Shift +  Q  --->  Q    |   Alt Gr +  @   -------
w  --->  w      |  Shift +  W  --->  W    |   Alt Gr + (w)  ------- 
e  --->  e      |  Shift +  E  --->  E    |   Alt Gr +  €   -------
r  --->  r      |  Shift +  R  --->  R    |   Alt Gr + (r)  -------
t  --->  t      |  Shift +  T  --->  T    |   Alt Gr +  ₺   -------
y  --->  y      |  Shift +  Y  --->  Y    |   Alt Gr + (y)  -------
u  --->  u      |  Shift +  U  --->  U    |   Alt Gr + (u)  ------- 
ı  --->  i      |  Shift +  I  --->  I    |   Alt Gr +  i   -------
o  --->  o      |  Shift +  O  --->  O    |   Alt Gr + (o)  -------  
p  --->  p      |  Shift +  P  --->  P    |   Alt Gr + (p)  ------- 
ğ  --->  [      |  Shift +  Ğ  --->  {    |   Alt Gr +  ¨   -------
ü  --->  ]      |  Shift +  Ü  --->  }    |   Alt Gr +  ~   -------
-------------------------------------------------------------------------
a  --->  a      |  Shift +  A  --->  A    |   Alt Gr +  æ   ------- 
s  --->  s      |  Shift +  S  --->  S    |   Alt Gr +  ß   -------
d  --->  d      |  Shift +  D  --->  D    |   Alt Gr + (d)  -------
f  --->  f      |  Shift +  F  --->  F    |   Alt Gr + (f)  -------
g  --->  g      |  Shift +  G  --->  G    |   Alt Gr + (g)  -------  
h  --->  h      |  Shift +  H  --->  H    |   Alt Gr + (h)  -------
j  --->  j      |  Shift +  J  --->  J    |   Alt Gr + (j)  -------
k  --->  k      |  Shift +  K  --->  K    |   Alt Gr + (k)  -------  
l  --->  l      |  Shift +  L  --->  L    |   Alt Gr + (l)  -------
ş  --->  ;      |  Shift +  Ş  --->  :    |   Alt Gr +  ´   -------
i  --->  '      |  Shift +  İ  --->  "    |   Alt Gr + (i)  -------
---  ------  ------  ------  ------  ------  ------  ------  ------  ----
,  --->  \      |  Shift +  ;  --->  |    |   Alt Gr +  `   ------- 
-------------------------------------------------------------------------
<  --->  \      |  Shift +  >  --->  |    |   Alt Gr +  |   ------- 
z  --->  z      |  Shift +  Z  --->  Z    |   Alt Gr + (z)  -------
x  --->  x      |  Shift +  X  --->  X    |   Alt Gr + (x)  -------
c  --->  c      |  Shift +  C  --->  C    |   Alt Gr + (c)  -------
v  --->  v      |  Shift +  V  --->  V    |   Alt Gr + (v)  -------
b  --->  b      |  Shift +  B  --->  B    |   Alt Gr + (b)  -------
n  --->  n      |  Shift +  N  --->  N    |   Alt Gr + (n)  -------
m  --->  m      |  Shift +  M  --->  M    |   Alt Gr + (m)  -------  
ö  --->  ,      |  Shift +  Ö  --->  <    |   Alt Gr + (ö)  -------
ç  --->  .      |  Shift +  Ç  --->  >    |   Alt Gr + (ç)  -------
.  --->  /      |  Shift +  :  --->  ?    |   Alt Gr + (.)  -------
-------------------------------------------------------------------------
"  --->  `      |  Shift +  é  --->  ~    |   Alt Gr +  <   -------  
1  --->  1      |  Shift +  !  --->  !    |   Alt Gr +  >   -------
2  --->  2      |  Shift +  '  --->  @    |   Alt Gr +  £   ------- 
3  --->  3      |  Shift +  ^  --->  #    |   Alt Gr +  #   -------
4  --->  4      |  Shift +  +  --->  $    |   Alt Gr +  $   -------
5  --->  5      |  Shift +  %  --->  %    |   Alt Gr +  ½   ------- 
6  --->  6      |  Shift +  &  --->  ^    |   Alt Gr + (6)  -------
7  --->  7      |  Shift +  /  --->  &    |   Alt Gr +  {   -------
8  --->  8      |  Shift +  (  --->  *    |   Alt Gr +  [   -------
9  --->  9      |  Shift +  )  --->  (    |   Alt Gr +  ]   -------
0  --->  0      |  Shift +  =  --->  )    |   Alt Gr +  }   -------
*  --->  -      |  Shift +  ?  --->  _    |   Alt Gr +  \   -------
-  --->  =      |  Shift +  _  --->  +    |   Alt Gr +  |   -------
-------------------------------------------------------------------------
numeric buttons: 
/  --->  /      |  Shift +  /  --->  /    |   Alt Gr + (/)  -------
*  --->  *      |  Shift +  *  --->  *    |   Alt Gr + (*)  -------  
-  --->  -      |  Shift +  -  --->  -    |   Alt Gr + (-)  -------
7  --->  7      |  Shift + (7) -------    |   Alt Gr + (7)  -------  
8  --->  8      |  Shift + (8) -------    |   Alt Gr + (8)  -------
9  --->  9      |  Shift + (9) -------    |   Alt Gr + (9)  -------
+  --->  +      |  Shift +  +  --->  +    |   Alt Gr + (+)  -------
4  --->  4      |  Shift + (4) -------    |   Alt Gr + (4)  -------
5  --->  5      |  Shift + (5) -------    |   Alt Gr + (5)  -------
6  --->  6      |  Shift + (6) -------    |   Alt Gr + (6)  -------
1  --->  1      |  Shift + (1) -------    |   Alt Gr + (1)  -------
2  --->  2      |  Shift + (2) -------    |   Alt Gr + (2)  -------
3  --->  3      |  Shift + (3) -------    |   Alt Gr + (3)  -------
0  --->  0      |  Shift + (0) -------    |   Alt Gr + (0)  -------
,  --->  .      |  Shift + (,) -------    |   Alt Gr + (,)  -------
universish commented 1 month ago

There is no information about changing the language setting in the link you mentioned. The exact solution to the problem is possible by changing the language setting. However, according to the document, the solution to the problem “if they manage to get into the system” is to set the keyboard layout to en-US, then change the password to en-US keyboard layout with the new password.

https://docs.fedoraproject.org/en-US/fedora-silverblue/installation/#known-limitations

This is, as you can appreciate, not a definitive solution, but a partial one. What if there is a user who doesn’t understand or doesn’t know what is causing the problem, then he/she will think that he/she is at fault, that he/she entered the wrong characters during luks passphrase registration, that he/she saved the password differently than he/she had in mind, or that he/she entered missing characters. He will try to delete it and reformat it. So there is no definitive solution to the problem. But the solution is to learn the English character that corresponds to the character written on the keys on the keypads on the physical keyboard. This way you can type your password correctly by entering the correct characters, so you can log in to the system. Then you can change your system keyboard setting to en-US in “Settings” and change your luks passphrase by entering the code from the document. This will prevent you from entering your password incorrectly, as the luks screen will be opened with the en-US keyboard at every startup. After changing your passphrase, don’t forget to set your keyboard layout to your local keyboard settings in “Settings”.

Also, if your physical keyboard is a keyboard with a Turkish keypad, please review the English characters corresponding to the physical keys so that you can type your password correctly. See here:

For other fedora users and GNU/linux distros or GNU/linux libre distros users who have this problem and use a tr-keypad physical keyboard, I am writing down which English character the physical keys correspond to: https://github.com/fedora-silverblue/issue-tracker/issues/608#issuecomment-2417031737

If your physical keyboard has a different language-specific keypad, please set your keyboard language setting or keyboard layout to en-US on another computer to learn the corresponding English characters that correspond to your keypad.

LorbusChris commented 1 month ago

I think this is a known limitation: https://docs.fedoraproject.org/en-US/fedora-silverblue/installation/#known-limitations

Edit: Oh, it seems you found that while I had this issue open.

travier commented 1 month ago

Duplicate of https://github.com/fedora-silverblue/issue-tracker/issues/3