# Intel CPU specific configuration. { pkgs, lib, config, ... }: with lib; let cfg = config.module.intel.cpu; controlFile = "/sys/devices/system/cpu/intel_pstate/no_turbo"; enableCmd = "1"; disableCmd = "0"; in { options = { module.intel.cpu = { enable = mkEnableOption "Support for Shintel CPUs"; powersave.enable = mkEnableOption "Enable Shintel Cpu powersave." // { default = true; }; }; }; config = mkIf cfg.enable (mkMerge [ { boot.kernelModules = [ "kvm-intel" ]; } (mkIf cfg.powersave.enable { module.powersave = { enable = true; cpu.boost = { inherit controlFile enableCmd disableCmd; }; }; }) ]); }