conf.py (4795B)
1 # Configuration file for the Sphinx documentation builder. 2 # 3 # This file only contains a selection of the most common options. For a full 4 # list see the documentation: 5 # https://www.sphinx-doc.org/en/master/usage/configuration.html 6 7 # -- Path setup -------------------------------------------------------------- 8 9 # If extensions (or modules to document with autodoc) are in another directory, 10 # add these directories to sys.path here. If the directory is relative to the 11 # documentation root, use os.path.abspath to make it absolute, like shown here. 12 # 13 # import os 14 # import sys 15 # sys.path.insert(0, os.path.abspath('.')) 16 17 18 # -- Project information ----------------------------------------------------- 19 import sys 20 import os 21 22 project = 'GNUnet' 23 copyright = '2024, GNUnet Project' 24 author = 'GNUnet Project' 25 26 sys.path.append(os.path.abspath("_exts")) 27 28 # -- General configuration --------------------------------------------------- 29 30 # Add any Sphinx extension module names here, as strings. They can be 31 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom 32 # ones. 33 extensions = [ 34 'httpdomain.httpdomain', 35 'typescriptdomain', 36 'sphinx.ext.todo', 37 ] 38 39 if os.environ.get("SPHINX_MULTIVERSION"): 40 extensions.append('sphinx_multiversion') 41 42 #breathe_projects = { 43 # "gnunet": "../gnunet/doc/doxygen/xml/", 44 #} 45 46 #breathe_default_project = "gnunet" 47 48 # Add any paths that contain templates here, relative to this directory. 49 templates_path = ['_templates'] 50 51 # List of patterns, relative to source directory, that match files and 52 # directories to ignore when looking for source files. 53 # This pattern also affects html_static_path and html_extra_path. 54 exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] 55 56 57 # -- Options for HTML output ------------------------------------------------- 58 59 # The theme to use for HTML and HTML Help pages. See the documentation for 60 # a list of builtin themes. 61 # 62 html_theme = 'sphinx_rtd_theme' 63 64 html_sidebars = { 65 "**": ["globaltoc.html", "versioning.html"] 66 } 67 68 html_theme_options = { 69 #'logo_only': True, 70 'display_version': True, 71 'collapse_navigation': True, 72 } 73 74 man_make_section_directory = False 75 man_pages = [ 76 ('about', 'gnunet', 'About GNUnet', '', '1'), 77 ('installing', 'gnunet', 'Installing GNUnet', '', '2'), 78 ('users/start', 'gnunet', 'Starting and stopping', '', '3'), 79 ('users/gns', 'gnunet', 'The GNU Name System', '', '4'), 80 ('users/reclaim', 'gnunet', 're:claimID', '', '5'), 81 ('users/fs', 'gnunet', 'GNUnet File-Sharing', '', '6'), 82 ('users/vpn', 'gnunet', 'GNUnet VPN', '', '7'), 83 ('users/messenger', 'gnunet', 'GNUnet Messenger', '', '8'), 84 ('users/configuration', 'gnunet', 'GNUnet advanced configuration', '', '9'), 85 ('developers/contributing', 'gnunet-dev', 'Contributing', '', '1'), 86 ('developers/style', 'gnunet-dev', 'Style and workflow', '', '2'), 87 ('developers/util', 'gnunet-dev', 'libgnunetutil', '', '3'), 88 ('developers/rest/rest', 'gnunet-dev', 'REST API', '', '5'), 89 ('developers/tutorial', 'gnunet-dev', 'GNUnet Developer Tutorial', '', '6'), 90 ('livingstandards', 'lsd', 'Living Standards', '', '1'), 91 ] 92 93 # Add any paths that contain custom static files (such as style sheets) here, 94 # relative to this directory. They are copied after the builtin static files, 95 # so a file named "default.css" will overwrite the builtin "default.css". 96 html_static_path = ['_static'] 97 98 # These paths are either relative to html_static_path 99 # or fully qualified paths (eg. https://...) 100 html_css_files = [ 101 'css/custom.css', 102 ] 103 104 html_logo = "images/gnunet-blue.png" 105 106 # Display to-do items in docs 107 todo_include_todos = True 108 109 primary_domain = "c" 110 111 highlight_language = "c" 112 113 rst_prolog = f""" 114 .. role:: c(code) 115 :language: c 116 117 .. role:: bolditalic 118 :class: bolditalic 119 """ 120 121 if os.environ.get("GNUNET_VERSION"): 122 rst_prolog = ".. |gnunet_version| replace:: " + os.environ["GNUNET_VERSION"] 123 else: 124 rst_prolog = ".. |gnunet_version| replace:: latest" 125 126 # Whitelist pattern for tags (set to None to ignore all tags) 127 #smv_tag_whitelist = r'^.*$' 128 smv_tag_whitelist = 'latest' 129 130 # Whitelist pattern for branches (set to None to ignore all branches) 131 smv_branch_whitelist = r'^(v\d+\.\d+\.x|master)$' 132 #smv_branch_whitelist = 'master' 133 134 # Whitelist pattern for remotes (set to None to use local branches only) 135 smv_remote_whitelist = None 136 137 # Pattern for released versions 138 smv_released_pattern = r'^refs/(tags/latest|heads/(?!master)).*$' 139 #smv_released_pattern = r'^refs/(heads/[^/]+)/(?!master).*$' 140 141 # Format for versioned output directories inside the build directory 142 smv_outputdir_format = '{ref.name}' 143 144 # Determines whether remote or local git branches/tags are preferred if their output dirs conflict 145 smv_prefer_remote_refs = False