inputs@{ lib, options, machine, ... }: with lib; { options = { custom.program = mkOption { type = types.attrsOf ( types.submodule (_: { options = { name = mkOption { type = types.string; }; defered-config = mkOption { type = types.deferredModule; }; }; }) ); }; }; }