Cannot type tilde (~) character in GNOME password prompt

Ever since I installed OpenSuse Tumbleweed, I am not able to type the tilde character ~ in any GNOME password prompt. In all other contexts, such as in the terminal and in graphical applications, it works as expected. My workaround is to use the onscreen keyboard and enter the character that way, but it would be great to solve this once and for all.

I am using the Swedish keyboard layout on a Thinkpad T480. I have installed OpenSuse Tumbleweed with the Gnome Desktop Environment.

Do you have some tips to troubleshoot/solve the problem or do you think this is a bug and should be reported?

And did you configure that in the system?

Yes, I have set my keyboard layout in GNOME to Swedish and I have also the English and German layouts. I tried and using both English and German layouts I can type the tilde character using their respective key combinations. Only the Swedish keyboard misbehaves and only in GNOME password prompts such as the login screen or when executing a command requiring root privileges.

Here is a screenshot of my GNOME keyboard layouts configuration screen:

Login screen does not run as your user and your user’s settings do not apply there. Show the output of

localectl

Thanks for the suggestion. I get the following:

$ localectl
System Locale: LANG=sv_SE.UTF-8
               LC_NUMERIC=en_GB.UTF-8
               LC_TIME=en_GB.UTF-8
               LC_MONETARY=en_GB.UTF-8
               LC_PAPER=en_GB.UTF-8
               LC_MEASUREMENT=en_GB.UTF-8
    VC Keymap: se
   X11 Layout: se
    X11 Model: microsoftpro
  X11 Options: terminate:ctrl_alt_bksp

As said by @arvidjaar , those processes are root owned. That is why I asked if you configured it is the system. Not in someone’s personal Desktop Environment.

What display manager are you using?

No, I did not say it.

Well, you “hinted”. Very important difference?
And it was not said, but typed.

I thought I am using GDM, but I am not entirely sure from this output:

$ cat /etc/sysconfig/displaymanager
## Path:	Desktop/Display manager
## Description:	settings to generate a proper displaymanager config
## Type:	yesno
## Default:	no
#
# Allow remote access (XDMCP) to your display manager (xdm/kdm/gdm). Please note
# that a modified kdm or xdm configuration, e.g. by KDE control center
# will not be changed. For gdm, values will be updated after change.
# XDMCP service should run only on trusted networks and you have to disable
# firewall for interfaces, where you want to provide this service.
#
DISPLAYMANAGER_REMOTE_ACCESS="no"

## Type:	yesno
## Default:	no
#
# Allow remote access of the user root to your display manager. Note
# that root can never login if DISPLAYMANAGER_SHUTDOWN is "auto" and
# System/Security/Permissions/PERMISSION_SECURITY is "paranoid"
#
DISPLAYMANAGER_ROOT_LOGIN_REMOTE="no"

## Type:	yesno
## Default:	yes
#
# Let the displaymanager start a local Xserver.
# Set to "no" for remote-access only.
# Set to "no" on architectures without any Xserver (e.g. s390/s390x).
#
DISPLAYMANAGER_STARTS_XSERVER="yes"

## Type:        yesno
## Default:     no
#
# TCP port 6000 of Xserver. When set to "no" (default) Xserver is
# started with "-nolisten tcp". Only set this to "yes" if you really
# need to. Remote X service should run only on trusted networks and
# you have to disable firewall for interfaces, where you want to
# provide this service. Use ssh X11 port forwarding whenever possible.
#
DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN="no"

## Type:    string
## Default:
#
# Define the user whom should get logged in without request. If string
# is empty, display standard login dialog.
#
DISPLAYMANAGER_AUTOLOGIN=""

## Type:        yesno
## Default:     no
#
# Allow all users to login without password, but ask for the user, if
# DISPLAYMANAGER_AUTOLOGIN is empty.
#
DISPLAYMANAGER_PASSWORD_LESS_LOGIN="no"

## Type:        yesno
## Default:     no
#
# Display a combobox for Active Directory domains.
#
DISPLAYMANAGER_AD_INTEGRATION="no"
## Path:        Desktop/Display manager
## Type:        string(Xorg)
## Default:     "Xorg"
#
DISPLAYMANAGER_XSERVER="Xorg"

Edit: actually, I am using GDM:

What exactly “cannot type tilde” means? You press ~ and what happens? Is it the same in all input fields (user name, password)? What about other characters - do they match the expected keyboard layout?

On the Swedish keyboard normally I have to press AltGr + ¨ + space to get the tilde character ~. But when I do that in the password prompts, I get no input whatsoever. I have retried it just now and it is as if the key is not working. I can actually not enter any of the characters ^, ¨, and ~. Also the key to the left of backspace does not lead to any input in the password prompt, except if I press AlGr + ´, producing the character ±, so I would also not be able to input characters ` or ´ in the password prompt either.

However, switching to the German keyboard layout, the same sequence of physical keys needs to be pressed to get the ~ character (the key ¨ is + instead, though). And that works correctly in the password prompts.

The English layout works as well in the password prompt, just the combination of keys is different (shift + `).

Edit: all other characters and keys match the Swedish keyboard layout as far as I can tell. I am not sure about the other input fields. I will try it, but have to logout to test that after work.

Yes, I can reproduce it using GDM.

All those characters are dead-keys in the default se layout. If you do not need to enter any symbol using them (probably not during login) you can disable them

tw:/usr/share/X11/xkb # localectl --no-convert set-x11-keymap se "" nodeadkeys
tw:/usr/share/X11/xkb # localectl 
System Locale: LANG=en_US.UTF-8
    VC Keymap: us
   X11 Layout: se
  X11 Variant: nodeadkeys
tw:/usr/share/X11/xkb # 

This allows me to enter all five characters.

Cursory search does not show any similar problem, so you may consider openSUSE bug report.

Ok, thank you for testing and double checking. I will file a bug report.

Wish you all a great Monday and thanks to everybody for your suggestions and help in troubleshooting.

It is a good habit here to provide a link to the bug report. Thus others, even if they have not posted here, but found this thread e.g. with a Search, can read and maybe add information to the bug-report.

Thank you for pointing this out. Here is the link to the bug report:

https://bugzilla.opensuse.org/show_bug.cgi?id=1232744

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.