{lib, ...}: with lib; { options = { kubenix.project = mkOption { description = "Name of the project"; type = types.str; default = "kubenix"; }; _m.features = mkOption { description = "List of features exposed by module"; type = types.listOf types.str; default = []; }; _m.propagate = mkOption { description = "Module propagation options"; type = types.listOf (types.submodule (_: { options = { features = mkOption { description = "List of features that submodule has to have to propagate module"; type = types.listOf types.str; default = []; }; module = mkOption { description = "Module to propagate"; type = types.unspecified; default = {}; }; }; })); default = []; }; }; }