master
 1# Gitmal configuration example
 2# ============================
 3# Usage: gitmal --config path/to/this/file.toml [options]
 4#
 5# Three modes are supported:
 6#   1. Multi-repo mode  — populate the [[repos]] array
 7#   2. Single-repo config mode — use a [repo] section
 8#   3. Legacy single-repo mode — pass a path as positional argument (no --config)
 9#
10# [repo] and [[repos]] are mutually exclusive.
11
12
13
14# -------- Global (optional) --------
15
16# Site name. Displayed in:
17#   - the multi-repo index page title and menu
18#   - each repo page header as part of the breadcrumb
19# Defaults to "Git repositories" when omitted.
20site_name = "Gitmal"
21
22# Optional owner name shown in some page titles.
23# owner = "My Organization"
24
25
26# =============================================================================
27# Multi-repo mode — [[repos]]
28# =============================================================================
29# Populate the [[repos]] array with two or more entries.
30# Each repo is generated into output/<slug>/.
31# The root output/index.html becomes a repo listing page.
32#
33# When [[repos]] is present, positional CLI arguments are ignored.
34
35[[repos]]
36
37  name = "Gitmal"
38
39  slug = "gitmal"
40
41  path = "/srv/repos/gitmal"
42
43  description = "Static Git page generator"
44
45  # This repo uses "master" instead of "main".
46  default_branch = "master"
47
48
49
50# =============================================================================
51# Single-repo config mode — [repo]
52# =============================================================================
53# Use the [repo] section to configure a single repo with metadata from the
54# config file (site_name, etc.).
55#
56# [repo] and [[repos]] are mutually exclusive.
57#
58# Path priority: CLI positional arg > [repo].path
59# When a positional argument is provided, it takes precedence over the file path.
60
61# [repo]
62#
63#   name = "My Project"
64#   path = "/srv/repos/my-project"
65#
66#   # No slug needed in single-repo mode; output goes directly into output/.
67#
68#   description = "My personal project"
69#   default_branch = "main"
70
71
72
73# =============================================================================
74# Corresponding CLI flags
75# =============================================================================
76# Most flags can also be passed on the command line (higher priority):
77#
78#   --branches=regex      Branch filter regex (default: empty = all branches)
79#   --default-branch      Default branch name (overrides config)
80#   --theme               Code highlighting theme (default "github")
81#   --theme-light         Light theme override
82#   --theme-dark          Dark theme override
83#   --minify              Minify generated HTML
84#   --gzip                Generate .gz files in addition
85#   --git                 Generate Git dumb HTTP protocol files
86#   --inline-styles       Embed CSS in HTML instead of external files
87#   --output              Output directory (default "output")