katana
This commit is contained in:
@@ -1,18 +1,10 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
# X11/KDE Plasma
|
||||
# gnome
|
||||
services.xserver.enable = true;
|
||||
services.displayManager.sddm.enable = true;
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
services.xserver.displayManager.gdm.enable = true;
|
||||
services.xserver.desktopManager.gnome.enable = true;
|
||||
|
||||
# Tastatur
|
||||
services.xserver.xkb = {
|
||||
layout = "de";
|
||||
variant = "";
|
||||
# swap caps and esc
|
||||
options = "caps:swapescape";
|
||||
};
|
||||
|
||||
# Konsole-Tastatur
|
||||
console.keyMap = "de";
|
||||
# we use wayland -> hint electron apps to use wayland
|
||||
environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
||||
}
|
||||
|
||||
64
modules/input/katana.nix
Normal file
64
modules/input/katana.nix
Normal file
@@ -0,0 +1,64 @@
|
||||
{ inputs, pkgs, ... }:
|
||||
{
|
||||
# Enable the uinput module
|
||||
boot.kernelModules = [ "uinput" ];
|
||||
|
||||
# Enable uinput
|
||||
hardware.uinput.enable = true;
|
||||
|
||||
# Set up udev rules for uinput
|
||||
services.udev.extraRules = ''
|
||||
KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
|
||||
'';
|
||||
|
||||
# Ensure the uinput group exists
|
||||
users.groups.uinput = { };
|
||||
|
||||
# Add the Kanata service user to necessary groups
|
||||
systemd.services.kanata-internalKeyboard.serviceConfig = {
|
||||
SupplementaryGroups = [
|
||||
"input"
|
||||
"uinput"
|
||||
];
|
||||
};
|
||||
|
||||
services.kanata = {
|
||||
enable = true;
|
||||
keyboards = {
|
||||
internalKeyboard = {
|
||||
devices = [
|
||||
# Replace the paths below with the appropriate device paths for your setup.
|
||||
# Use `ls /dev/input/by-path/` to find your keyboard devices.
|
||||
"pci-0000:66:00.0-usb-0:2.3:1.0-event-kbd"
|
||||
"pci-0000:66:00.0-usb-0:2.4:1.0-event-kbd"
|
||||
"pci-0000:66:00.0-usb-0:2.4:1.2-event-kbd"
|
||||
"pci-0000:66:00.0-usbv2-0:2.3:1.0-event-kbd"
|
||||
"pci-0000:66:00.0-usbv2-0:2.4:1.0-event-kbd"
|
||||
"pci-0000:66:00.0-usbv2-0:2.4:1.2-event-kbd"
|
||||
"platform-i8042-serio-0-event-kbd"
|
||||
];
|
||||
extraDefCfg = "process-unmapped-keys yes";
|
||||
config = ''
|
||||
(defsrc
|
||||
caps tab d h j k l
|
||||
)
|
||||
(defvar
|
||||
tap-time 200
|
||||
hold-time 200
|
||||
)
|
||||
(defalias
|
||||
caps (tap-hold 200 200 esc lctl)
|
||||
tab (tap-hold $tap-time $hold-time tab (layer-toggle arrow))
|
||||
del del ;; Alias for the true delete key action
|
||||
)
|
||||
(deflayer base
|
||||
@caps @tab d h j k l
|
||||
)
|
||||
(deflayer arrow
|
||||
_ _ @del left down up right
|
||||
)
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user