taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

conf.py (33185B)


      1 """
      2   This file is part of GNU TALER.
      3   Copyright (C) 2014-2023 Taler Systems SA
      4 
      5   TALER is free software; you can redistribute it and/or modify it under the
      6   terms of the GNU Lesser General Public License as published by the Free Software
      7   Foundation; either version 2.1, or (at your option) any later version.
      8 
      9   TALER is distributed in the hope that it will be useful, but WITHOUT ANY
     10   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
     11   A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
     12 
     13   You should have received a copy of the GNU Lesser General Public License along with
     14   TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
     15 
     16   @author Florian Dold
     17   @author Benedikt Muller
     18   @author Sree Harsha Totakura
     19   @author Marcello Stanisci
     20   @author Christian Grothoff
     21   @author Özgür Kesim
     22 """
     23 # -*- coding: utf-8 -*-
     24 #
     25 # neuro documentation build configuration file, created by
     26 # sphinx-quickstart on Sat May 31 13:11:06 2014.
     27 #
     28 # This file is execfile()d with the current directory set to its
     29 # containing dir.
     30 #
     31 # Note that not all possible configuration values are present in this
     32 # autogenerated file.
     33 #
     34 # All configuration values have a default; values that are commented out
     35 # serve to show the default.
     36 
     37 import sys
     38 import os
     39 
     40 sys.path.append(os.path.abspath("_exts"))
     41 
     42 # If extensions (or modules to document with autodoc) are in another directory,
     43 # add these directories to sys.path here. If the directory is relative to the
     44 # documentation root, use os.path.abspath to make it absolute, like shown here.
     45 # sys.path.insert(0, os.path.abspath('.'))
     46 
     47 # -- General configuration ------------------------------------------------
     48 
     49 # If your documentation needs a minimal Sphinx version, state it here.
     50 needs_sphinx = "8.0.0"
     51 
     52 # Add any Sphinx extension module names here, as strings. They can be
     53 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
     54 # ones.
     55 extensions = [
     56     "ebicsdomain",
     57     "typescriptdomain",
     58     "sphinx.ext.todo",
     59     "sphinx.ext.graphviz",
     60     "sphinx.ext.imgmath",
     61     "httpdomain.httpdomain",
     62     "myst_parser",
     63     "sphinx_multitoc_numbering",
     64 ]
     65 
     66 imgmath_image_format = 'svg'
     67 imgmath_use_preview = True
     68 
     69 # Add any paths that contain templates here, relative to this directory.
     70 templates_path = ["_templates"]
     71 
     72 source_suffix = {
     73     ".rst": "restructuredtext",
     74     ".txt": "markdown",
     75     ".md": "markdown",
     76 }
     77 
     78 # The encoding of source files.
     79 # source_encoding = 'utf-8-sig'
     80 
     81 # The master toctree document.
     82 master_doc = "index"
     83 
     84 # General information about the project.
     85 project = "GNU Taler"
     86 copyright = "2014-2025 Taler Systems SA (GPLv3+ or GFDL 1.3+)"
     87 
     88 # The version info for the project you're documenting, acts as replacement for
     89 # |version| and |release|, also used in various other places throughout the
     90 # built documents.
     91 #
     92 # The short X.Y version.
     93 version = "1.0"
     94 # The full version, including alpha/beta/rc tags.
     95 release = "1.0.0"
     96 
     97 # The language for content autogenerated by Sphinx. Refer to documentation
     98 # for a list of supported languages.
     99 # language = None
    100 
    101 # There are two options for replacing |today|: either, you set today to some
    102 # non-false value, then it is used:
    103 # today = ''
    104 # Else, today_fmt is used as the format for a strftime call.
    105 # today_fmt = '%B %d, %Y'
    106 
    107 # List of patterns, relative to source directory, that match files and
    108 # directories to ignore when looking for source files.
    109 exclude_patterns = [
    110     "_build",
    111     "_exts",
    112     ".*",
    113     "cf",
    114     "prebuilt",
    115     "**/README.md",
    116     "extract-tsdefs",
    117     "frags",
    118     "orphaned",
    119 ]
    120 
    121 # The reST default role (used for this markup: `text`) to use for all
    122 # documents.
    123 default_role = "ts:type"
    124 
    125 # If true, '()' will be appended to :func: etc. cross-reference text.
    126 # add_function_parentheses = True
    127 
    128 # If true, the current module name will be prepended to all description
    129 # unit titles (such as .. function::).
    130 # add_module_names = True
    131 
    132 # If true, sectionauthor and moduleauthor directives will be shown in the
    133 # output. They are ignored by default.
    134 show_authors = False
    135 author = 'GNU Taler Developers'
    136 
    137 # The name of the Pygments (syntax highlighting) style to use.
    138 pygments_style = "sphinx"
    139 
    140 # A list of ignored prefixes for module index sorting.
    141 # modindex_common_prefix = []
    142 
    143 # If true, keep warnings as "system message" paragraphs in the built documents.
    144 # keep_warnings = False
    145 
    146 # -- Options for HTML output ----------------------------------------------
    147 
    148 # The theme to use for HTML and HTML Help pages.  See the documentation for
    149 # a list of builtin themes.
    150 html_theme = "sphinx_book_theme"
    151 
    152 #html_sidebars = {"**": ["logo-text.html", "globaltoc.html", "searchbox.html"]}
    153 #html_sidebars = {"**": ["globaltoc.html", "searchbox.html"]}
    154 
    155 html_theme_options = {
    156     # Set the name of the project to appear in the sidebar
    157     "home_page_in_toc": True,
    158     "logo": {
    159         "alt_text": "GNU Taler",
    160         "image_light": "images/taler-logo.svg",
    161         "image_dark": "images/taler-logo-white.svg",
    162     },
    163     "show_navbar_depth": 1,
    164     "show_toc_level": 2,
    165     "use_fullscreen_button": False,
    166     "use_download_button": False,
    167     "extra_footer": "<div>Do you have any question or suggestion regarding the documentation?  Go to our <a href='https://ich.taler.net/t/lost-in-documentation/255'>TALER Integration Community Hub</a>!</div>",
    168 }
    169 
    170 # Add any paths that contain custom themes here, relative to this directory.
    171 # html_theme_path = []
    172 
    173 # The name for this set of Sphinx documents.  If None, it defaults to
    174 # "<project> v<release> documentation".
    175 html_title = "GNU Taler"
    176 
    177 # A shorter title for the navigation bar.  Default is the same as html_title.
    178 html_short_title = "GNU Taler"
    179 
    180 # The name of an image file (relative to this directory) to place at the top
    181 # of the sidebar.
    182 # html_logo = "images/taler-logo.svg"
    183 
    184 # The name of an image file (within the static path) to use as favicon of the
    185 # docs.  This file should be a Windows icon file (.ico) being 16x16 or 32x32
    186 # pixels large.
    187 # html_favicon = None
    188 
    189 # Add any paths that contain custom static files (such as style sheets) here,
    190 # relative to this directory. They are copied after the builtin static files,
    191 # so a file named "default.css" will overwrite the builtin "default.css".
    192 html_static_path = ["_static"]
    193 
    194 # This is a sphinx-book-themes specific parameter to allow for customized css
    195 html_css_files = ["custom.css"]
    196 
    197 # Add any extra paths that contain custom files (such as robots.txt or
    198 # .htaccess) here, relative to this directory. These files are copied
    199 # directly to the root of the documentation.
    200 # html_extra_path = []
    201 
    202 # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
    203 # using the given strftime format.
    204 # html_last_updated_fmt = '%b %d, %Y'
    205 
    206 # If true, SmartyPants will be used to convert quotes and dashes to
    207 # typographically correct entities.
    208 # html_use_smartypants = True
    209 
    210 # Custom sidebar templates, maps document names to template names.
    211 # html_sidebars = {}
    212 
    213 # Additional templates that should be rendered to pages, maps page names to
    214 # template names.
    215 # html_additional_pages = {}
    216 
    217 # If false, no module index is generated.
    218 # html_domain_indices = True
    219 
    220 # If false, no index is generated.
    221 # html_use_index = True
    222 
    223 # If true, the index is split into individual pages for each letter.
    224 # html_split_index = False
    225 
    226 # If true, links to the reST sources are added to the pages.
    227 # html_show_sourcelink = True
    228 
    229 # If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
    230 html_show_sphinx = False
    231 
    232 # If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
    233 # html_show_copyright = True
    234 
    235 # If true, an OpenSearch description file will be output, and all pages will
    236 # contain a <link> tag referring to it.  The value of this option must be the
    237 # base URL from which the finished HTML is served.
    238 # html_use_opensearch = ''
    239 
    240 # This is the file name suffix for HTML files (e.g. ".xhtml").
    241 # html_file_suffix = None
    242 
    243 # -- Options for LaTeX output ---------------------------------------------
    244 
    245 latex_elements = {
    246     # The paper size ('letterpaper' or 'a4paper').
    247     #'papersize': 'letterpaper',
    248     # The font size ('10pt', '11pt' or '12pt').
    249     #'pointsize': '10pt',
    250     # Additional stuff for the LaTeX preamble.
    251     #'preamble': '',
    252 }
    253 
    254 # Grouping the document tree into LaTeX files. List of tuples
    255 # (source start file, target name, title,
    256 #  author, documentclass [howto, manual, or own class]).
    257 latex_documents = [
    258     (
    259         "taler-auditor-manual",
    260         "taler-auditor-manual.tex",
    261         "GNU Taler Auditor Manual",
    262         "GNU Taler team",
    263         "manual",
    264     ),
    265     (
    266         "taler-exchange-manual",
    267         "taler-exchange-manual.tex",
    268         "GNU Taler Exchange Manual",
    269         "GNU Taler team",
    270         "manual",
    271     ),
    272     (
    273         "taler-challenger-manual",
    274         "taler-challenger-manual.tex",
    275         "GNU Taler Challenger Manual",
    276         "GNU Taler team",
    277         "manual",
    278     ),
    279     (
    280         "taler-merchant-manual",
    281         "taler-merchant-manual.tex",
    282         "GNU Taler Merchant Manual",
    283         "GNU Taler team",
    284         "manual",
    285     ),
    286     (
    287         "taler-merchant-pos-terminal",
    288         "taler-merchant-pos-terminal.tex",
    289         "GNU Taler Merchant POS Terminal",
    290         "GNU Taler team",
    291         "manual",
    292     ),
    293     # (
    294     #     "taler-merchant-api-tutorial",
    295     #     "taler-merchant-api-tutorial.tex",
    296     #     "GNU Taler Merchant API Tutorial",
    297     #     "GNU Taler team",
    298     #     "manual",
    299     # ),
    300     (
    301         "taler-developer-manual",
    302         "taler-developer-manual.tex",
    303         "GNU Taler Developer Manual",
    304         "GNU Taler team",
    305         "manual",
    306     ),
    307 ]
    308 
    309 # The name of an image file (relative to this directory) to place at the top of
    310 # the title page.
    311 # latex_logo = None
    312 
    313 # For "manual" documents, if this is true, then toplevel headings are parts,
    314 # not chapters.
    315 # latex_use_parts = False
    316 
    317 # If true, show page references after internal links.
    318 # latex_show_pagerefs = False
    319 
    320 # If true, show URL addresses after external links.
    321 # latex_show_urls = False
    322 
    323 # Documents to append as an appendix to all manuals.
    324 latex_appendices = ["fdl-1.3"]
    325 
    326 # If false, no module index is generated.
    327 # latex_domain_indices = True
    328 
    329 # -- Options for manual page output ---------------------------------------
    330 
    331 # One entry per manual page. List of tuples
    332 # (source start file, name, description, authors, manual section).
    333 man_pages = [
    334     (
    335         "manpages/challenger-config.1",
    336         "challenger-config",
    337         "manipulate Challenger configuration files",
    338         "GNU Taler contributors",
    339         1,
    340     ),
    341     (
    342         "manpages/challenger-dbinit.1",
    343         "challenger-dbinit",
    344         "initialize the Challenger database",
    345         "GNU Taler contributors",
    346         1,
    347     ),
    348     (
    349         "manpages/challenger-admin.1",
    350         "challenger-admin",
    351         "manipulate list of authorized Challenger clients",
    352         "GNU Taler contributors",
    353         1,
    354     ),
    355     (
    356         "manpages/challenger-httpd.1",
    357         "challenger-httpd",
    358         "provide the Challenger HTTP interface",
    359         "GNU Taler contributors",
    360         1,
    361     ),
    362     (
    363         "manpages/challenger.conf.5",
    364         "challenger.conf",
    365         "Challenger configuration file",
    366         "GNU Taler contributors",
    367         5,
    368     ),
    369     (
    370         "manpages/sync-config.1",
    371         "sync-config",
    372         "manipulate Sync configuration files",
    373         "GNU Taler contributors",
    374         1,
    375     ),
    376     (
    377         "manpages/sync-dbinit.1",
    378         "sync-dbinit",
    379         "initialize the Sync database",
    380         "GNU Taler contributors",
    381         1,
    382     ),
    383     (
    384         "manpages/sync-httpd.1",
    385         "sync-httpd",
    386         "provide the Sync HTTP interface",
    387         "GNU Taler contributors",
    388         1,
    389     ),
    390     (
    391         "manpages/sync.conf.5",
    392         "sync.conf",
    393         "Sync configuration file",
    394         "GNU Taler contributors",
    395         5,
    396     ),
    397     (
    398         "manpages/taler-directory-config.1",
    399         "taler-directory-config",
    400         "manipulate Taler Directory configuration files",
    401         "GNU Taler contributors",
    402         1,
    403     ),
    404     (
    405         "manpages/taler-directory-dbinit.1",
    406         "taler-directory-dbinit",
    407         "initialize the Taler directory database",
    408         "GNU Taler contributors",
    409         1,
    410     ),
    411     (
    412         "manpages/taler-directory-httpd.1",
    413         "taler-directory-httpd",
    414         "provide the Taler directory HTTP interface",
    415         "GNU Taler contributors",
    416         1,
    417     ),
    418     (
    419         "manpages/taler-directory-cli.1",
    420         "taler-directory-cli",
    421         "provide the Taler directory CLI helper interface",
    422         "GNU Taler contributors",
    423         1,
    424     ),
    425     (
    426         "manpages/taler-directory.conf.5",
    427         "taler-directory.conf",
    428         "Taler directory configuration file",
    429         "GNU Taler contributors",
    430         5,
    431     ),
    432     (
    433         "manpages/taler-mailbox-config.1",
    434         "taler-mailbox-config",
    435         "manipulate Taler mailbox configuration files",
    436         "GNU Taler contributors",
    437         1,
    438     ),
    439     (
    440         "manpages/taler-mailbox-dbinit.1",
    441         "taler-mailbox-dbinit",
    442         "initialize the Taler mailbox database",
    443         "GNU Taler contributors",
    444         1,
    445     ),
    446     (
    447         "manpages/taler-mailbox-httpd.1",
    448         "taler-mailbox-httpd",
    449         "provide the Taler mailbox HTTP interface",
    450         "GNU Taler contributors",
    451         1,
    452     ),
    453     (
    454         "manpages/taler-mailbox.conf.5",
    455         "taler-mailbox.conf",
    456         "Taler mailbox configuration file",
    457         "GNU Taler contributors",
    458         5,
    459     ),
    460     (
    461         "manpages/donau-config.1",
    462         "donau-config",
    463         "manipulate Donau configuration files",
    464         "GNU Taler contributors",
    465         1,
    466     ),
    467     (
    468         "manpages/donau-dbconfig.1",
    469         "donau-dbconfig",
    470         "configure Donau database",
    471         "GNU Taler contributors",
    472         1,
    473     ),
    474     (
    475         "manpages/donau-dbinit.1",
    476         "donau-dbinit",
    477         "initialize the Donau database",
    478         "GNU Taler contributors",
    479         1,
    480     ),
    481     (
    482         "manpages/donau-httpd.1",
    483         "donau-httpd",
    484         "provide the Donau HTTP interface",
    485         "GNU Taler contributors",
    486         1,
    487     ),
    488     (
    489         "manpages/donau.conf.5",
    490         "donau.conf",
    491         "Donau configuration file",
    492         "GNU Taler contributors",
    493         5,
    494     ),
    495     (
    496         "manpages/donau-secmod-eddsa.1",
    497         "donau-secmod-eddsa",
    498         "handle private EDDSA key operations for a Donau",
    499         "GNU Taler contributors",
    500         1,
    501     ),
    502     (
    503         "manpages/donau-secmod-cs.1",
    504         "donau-secmod-cs",
    505         "handle private CS key operations for a Donau",
    506         "GNU Taler contributors",
    507         1,
    508     ),
    509     (
    510         "manpages/donau-secmod-rsa.1",
    511         "donau-secmod-rsa",
    512         "handle private RSA key operations for a Donau",
    513         "GNU Taler contributors",
    514         1,
    515     ),
    516 
    517     (
    518         "manpages/taler-auditor-dbinit.1",
    519         "taler-auditor-dbinit",
    520         "setup auditor database",
    521         "GNU Taler contributors",
    522         1,
    523     ),
    524     (
    525         "manpages/taler-auditor-sync.1",
    526         "taler-auditor-sync",
    527         "tool to safely synchronize auditor database",
    528         "GNU Taler contributors",
    529         1,
    530     ),
    531     (
    532         "manpages/taler-auditor-httpd.1",
    533         "taler-auditor-httpd",
    534         "HTTP server providing a RESTful API to access a Taler auditor",
    535         "GNU Taler contributors",
    536         1,
    537     ),
    538     (
    539         "manpages/taler-exchange-aggregator.1",
    540         "taler-exchange-aggregator",
    541         "aggregate deposits into wire transfers",
    542         "GNU Taler contributors",
    543         1,
    544     ),
    545     (
    546         "manpages/taler-terms-generator.1",
    547         "taler-terms-generator",
    548         "create legal policy documents for services",
    549         "GNU Taler contributors",
    550         1,
    551     ),
    552     (
    553         "manpages/taler-fakebank-run.1",
    554         "taler-fakebank-run",
    555         "run in-memory bank service for testing and benchmarking",
    556         "GNU Taler contributors",
    557         1,
    558     ),
    559     (
    560         "manpages/taler-exchange-closer.1",
    561         "taler-exchange-closer",
    562         "close idle reserves",
    563         "GNU Taler contributors",
    564         1,
    565     ),
    566     (
    567         "manpages/taler-exchange-drain.1",
    568         "taler-exchange-drain",
    569         "drain profits from exchange",
    570         "GNU Taler contributors",
    571         1,
    572     ),
    573     (
    574         "manpages/taler-exchange-kyc-tester.1",
    575         "taler-exchange-kyc-tester",
    576         "test KYC service integration",
    577         "GNU Taler contributors",
    578         1,
    579     ),
    580     (
    581         "manpages/taler-exchange-expire.1",
    582         "taler-exchange-expire",
    583         "refund expired purses",
    584         "GNU Taler contributors",
    585         1,
    586     ),
    587     (
    588         "manpages/taler-exchange-router.1",
    589         "taler-exchange-router",
    590         "route payments to partner exchanges",
    591         "GNU Taler contributors",
    592         1,
    593     ),
    594     (
    595         "manpages/taler-exchange-transfer.1",
    596         "taler-exchange-transfer",
    597         "execute wire transfers",
    598         "GNU Taler contributors",
    599         1,
    600     ),
    601     (
    602         "manpages/taler-unified-setup.1",
    603         "taler-unified-setup",
    604         "conveniently start and stop various GNU Taler services",
    605         "GNU Taler contributors",
    606         1,
    607     ),
    608     (
    609         "manpages/taler-exchange-benchmark.1",
    610         "taler-exchange-benchmark",
    611         "measure exchange performance",
    612         "GNU Taler contributors",
    613         1,
    614     ),
    615     (
    616         "manpages/taler-bank-benchmark.1",
    617         "taler-bank-benchmark",
    618         "measure bank performance",
    619         "GNU Taler contributors",
    620         1,
    621     ),
    622     (
    623         "manpages/taler-aggregator-benchmark.1",
    624         "taler-aggregator-benchmark",
    625         "generate database to measure aggregator performance",
    626         "GNU Taler contributors",
    627         1,
    628     ),
    629     (
    630         "manpages/taler-auditor-dbconfig.1",
    631         "taler-auditor-dbconfig",
    632         "configure Taler auditor database",
    633         "GNU Taler contributors",
    634         1,
    635     ),
    636     (
    637         "manpages/taler-exchange-dbconfig.1",
    638         "taler-exchange-dbconfig",
    639         "configure Taler exchange database",
    640         "GNU Taler contributors",
    641         1,
    642     ),
    643     (
    644         "manpages/taler-merchant-dbconfig.1",
    645         "taler-merchant-dbconfig",
    646         "configure Taler merchant database",
    647         "GNU Taler contributors",
    648         1,
    649     ),
    650     (
    651         "manpages/sync-dbconfig.1",
    652         "sync-dbconfig",
    653         "configure sync database",
    654         "GNU Taler contributors",
    655         1,
    656     ),
    657     (
    658         "manpages/challenger-dbconfig.1",
    659         "challenger-dbconfig",
    660         "configure challenger database",
    661         "GNU Taler contributors",
    662         1,
    663     ),
    664     (
    665         "manpages/taler-exchange-dbinit.1",
    666         "taler-exchange-dbinit",
    667         "initialize Taler exchange database",
    668         "GNU Taler contributors",
    669         1,
    670     ),
    671     (
    672         "manpages/taler-exchange-httpd.1",
    673         "taler-exchange-httpd",
    674         "run Taler exchange (with RESTful API)",
    675         "GNU Taler contributors",
    676         1,
    677     ),
    678     (
    679         "manpages/taler-auditor-offline.1",
    680         "taler-auditor-offline",
    681         "Taler auditor certifies that it audits a Taler exchange",
    682         "GNU Taler contributors",
    683         1,
    684     ),
    685     (
    686         "manpages/taler-exchange-offline.1",
    687         "taler-exchange-offline",
    688         "operations using the offline key of a Taler exchange",
    689         "GNU Taler contributors",
    690         1,
    691     ),
    692     (
    693         "manpages/taler-exchange-kyc-trigger.1",
    694         "taler-exchange-kyc-trigger",
    695         "trigger AML/KYC measures by simulating wallet balances thresholds being crossed for testing AML/KYC procedures",
    696         "GNU Taler contributors",
    697         1,
    698     ),
    699     (
    700         "manpages/taler-exchange-sanctionscheck.1",
    701         "taler-exchange-sanctionscheck",
    702         "check KYC attributes of all accounts against a sanctions list",
    703         "GNU Taler contributors",
    704         1,
    705     ),
    706     (
    707         "manpages/robocop.1",
    708         "robocop",
    709         "compare KYC records against a sanctions list and find best match",
    710         "GNU Taler contributors",
    711         1,
    712     ),
    713     (
    714         "manpages/taler-exchange-wirewatch.1",
    715         "taler-exchange-wirewatch",
    716         "watch for incoming wire transfers",
    717         "GNU Taler contributors",
    718         1,
    719     ),
    720     (
    721         "manpages/taler-merchant-reconciliation.1",
    722         "taler-merchant-reconciliation",
    723         "ask exchange which deposits were aggregated for a particular wire transfer that credited a merchant account",
    724         "GNU Taler contributors",
    725         1,
    726     ),
    727     (
    728         "manpages/taler-merchant-report-generator.1",
    729         "taler-merchant-report-generator",
    730         "background job that periodically fetches and submits reports",
    731         "GNU Taler contributors",
    732         1,
    733     ),
    734     (
    735         "manpages/taler-merchant-report-generator-email.1",
    736         "taler-merchant-report-generator-email",
    737         "helper for taler-merchant-report-generator that handles submission via e-mail",
    738         "GNU Taler contributors",
    739         1,
    740     ),
    741     (
    742         "manpages/taler-merchant-kyccheck.1",
    743         "taler-merchant-kyccheck",
    744         "ask exchange about KYC status of merchant bank accounts",
    745         "GNU Taler contributors",
    746         1,
    747     ),
    748     (
    749         "manpages/taler-merchant-exchangekeyupdate.1",
    750         "taler-merchant-exchangekeyupdate",
    751         "keep exchange key material up-to-date",
    752         "GNU Taler contributors",
    753         1,
    754     ),
    755     (
    756         "manpages/taler-merchant-donaukeyupdate.1",
    757         "taler-merchant-donaukeyupdate",
    758         "keep Donau key material up-to-date",
    759         "GNU Taler contributors",
    760         1,
    761     ),
    762     (
    763         "manpages/taler-merchant-benchmark.1",
    764         "taler-merchant-benchmark",
    765         "generate Taler-style benchmarking payments",
    766         "GNU Taler contributors",
    767         1,
    768     ),
    769     (
    770         "manpages/taler-mdb.1",
    771         "taler-mdb",
    772         "operate multi drop bus (MDB) based vending machines with Taler payments",
    773         "GNU Taler contributors",
    774         1,
    775     ),
    776     (
    777         "manpages/taler-mdb-display.1",
    778         "taler-mdb-display",
    779         "turns the framebuffer backlight on or off",
    780         "GNU Taler contributors",
    781         1,
    782     ),
    783     (
    784         "manpages/taler-mdb-qr-show.1",
    785         "taler-mdb-qr-show",
    786         "show text encoded as QR code on the framebuffer",
    787         "GNU Taler contributors",
    788         1,
    789     ),
    790     (
    791         "manpages/taler-mdb-show.sh.1",
    792         "taler-mdb-show.sh",
    793         "render informational status images on vending machines' displays",
    794         "GNU Taler contributors",
    795         1,
    796     ),
    797     (
    798         "manpages/taler-mdb-ads.sh.1",
    799         "taler-mdb-ads.sh",
    800         "renders advertisements on vending machines' displays while taler-mdb is idle",
    801         "GNU Taler contributors",
    802         1,
    803     ),
    804     (
    805         "manpages/taler-mdb-network-check.sh.1",
    806         "taler-mdb-network-check.sh",
    807         "handle network checks on vending machines",
    808         "GNU Taler contributors",
    809         1,
    810     ),
    811     (
    812         "manpages/taler-merchant-dbinit.1",
    813         "taler-merchant-dbinit",
    814         "initialize Taler merchant database",
    815         "GNU Taler contributors",
    816         1,
    817     ),
    818     (
    819         "manpages/taler-merchant-passwd.1",
    820         "taler-merchant-passwd",
    821         "change Taler merchant instance password",
    822         "GNU Taler contributors",
    823         1,
    824     ),
    825     (
    826         "manpages/taler-merchant-httpd.1",
    827         "taler-merchant-httpd",
    828         "run Taler merchant backend (with RESTful API)",
    829         "GNU Taler contributors",
    830         1,
    831     ),
    832     (
    833         "manpages/taler-merchant-rproxy-setup.1",
    834         "taler-merchant-rproxy-setup",
    835         "automatically setup reverse proxy for a Taler merchant backend",
    836         "GNU Taler contributors",
    837         1,
    838     ),
    839     (
    840         "manpages/taler-merchant-webhook.1",
    841         "taler-merchant-webhook",
    842         "execute webhooks of the Taler merchant backend (optional service)",
    843         "GNU Taler contributors",
    844         1,
    845     ),
    846     (
    847         "manpages/taler-merchant-wirewatch.1",
    848         "taler-merchant-wirewatch",
    849         "import credit transactions from a merchant bank account into merchant backend (optional)",
    850         "GNU Taler contributors",
    851         1,
    852     ),
    853     (
    854         "manpages/taler-merchant-depositcheck.1",
    855         "taler-merchant-depositcheck",
    856         "check status of deposits with exchange",
    857         "GNU Taler contributors",
    858         1,
    859     ),
    860     (
    861         "manpages/taler-exchange-wire-gateway-client.1",
    862         "taler-exchange-wire-gateway-client",
    863         "trigger a transfer at the bank",
    864         "GNU Taler contributors",
    865         1,
    866     ),
    867     (
    868         "manpages/taler-auditor-config.1",
    869         "taler-auditor-config",
    870         "Taler auditor configuration inspection and editing",
    871         "GNU Taler contributors",
    872         1,
    873     ),
    874     (
    875         "manpages/taler-exchange-config.1",
    876         "taler-exchange-config",
    877         "Taler exchange configuration inspection and editing",
    878         "GNU Taler contributors",
    879         1,
    880     ),
    881     (
    882         "manpages/taler-merchant-config.1",
    883         "taler-merchant-config",
    884         "Taler merchant configuration inspection and editing",
    885         "GNU Taler contributors",
    886         1,
    887     ),
    888     (
    889         "manpages/taler-exchange-kyc-aml-pep-trigger.1",
    890         "taler-exchange-kyc-aml-pep-trigger",
    891         "Taler KYC_AML_TRIGGER example",
    892         "GNU Taler contributors",
    893         1,
    894     ),
    895     (
    896         "manpages/taler-auditor.conf.5",
    897         "taler-auditor.conf",
    898         "Taler auditor configuration file",
    899         "GNU Taler contributors",
    900         5,
    901     ),
    902     (
    903         "manpages/taler-exchange.conf.5",
    904         "taler-exchange.conf",
    905         "Taler exchange configuration file",
    906         "GNU Taler contributors",
    907         5,
    908     ),
    909     (
    910         "manpages/taler-fakebank.conf.5",
    911         "taler-fakebank.conf",
    912         "Taler fakebank configuration file",
    913         "GNU Taler contributors",
    914         5,
    915     ),
    916     (
    917         "manpages/taler-mdb.conf.5",
    918         "taler-mdb.conf",
    919         "Taler-mdb configuration file",
    920         "GNU Taler contributors",
    921         5,
    922     ),
    923     (
    924         "manpages/taler-merchant.conf.5",
    925         "taler-merchant.conf",
    926         "Taler merchant configuration file",
    927         "GNU Taler contributors",
    928         5,
    929     ),
    930     (
    931         "manpages/taler-exchange-secmod-eddsa.1",
    932         "taler-exchange-secmod-eddsa",
    933         "handle private EDDSA key operations for a Taler exchange",
    934         "GNU Taler contributors",
    935         1,
    936     ),
    937     (
    938         "manpages/taler-exchange-secmod-cs.1",
    939         "taler-exchange-secmod-cs",
    940         "handle private CS key operations for a Taler exchange",
    941         "GNU Taler contributors",
    942         1,
    943     ),
    944     (
    945         "manpages/taler-exchange-secmod-rsa.1",
    946         "taler-exchange-secmod-rsa",
    947         "handle private RSA key operations for a Taler exchange",
    948         "GNU Taler contributors",
    949         1,
    950     ),
    951     (
    952         "manpages/taler-helper-auditor-aggregation.1",
    953         "taler-helper-auditor-aggregation",
    954         "audit Taler exchange aggregation activity",
    955         "GNU Taler contributors",
    956         1,
    957     ),
    958     (
    959         "manpages/taler-helper-auditor-coins.1",
    960         "taler-helper-auditor-coins",
    961         "audit Taler coin processing",
    962         "GNU Taler contributors",
    963         1,
    964     ),
    965     (
    966         "manpages/taler-helper-auditor-deposits.1",
    967         "taler-helper-auditor-deposits",
    968         "audit Taler exchange database for deposit confirmation consistency",
    969         "GNU Taler contributors",
    970         1,
    971     ),
    972     (
    973         "manpages/taler-helper-auditor-purses.1",
    974         "taler-helper-auditor-purses",
    975         "audit Taler exchange purse handling",
    976         "GNU Taler contributors",
    977         1,
    978     ),
    979     (
    980         "manpages/taler-helper-auditor-reserves.1",
    981         "taler-helper-auditor-reserves",
    982         "audit Taler exchange reserve handling",
    983         "GNU Taler contributors",
    984         1,
    985     ),
    986     (
    987         "manpages/taler-helper-auditor-wire-credit.1",
    988         "taler-helper-auditor-wire-credit",
    989         "audit exchange database for consistency with the bank's wire transfers",
    990         "GNU Taler contributors",
    991         1,
    992     ),
    993     (
    994         "manpages/taler-helper-auditor-wire-debit.1",
    995         "taler-helper-auditor-wire-debit",
    996         "audit exchange database for consistency with the bank's wire transfers",
    997         "GNU Taler contributors",
    998         1,
    999     ),
   1000     (
   1001         "manpages/libeufin-nexus.1",
   1002         "libeufin-nexus",
   1003         "service to interface to various bank access APIs",
   1004         "GNU Taler contributors",
   1005         1,
   1006     ),
   1007     (
   1008         "manpages/libeufin-nexus.conf.5",
   1009         "libeufin-nexus.conf",
   1010         "LibEuFin Nexus configuration file",
   1011         "GNU Taler contributors",
   1012         5,
   1013     ),
   1014     (
   1015         "manpages/libeufin-bank.1",
   1016         "libeufin-bank",
   1017         "implementation of a regional currency bank",
   1018         "GNU Taler contributors",
   1019         1,
   1020     ),
   1021     (
   1022         "manpages/libeufin-bank.conf.5",
   1023         "libeufin-bank.conf",
   1024         "LibEuFin Bank configuration file",
   1025         "GNU Taler contributors",
   1026         5,
   1027     ),
   1028     (
   1029         "manpages/libeufin-ebisync.1",
   1030         "libeufin-ebisync",
   1031         "service to synchronize files via EBICS",
   1032         "GNU Taler contributors",
   1033         1,
   1034     ),
   1035     (
   1036         "manpages/libeufin-ebisync.conf.5",
   1037         "libeufin-ebisync.conf",
   1038         "LibEuFin EbiSync configuration file",
   1039         "GNU Taler contributors",
   1040         5,
   1041     ),
   1042     (
   1043         "manpages/depolymerizer-bitcoin.1",
   1044         "depolymerizer-bitcoin",
   1045         "implementation of a bitcoin depolymerizer",
   1046         "GNU Taler contributors",
   1047         1,
   1048     ),
   1049     (
   1050         "manpages/depolymerizer-bitcoin.conf.5",
   1051         "depolymerizer-bitcoin.conf",
   1052         "Bitcoin depolymerizer configuration file",
   1053         "GNU Taler contributors",
   1054         5,
   1055     ),
   1056     (
   1057         "manpages/taler-magnet-bank.1",
   1058         "taler-magnet-bank",
   1059         "implementation of Magnet Bank Taler adapter",
   1060         "GNU Taler contributors",
   1061         1,
   1062     ),
   1063     (
   1064         "manpages/taler-magnet-bank.conf.5",
   1065         "taler-magnet-bank.conf",
   1066         "Magnet Bank adapter configuration file",
   1067         "GNU Taler contributors",
   1068         5,
   1069     ),
   1070     (
   1071         "manpages/taler-cyclos.1",
   1072         "taler-cyclos",
   1073         "implementation of Cyclos Taler adapter",
   1074         "GNU Taler contributors",
   1075         1,
   1076     ),
   1077     (
   1078         "manpages/taler-cyclos.conf.5",
   1079         "taler-cyclos.conf",
   1080         "Cyclos adapter configuration file",
   1081         "GNU Taler contributors",
   1082         5,
   1083     ),
   1084 ]
   1085 
   1086 # If true, show URL addresses after external links.
   1087 # man_show_urls = False
   1088 
   1089 # -- Options for Texinfo output -------------------------------------------
   1090 
   1091 # Grouping the document tree into Texinfo files. List of tuples
   1092 # (source start file, target name, title, author,
   1093 #  dir menu entry, description, category)
   1094 texinfo_documents = [
   1095     (
   1096         "taler-auditor-manual",
   1097         "taler-auditor",
   1098         "Taler Auditor Manual",
   1099         "GNU Taler team",
   1100         "GNU Taler Auditor",
   1101         "External audit for Taler Exchange operation",
   1102         "Network applications",
   1103     ),
   1104     (
   1105         "taler-exchange-manual",
   1106         "taler-exchange",
   1107         "Taler Exchange Manual",
   1108         "GNU Taler team",
   1109         "GNU Taler Exchange",
   1110         "Taler payment service provider",
   1111         "Network applications",
   1112     ),
   1113     (
   1114         "taler-challenger-manual",
   1115         "challenger",
   1116         "Taler Challenger Manual",
   1117         "GNU Taler team",
   1118         "GNU Taler Challenger",
   1119         "Customer address validation service",
   1120         "Network applications",
   1121     ),
   1122     (
   1123         "taler-merchant-manual",
   1124         "taler-merchant",
   1125         "Taler Merchant Manual",
   1126         "GNU Taler team",
   1127         "GNU Taler Merchant",
   1128         "Backend for merchants accepting Taler payments",
   1129         "Network applications",
   1130     ),
   1131     # (
   1132     #     "taler-merchant-api-tutorial",
   1133     #     "taler-merchant-api-tutorial",
   1134     #     "Taler Merchant API Tutorial",
   1135     #     "GNU Taler team",
   1136     #     "GNU Taler Merchant API",
   1137     #     "Tutorial for using the merchant backend API",
   1138     #     "Network applications",
   1139     # ),
   1140     (
   1141         "taler-developer-manual",
   1142         "taler-developer-manual",
   1143         "Taler Developer Manual",
   1144         "GNU Taler team",
   1145         "GNU Taler Development",
   1146         "Manual for GNU Taler contributors",
   1147         "Network applications",
   1148     ),
   1149 ]
   1150 
   1151 # Documents to append as an appendix to all manuals.
   1152 # texinfo_appendices = []
   1153 
   1154 # If false, no module index is generated.
   1155 # texinfo_domain_indices = True
   1156 
   1157 # How to display URL addresses: 'footnote', 'no', or 'inline'.
   1158 # texinfo_show_urls = 'footnote'
   1159 
   1160 # If true, do not generate a @detailmenu in the "Top" node's menu.
   1161 # texinfo_no_detailmenu = False
   1162 
   1163 # The output format for Graphviz when building HTML files.
   1164 # This must be either 'png' or 'svg'; the default is 'png'.
   1165 graphviz_output_format = "svg"
   1166 
   1167 myst_heading_anchors = 3
   1168 
   1169 myst_enable_extensions = [
   1170 ]
   1171 
   1172 
   1173 rst_prolog = """
   1174 .. |democheck| raw:: html
   1175 
   1176     <input type="checkbox">
   1177 """