diff options
Diffstat (limited to 'modules/system')
| -rw-r--r-- | modules/system/activation-scripts.nix | 1 | ||||
| -rw-r--r-- | modules/system/defaults/default.nix | 37 |
2 files changed, 38 insertions, 0 deletions
diff --git a/modules/system/activation-scripts.nix b/modules/system/activation-scripts.nix index f9e6d86..fda882f 100644 --- a/modules/system/activation-scripts.nix +++ b/modules/system/activation-scripts.nix @@ -54,6 +54,7 @@ in # Prevent the current configuration from being garbage-collected. ln -sfn /run/current-system /nix/var/nix/gcroots/current-system + ${cfg.activationScripts.defaults.text} ${cfg.activationScripts.etc.text} ${cfg.activationScripts.launchd.text} diff --git a/modules/system/defaults/default.nix b/modules/system/defaults/default.nix new file mode 100644 index 0000000..7cfa041 --- /dev/null +++ b/modules/system/defaults/default.nix @@ -0,0 +1,37 @@ +{ config, lib, ... }: + +with lib; + +let + + cfg = config.system.defaults; + +in + +{ + options = { + + system.defaults.global.InitialKeyRepeat = mkOption { + type = types.nullOr types.int; + default = null; + }; + + system.defaults.global.KeyRepeat = mkOption { + type = types.nullOr types.int; + default = null; + }; + + }; + + config = { + system.activationScripts.defaults.text = '' + # Set defaults + echo "writing defaults..." >&2 + + '' + optionalString (cfg.global.InitialKeyRepeat != null) '' + defaults write -g InitialKeyRepeat -int ${toString cfg.global.InitialKeyRepeat} + '' + optionalString (cfg.global.KeyRepeat != null) '' + defaults write -g KeyRepeat -int ${toString cfg.global.KeyRepeat} + ''; + }; +} |
