15

I have recently installed KDE 5 (kde-plasma-desktop) on Ubuntu 20.04, and as part of the installation, it asked me to switch the login screen manager to sddm.

When sddm starts (either on boot, or after logging out) it blocks the screen with a large on-screen keyboard (the rest of the screen is black), and I cannot get rid of the keyboard without clicking the "hide keyboard" 'key' with the mouse, after which the sddm login screen appears. Although I can understand that there might be accessibility reasons for this, I can see no way to switch this off (I am the only user of this computer), so it is rather annoying.

Is there a way to prevent this on-screen keyboard from appearing unrequested, or, alternatively, would KDE actually work quite happily with gdm3 as the login screen manager (or another manager, such as lightdm) instead?

4 Answers 4

16

I have had a similar problem and just discovered a solution.

First up, don't try another display manager with Plasma. I was using another one until recently and my sytem (Ubuntu 20.04 server) was stalling on boot. I had to put it to sleep and then wake it to get a login screen. I switched to sddm and solved that problem immediately (also clearing an error with notifications in the Plasma GUI), only to be confronted with the annoying on screen keyboard.

Everything online said there should be a configuration file, sddm.conf, in /etc/. They said you should find the line that starts with InputMethod= and make sure there is nothing after the equals sign. On my system, there was no such file.

I saw somewhere that it might work if I added the file. At the command line, I typed:

sudo nano /etc/sddm.conf

and it opened a new file. I simply typed InputMethod= on the first line (nothing else) and saved the file.

Problem solved, no more on screen keyboard at login. From what I've read, I think I know what's happening but I'm really not sure (I'm an ignorant noob). I just know it worked for me.

2
  • 1
    This worked for me. I did not have any /etc/sddm.conf file on my Ubuntu 20.04 after the KDE installation. I just created a blank file and added InputMethod= at the top. Restarted the computer and it worked.
    – Nirmal
    Jan 9, 2022 at 13:15
  • Yeah but what to do about the ugly blue login screen that appears along the huge keyboard?
    – ACV
    Nov 16 at 19:43
7

The full correct solution is as follows:

cd /etc/sddm.conf.d

In this directory you will find several files:

ls -l

Output:

michael@Kubuntu-VM:/etc/sddm.conf.d$ ls -la
total 20
drwxr-xr-x   2 root root  4096 Oct  8 11:08 .
drwxr-xr-x 186 root root 12288 Oct  8 11:05 ..
-rw-r--r--   1 root root   167 Oct  8 11:08 kde_settings.conf

Open up the kde_settings.conf in your editor of choice (as superuser, because it is owned by root):

sudo vim kde_settings.conf

You should see something like the following:

[Autologin]
Relogin=false
Session=
User=

[General]
HaltCommand=
RebootCommand=

[Theme]
Current=Your-login-theme

[Users]
MaximumUid=60000
MinimumUid=1000

Now, right under whatever is the last entry in your General group, add the setting InputMethod=. You can optionally add the comments shown in the example below above this line for future reference. I included a link to this answer, explaining the line's necessity, for additional info. I did this in case you encounter this file and its change at some time in the distant future, probably while upgrading your Linux distro or some package which wants to reset this file, by which point you will have likely forgotten all of this and the reason why you made this change - it happens to all of us:

...
[General]
HaltCommand=
RebootCommand=
# This disables the on-screen keyboard from popping up when
# Username and Password are being entered at the Login screen.
#
# For additional info, see: https://askubuntu.com/a/1368158/4197
InputMethod=

[Theme]
...

Log out and test by trying to reenter your username and password, hopefully without that annoying gratuitous on-screen keyboard popping up and obscuring the entire Login screen, including the field you are trying to populate - an excellent example of horrible UI design.

Shout, "Finally!", and get on with whatever task you were trying to do before encountering this frustration and winding up here in askubuntu (e.g., updating your SDDM Login theme and getting hijacked by this keyboard gremlin).

Bonus

For those still here and desiring to understand the "why of it all," enter the following command:

/usr/bin/sddm --example-config | grep Input

Output:

# Input method module
InputMethod=qtvirtualkeyboard

The above default for the InputMethod, which is probably this way for phone/tablet support, is the reason you are here.

4
  • 2
    Clean install Ubuntu 21.10 desktop amd64 with LVM and encryption and apt install kde-plasma-desktop. There is no /etc/sddm.conf.d after reboot.
    – Vinigas
    Oct 24, 2021 at 15:48
  • I would not touch /etc/sddm.conf.d/kde_settings.conf, it gets overwritten by the Plasma Settings app. It's better to create a separate config file with just InputMethod=.
    – rustyx
    Sep 3, 2022 at 21:23
  • Thanks for your help, this solved the problem after it appeared with an update of Ubuntu Studio 22.04 fresh install. Jan 15 at 18:12
  • I also did not have the /etc/sddm.conf.d/ directory. Jan 25 at 19:24
2

After KDE UI installation over gnome Ubuntu 20.04. I did not have any /etc/sddm.conf file. I just created a blank file and added InputMethod= at the top. Restarted the computer and it worked.

1
  • This exact solution has already been shared by a different user.
    – mchid
    Feb 10, 2022 at 9:04
0

I would like to add that when I just entered my password, hit enter, the virtual keyboard disappeared, my login screen showed up a second and startup continued.

Maybe still a bit annoying that virtual keyboard but actually you don't have do anything about it.

At least it worked this way in my case, this showing up of a virtual keyboard doesn't seem to be a mistake but indeed meant for touch screens.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .