Changing numeric keyboard to produce dot instead of comma

Answering my own question :).

1.) I found out that setting xkbOptions to "kpdl:dot" should do the trick. However, it doesn’t work for me. I guess this is because I use Wayland.
2.) I solved the problem by installing and configuring keyd. In my case the configuration was trivial:

services.keyd = {
  enable = true;
  keyboards.default = {
    ids = [ "*" ];
	settings = {
	  main = {
	    kpdot = ".";
	  };
    };
  };
};

“kpdot” is the name of the “numeric del” key.
In case you needed to modify other keys but didn’t know its code, you can run sudo keyd --monitor. Then press the key and you’ll see the code.

Also, my experience shows that adding keyd to configuration.nix in this way doesn’t add keyd binary to your PATH. I solved it by running nix-shell -p keyd before executing the command with --monitor switch.

1 Like