{ lib, config, ... }: let inherit (lib) mkOption types; in { options.swarselsystems.inputs = mkOption { type = types.attrsOf (types.attrsOf types.str); default = { }; }; options.swarselsystems.kyria = mkOption { type = types.attrsOf (types.attrsOf types.str); default = { "36125:53060:splitkb.com_splitkb.com_Kyria_rev3" = { xkb_layout = "us"; xkb_variant = "altgr-intl"; }; "7504:24926:Kyria_Keyboard" = { xkb_layout = "us"; xkb_variant = "altgr-intl"; }; }; }; options.swarselsystems.touchpad = mkOption { type = types.attrsOf (types.attrsOf types.str); default = { }; }; options.swarselsystems.standardinputs = mkOption { type = types.attrsOf (types.attrsOf types.str); default = lib.recursiveUpdate (lib.recursiveUpdate config.swarselsystems.touchpad config.swarselsystems.kyria) config.swarselsystems.inputs; internal = true; }; options.swarselsystems.keybindings = mkOption { type = types.attrsOf types.str; default = { }; }; options.swarselsystems.shellAliases = mkOption { type = types.attrsOf types.str; default = { }; }; }