Download
115 lines 4.6 KiBYAMLModified 2026-10-28 raw
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
# Example config for repo-render(1).
#
# Copy it to /etc/repo-render/repo-render.yaml and edit it. The settings
# that are not commented out are required. The commented-out ones show
# their default values; uncomment one to change it.
#
# A relative path is relative to this file. Changing this file makes the
# next push re-render every repository. Run `repo-render check` after
# editing it.

# The site's host name. It is used for links back to the site, such as in
# the sitemap and the clone URLs.
host: code.example.com

# Where things are.
git_dir: /var/git                             # the bare repositories, NAME.git
htdocs: /var/www/htdocs/repo-render           # the rendered website
spool_dir: /var/spool/repo-render             # the job queue that the hook adds to
state_dir: /var/db/repo-render                # the renderer's saved state and lock

# The private site, for repositories that are in no section below. It is
# served at /private/ behind a password, and must be outside htdocs.
# Without it, private repositories are not rendered at all.
#private_htdocs: /var/www/private/repo-render

# Where the renderer logs: syslog, a file, or "" for standard error only.
log: syslog

# The git program. Cron's PATH doesn't include /usr/local/bin, so give
# the full path.
git: /usr/local/bin/git

# Directories of your own syntax highlighters, as NAME.xml files, searched
# before the built-in ones. See the lexers section below.
#lexer_dirs: [/etc/repo-render/lexers]

# Syntax highlighting colours: any chroma style, for dark mode and light
# mode. style_light: "" turns off light mode.
#style: tokyonight-night
#style_light: github

# Limits.
#workers: 0                       # render jobs at once; 0 means 4 per CPU
#highlight_max_bytes: 1048576     # larger files get no highlighted page, only a raw link
#markdown_max_bytes: 524288       # larger Markdown is shown as source only
#raw_max_bytes: 33554432          # larger files get no raw copy
#search_max_bytes: 1048576        # larger files are left out of search
#search_exclude: ["*.min.js", "*.lock", "*-lock.json", "*.svg"]
#max_results: 2000                # the most search results shown
#repo_max_bytes: 1073741824       # a branch with more than this in files is not rendered,
                                  # and a tag gets no tarball; 0 means no limit
#repo_max_files: 25000            # the same for the number of files; 0 means no limit
#listing_truncate: 5              # entries shown above a README before the rest are folded
#archive_retention: 1h            # how long an old latest-commit tarball is kept after a push

site:
  # The heading on every page.
  #title: Code

  # A line under the title on the index page.
  #tagline: ""

  # HTML at the bottom of every page. Write it as a folded block, like
  # this, so it needs no quoting.
  #footer: >-
  #  Built with <a href="/code/repo-renderer">Repo Renderer</a>.

  # The site's public address, if it isn't https://HOST.
  #url: https://code.example.com

  # The clone URL shown on each repository's page. {repo} is replaced by
  # the repository's name. The default is URL/git/{repo}.git.
  #clone_url: "https://code.example.com/git/{repo}.git"

  # An .svg, .png, .ico, .gif or .webp file to use instead of the built-in
  # favicon.
  #favicon: /etc/repo-render/favicon.svg

  # What happens to repositories that are in no section: private (only on
  # the private site, if there is one), show (listed in a section of their
  # own at the end of the index), or hide (rendered, but not on the index).
  #unlisted: private
  #unlisted_title: Other repositories

# Sections of the index page, in order. A repository can be in one section
# only. Titles and descriptions are Markdown.
#sections:
#  - title: Command line programs
#    description: >-
#      Small tools I use every day.
#    repos: [bp, btui]
#  - title: "[Tomo](https://tomo.example.com)"
#    repos: [tomo, tomo-json]

# Syntax highlighting for file types chroma doesn't know. The name is a
# NAME.xml file in lexer_dirs, a built-in one (tomo, bp and nomsu are
# built in), or a chroma lexer. globs pick it by file name, and aliases
# are the names that work after ``` in Markdown.
#lexers:
#  tomo:
#    globs: ["*.tm"]
#    aliases: [tomo, tm]
#  bp:
#    globs: ["*.bp"]
#    aliases: [bp]
#  nomsu:
#    globs: ["*.nom"]
#    aliases: [nomsu, nom]

# Settings for single repositories.
#repos:
#  tomo:
#    branch: main                 # the branch the site shows; default: the repository's HEAD
#    branches: [dev]              # more branches to render, each at /code/tomo@BRANCH
#    tags: [language, c]          # labels shown on the index and the repository's page