From b210e1e6d8113a4416bc5b0694788b5a1573e10a Mon Sep 17 00:00:00 2001 From: Kopatz <7265381+Kropatz@users.noreply.github.com> Date: Mon, 28 Apr 2025 18:10:29 +0200 Subject: [PATCH] keyboard layout --- flake.lock | 14 +++++++------- systems/laptop/configuration.nix | 24 ++++++++++++++++++++++-- 2 files changed, 29 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 3efe372..22dddee 100644 --- a/flake.lock +++ b/flake.lock @@ -525,11 +525,11 @@ ] }, "locked": { - "lastModified": 1743953322, - "narHash": "sha256-prQ5JKopXtzCMX2eT3dXbaVvGmzjMRE2bXStQDdazpM=", + "lastModified": 1745015490, + "narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "9d7f2687c84c729afbc3b13f7937655570f2978d", + "rev": "60754910946b4e2dc1377b967b7156cb989c5873", "type": "github" }, "original": { @@ -556,11 +556,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1745005494, - "narHash": "sha256-hiRVFgpUi0aHjRV3yq7Vvvg6xCjJnVmsSIoOhBMeHtY=", + "lastModified": 1745795931, + "narHash": "sha256-goMGHqfCb+/lkp7nfxw2UqUzYlL/CH9TVSWvwa5zXsA=", "ref": "refs/heads/main", - "rev": "51afc2c2910d6f7c1f2dee9c90f54729d3c3d940", - "revCount": 6007, + "rev": "f5c5cfa960c157c8df50b496f621290234ac4505", + "revCount": 6032, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" diff --git a/systems/laptop/configuration.nix b/systems/laptop/configuration.nix index 5f2a8ad..58370fd 100644 --- a/systems/laptop/configuration.nix +++ b/systems/laptop/configuration.nix @@ -28,8 +28,28 @@ age.identityPaths = [ "/home/kopatz/.ssh/id_ed25519" "/etc/ssh/ssh_host_ed25519_key" ]; - mainUser.layout = "de"; - mainUser.variant = "us"; + mainUser.layout = "de_us_swapped"; + mainUser.variant = ""; + + console.useXkbConfig = true; + services.xserver.exportConfiguration = lib.mkForce true; + services.xserver.extraLayouts = { + de_us_swapped = { + description = "German (US, Z and Y swapped)"; + languages = [ "de" ]; + symbolsFile = pkgs.writeText "symbols" '' + default partial alphanumeric_keys + xkb_symbols "de_us_swapped" { + include "de(us)" + + name[Group1]= "German (US, Z and Y swapped)"; + + key { [ y, Y ] }; + key { [ z, Z ] }; + }; + ''; + }; + }; # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true;