revert submodule wrapper to align with module functions already doing types #2

Closed
kiara wants to merge 37 commits from kiara/Fediversity:fix-submodule-type into main
Showing only changes of commit fefcd93bc1 - Show all commits

View file

@ -4,12 +4,19 @@
... ...
}: }:
let let
inherit (lib) attrNames mkOption genAttrs; inherit (lib)
attrNames
mapAttrs
mkOption
genAttrs
;
inherit (lib.types) inherit (lib.types)
attrsOf attrsOf
attrTag attrTag
deferredModule deferredModule
mergeTypes
submoduleWith submoduleWith
submodule
; ;
runtime-configuration = mkOption { runtime-configuration = mkOption {
description = "The NixOS module of a run-time environment"; description = "The NixOS module of a run-time environment";
@ -21,26 +28,28 @@ let
runtime-environment = attrTag ( runtime-environment = attrTag (
mapAttrs mapAttrs
( (
name: options: name:
mkOption { option@{ type, ... }:
type = submoduleWith { mkOption (
modules = [ option
{ // {
options = options // { type = mergeTypes type (submodule {
module = mkOption { options.module = mkOption {
description = "The NixOS module of the run-time environment"; description = "The NixOS module of the run-time environment";
type = deferredModule; type = deferredModule;
default = config.runtime-configurations.${name}; default = config.runtime-configurations.${name};
readOnly = true; readOnly = true;
}; };
}; });
} }
]; )
};
}
) )
{ {
nixos = { }; nixos = {
description = "A NixOS instance to deploy to.";
type = submodule {
};
};
} }
); );
application = submoduleWith { application = submoduleWith {