refactor: keep options/config top-level

This commit is contained in:
Sridhar Ratnakumar 2024-07-09 16:49:49 -04:00
parent f48d891b14
commit dfbf5ddf9e
No known key found for this signature in database

View File

@ -55,23 +55,29 @@
}; };
in in
{ {
options.services.${service} = lib.mkOption { options = {
description = '' services.${service} = lib.mkOption {
${service} service description = ''
''; ${service} service
default = { }; '';
type = lib.types.attrsOf (lib.types.submoduleWith { default = { };
specialArgs = { inherit pkgs; }; type = lib.types.attrsOf (lib.types.submoduleWith {
modules = [ specialArgs = { inherit pkgs; };
serviceModule modules = [
mod serviceModule
]; mod
}); ];
});
};
};
config = {
settings = {
imports =
lib.pipe config.services.${service} [
(lib.filterAttrs (_: cfg: cfg.enable))
(lib.mapAttrsToList (_: cfg: cfg.outputs.settings))
];
};
}; };
config.settings.imports =
lib.pipe config.services.${service} [
(lib.filterAttrs (_: cfg: cfg.enable))
(lib.mapAttrsToList (_: cfg: cfg.outputs.settings))
];
}; };
} }