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;
            };
          };
        })
      );
    };
  };
}
