40 lines
1.4 KiB
Nix
40 lines
1.4 KiB
Nix
{pkgs, ...}: {
|
|
imports = [
|
|
# Include the results of the hardware scan.
|
|
./hardware-configuration.nix
|
|
];
|
|
|
|
# ------------ System ------------
|
|
|
|
time.timeZone = "America/New_York";
|
|
|
|
networking.hostName = "bicep";
|
|
|
|
services.interception-tools = {
|
|
enable = true;
|
|
plugins = with pkgs.interception-tools-plugins; [
|
|
dual-function-keys
|
|
];
|
|
udevmonConfig = ''
|
|
- JOB: "${pkgs.interception-tools}/bin/intercept -g $DEVNODE | ${pkgs.interception-tools-plugins.dual-function-keys}/bin/dual-function-keys -c /etc/interception/dual-function-keys/my-mappings.yaml | ${pkgs.interception-tools}/bin/uinput -d $DEVNODE"
|
|
DEVICE:
|
|
NAME: "AT Translated Set 2 keyboard"
|
|
'';
|
|
};
|
|
environment.etc."interception/dual-function-keys/my-mappings.yaml".text = ''
|
|
MAPPINGS:
|
|
- KEY: KEY_CAPSLOCK
|
|
TAP: KEY_CAPSLOCK
|
|
HOLD: KEY_LEFTMETA
|
|
HOLD_START: BEFORE_RELEASE
|
|
'';
|
|
|
|
# This value determines the NixOS release from which the default
|
|
# settings for stateful data, like file locations and database versions
|
|
# on your system were taken. It's perfectly fine and recommended to leave
|
|
# this value at the release version of the first install of this system.
|
|
# Before changing this value read the documentation for this option
|
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
system.stateVersion = "23.05"; # Did you read the comment?
|
|
}
|