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")