VOOZH about

URL: https://dev.to/arunkrish11/remapping-keyboard-keys-keyd-3h3g

⇱ Remapping keyboard keys | keyd - DEV Community


It’s been two days since my external keyboard’s Enter button stopped working.

At first, I seriously thought about throwing away the keyboard because the Enter key is basically everything while coding or using a terminal.

Then I got a thought:

What if I could use another key as Enter?

I searched online and eventually found a lightweight solution using keyd.

In my case, I remapped:

Right Alt → Enter

and it worked perfectly.


My Environment

  • Linux: Debian 12
  • Desktop Environment: GNOME Shell 43.9
  • Display System: Wayland

You can check your session type with:

echo $XDG_SESSION_TYPE

If the output is:

wayland

then you are good to follow further.


Why I Chose keyd

I wanted:

  • a lightweight solution
  • no complicated GUI
  • something that works properly on Wayland

keyd is a low-level keyboard remapping daemon that works very well on modern Linux systems.

Official project:

https://github.com/rvaiya/keyd


Installing keyd

Method 1 — Install from repositories

sudo apt install keyd

Method 2 — Build from source

If unavailable in repositories:

git clone https://github.com/rvaiya/keyd.git
cd keyd
make
sudo make install

Enable the keyd Service

Start and enable the daemon:

sudo systemctl enable --now keyd

Check if it is running:

systemctl status keyd

You should see something like:

active (running)

Creating the Remap

Open the keyd configuration file:

sudo nano /etc/keyd/default.conf

Paste this configuration:

[ids]

*

[main]

rightalt = enter

Apply the Changes

Reload the configuration:

sudo keyd reload

Testing

Now press:

Right Alt

It should behave exactly like the Enter key:

  • execute terminal commands
  • create new lines
  • work in browsers/editors

Things I Learned During This

While troubleshooting this issue, I learned:

  • modern Linux desktops use Wayland
  • old X11 remapping tools are less reliable on Wayland
  • keyd works at a lower level using Linux input events
  • GNOME aggressively captures Super-key shortcuts. I can't even use any other shortcuts as enter because of this.

That’s why remapping:

  • Super + key was inconsistent for me,

while:

  • Right Alt → Enter worked reliably.

Useful Commands

Reload configuration

sudo keyd reload

Restart the service

sudo systemctl restart keyd

Stop the service

sudo systemctl stop keyd

Disable autostart

sudo systemctl disable keyd

Uninstall keyd

sudo apt remove keyd

Final Thoughts

Honestly, I started this just trying to save a keyboard with a broken Enter key.

But while fixing it, I ended up learning:

  • Wayland vs X11
  • Linux input remapping
  • low-level input systems

Linux customization goes surprisingly deep once you start exploring it.