marleyos/modules/options/profiles.nix
2025-05-26 17:04:42 -07:00

25 lines
549 B
Nix

{
lib,
config,
...
}: let
cfg = config.marleycfg.profiles;
in {
options.marleycfg.profiles = {
desktop = lib.mkEnableOption "graphical desktop profile";
laptop = lib.mkEnableOption "laptop profile";
server = lib.mkEnableOption "server profile";
};
config = lib.mkIf cfg.server {
assertions = [
{
assertion = cfg.server -> !cfg.desktop;
message = ''
The marleycfg.profiles.server and marleycfg.profiles.desktop options
are mutually exclusive.
'';
}
];
};
}