{ config, lib, ... }: { options.snowflake.hardware.laptop = { enable = lib.mkEnableOption "enable laptop module"; lidSwitch = lib.mkOption { type = lib.types.str; default = "ignore"; description = "action to take on lidSwitch (lid close / open)"; }; }; config = lib.mkIf config.snowflake.hardware.laptop.enable { # prevent sleeping on lid close # NOTE: this only works after a reboot services.logind.lidSwitch = config.snowflake.hardware.laptop.lidSwitch; }; }