{ lib, nixosOptionsDoc }: { version, modules ? [ moduleRoot ], moduleRoot, }: let baseDeclarationUrl = "https://github.com/catppuccin/nix/blob/main"; declarationIsOurs = declaration: lib.hasPrefix (toString moduleRoot) (toString declaration); declarationSubpath = declaration: lib.removePrefix (toString ../. + "/") (toString declaration); toGithubDeclaration = declaration: let subpath = declarationSubpath declaration; in { url = "${baseDeclarationUrl}/${subpath}"; name = ""; }; evaluated = lib.evalModules { modules = modules ++ [ { options.system.nixos.release = lib.mkOption { type = lib.types.str; default = lib.trivial.release; readOnly = true; }; config = { _module.check = false; }; } ]; }; optionsDoc = nixosOptionsDoc { options = builtins.removeAttrs evaluated.options [ "_module" "system" ]; transformOptions = opt: opt // { declarations = map ( declaration: if declarationIsOurs declaration then toGithubDeclaration declaration else declaration ) opt.declarations; }; documentType = "none"; revision = version; }; in optionsDoc.optionsCommonMark