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