{ config, lib, ...}: with lib; { options.kyouma.machine-type = { physical = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as physical."; }; virtual = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as virtual."; }; router = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as router."; }; headless = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as headless."; }; graphical = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as graphical."; }; portable = mkOption { type = types.bool; default = false; description = mdDoc "Mark machine as portable."; }; }; config = let cfg = config.kyouma.machine-type; in { deployment.tags = mkIf cfg.router [ "router" ]; }; }