{ config, lib, ... }: with lib; with lib.metacfg; let cfg = config.metacfg.system.kernelTweaks; in { options.metacfg.system.kernelTweaks = with types; { enable = mkBoolOpt false "Whether or not to enable desktop kernel optimizations."; pmFreezeTimeout = mkOption { type = types.int; default = 30000; description = "PM freeze timeout in milliseconds."; }; enableZram = mkBoolOpt true "Enable zram swap."; }; config = mkIf cfg.enable { boot.kernel.sysctl = { "power.pm_freeze_timeout" = cfg.pmFreezeTimeout; }; zramSwap.enable = cfg.enableZram; }; }