https://github.com/AlynxZhou/showmethekey

Today I needed a screencast tool that shows the keyboard and mouse input on screen. A popular tool is screenkey, but it does not work on Wayland. At least I tried it today and researched in web, and this is my conclusion. It’s in the Archlinux repository, so it would have been very nice. As a replacement, I found showmethekey, which has the same purpose, but works on Wayland too. However it is not in the official Archlinux repositories yet and I had to install from AUR. At least this is maintained by the same creator. This is usually something I don’t do often.

I do not have any comparison, so cannot say whats different or if its better for X11 users. If you run the program first time, it will give you a box with information what some Wayland limitations are and what you can do about or how to handle it. It’s actually pretty cool and works as “advertised”. After installation, I recommend the “Display Mode” to “Compact” and to disable “Draw Keys Border”, but this is just my preference. Also don’t forget to set your Keyboard Keymap (mine is “de (us)”, right, its a hybrid, objectively the best keyboard layout, period.).

I just wanted bring attention to this program, as its really cool if you need it in Wayland.

    • thingsiplay@beehaw.orgOP
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      21 days ago

      Depending on your definition what a keylogger is. I didn’t program it, so not sure about every step that is done. Tools like screenkey and showmethekey will read your keyboard input (and mouse) and display on the screen. I think the FAQ answers part of your question: https://showmethekey.alynx.one/

      Why your program needs root permission? screenkey never asks for it!

      If you debug with libinput, you’ll find it needs root permission, too. Because this program support both Wayland and X11, it does not get input events via display protocol, actually it’s reading directly from evdev interface under /dev. And if you want to interact with files under /dev, you need root permission. screenkey does not needs root permission because it’s heavily X11-based, it gets input events from X server instead of /dev, which already done it. And because of this it will never support Wayland.

      EDIT: It is not logging any keystrokes or anything, its just for display purpose. If this is a problem to you, then you cannot use any program on your system, because every application you use is able to read your keyboard input. If that is the concern here.