TOMLconfig.example.toml
-rw-r--r-- 7.4 KiB
1# site name used in various places across the instance
2site_name = "🌄 Ayllu"
3
4# A valid URI that identifies this server on the global internet
5origin = "localhost:10000"
6
7# sysadmin contact address
8sysadmin = "admin@example.org"
9
10# logging level
11log_level = "INFO"
12
13# enable when ayllu is being served from a "subpath". Clicking the home
14# button will send the user back to /browse instead of /. This is useful if you
15# have a landing page at the root of your webserver path.
16subpath_mode = false
17
18# friendly message to display on the about page of the main site which might
19# include details such as contact information, etc. markdown is supported.
20blurb = """
21# Welcome to Ayllu!
22"""
23
24# The default branch name to use when rendering repositories. If unspecified
25# the ref that HEAD is currently pointed at will be used.
26# default_branch = "main"
27
28# The number of threads to spawn by Tokio, typically this will be the number
29# of logical processors (cores) you have on your system
30# worker_threads = 8
31
32# The number of additional threads that can be launched to support synchronous
33# blocking operations.
34# max_blocking_threads = 512
35
36# The number of suggested seconds to wait before polling the server again
37# across RSS feeds. The default of 1 hour is a reasonable default in most
38# cases.
39rss_time_to_live = 3600
40
41# Git HTTP server options
42
43[git]
44# Global option to enable the Git "Smart HTTP" server which will serve
45# non-hidden repositories for cloning over HTTP. The default is true but if
46# set to false it will globally disable all cloning which you might want to do
47# if you want to run your own fcgi server e.g.
48smart_http = true
49# URL to suggest for cloning via SSH, if unspecified git cloning option will
50# not appear in the repository page.
51clone_url = "git@localhost"
52
53# this toggles the GIT_HTTP_EXPORT_ALL option for git-http-backend which will
54# allow cloning of all repositories unless they are marked as private. If this
55# option is not toggled then the file git-daemon-export-ok exist in the repository
56# for cloing to be permitted.
57export_all = false
58
59# Job server configuration
60
61[jobs]
62
63# socket for the job server to listen to new requests on. This is typically
64# used to communicate via git hooks to perform new computation on a repository
65# after it has been updated.
66# jobs_socket_path = "/var/run/user/1000/ayllu-jobs.sock"
67
68# Maximum time to allow a job to run before killing it in seconds.
69# This value needs to be high for large repositories since we have to run a
70# job for every commit in the repository.
71timeout = 1800
72
73# List of authors associated with this site
74[[authors]]
75# E-mail address of the author
76email = "example@example.org"
77# Optional "tagline" associated with the author
78tagline = "Programmer interested free software"
79# Optional link to an avatar containing an image representing the author
80avatar = { url = "https://example.org/avatar.png", mime_type = "image/png" }
81# Array of personal websites, social media, etc. associated with the author
82profiles = [
83 { url = "https://example.com", mime_type = "text/html"},
84 { url = "https://example.org/@example", mime_type = "text/html"},
85]
86
87[http]
88# interface and port to listen on
89address = "127.0.0.1:10000"
90
91[web]
92# default theme that will be used when none is specified in user configuration.
93# additionally the default theme will be used to load assets that are not
94# overriden in the actively selected theme.
95# default_theme = "default"
96# [[web.themes]]
97# unique name to identify the theme in the web UI
98# name = "my-theme"
99# path to the directory containing the theme assets
100# path = "/usr/lib/ayllu/themes/my-theme"
101
102# static hosting
103# see an example Nginx configuration in contrib/nginx/nginx.conf
104[sites]
105# set false if you want to disallow all static hosting
106enabled = false
107
108# tree-sitter backed syntax highlighting
109[tree-sitter]
110# path to load shared objects from
111# base_path = "/usr/lib"
112# alternative path to queries
113# queries_path = "/usr/share/tree-sitter/queries"
114# additional queries
115# queries_extras_path = "/etc/ayllu/queries"
116# modules_extras_path = "/path/to/extra/tree-sitter-$lang.so objects"
117
118# tree-sitter highlighting keywords, these are attributes that will be
119# exposed as CSS classes which can be used to create themes.
120# keywords = [
121# "attribute",
122# "comment",
123# "constant",
124# "function.builtin",
125# "function",
126# "keyword",
127# "operator",
128# "property",
129# "punctuation",
130# "punctuation.bracket",
131# "punctuation.delimiter",
132# "string",
133# "string.special",
134# "tag",
135# "type",
136# "type.builtin",
137# "variable",
138# "variable.builtin",
139# "variable.parameter",
140# "keyword_insert",
141# "addition",
142# "removal"
143# ]
144
145# override system highlights with your own configuration as needed
146# [tree-sitter.highlights]
147
148# this results in two new CSS classes ts_addition and ts_removal which can
149# be configured in theme stylesheets.
150# diff = """
151# ; used to highlight diffs in the UI
152# [(addition) (new_file)] @addition
153# [(deletion) (old_file)] @removal
154#
155# (commit) @constant
156# (location) @attribute
157# (command) @variable.builtin
158# """
159
160
161# [[tree-sitter.parsers]]
162# additional parsers
163# name = "fuu-lang"
164# shared_object = "/etc/ayllu/parsers/libtree-sitter-fuu.so"
165# see https://tree-sitter.github.io/tree-sitter/syntax-highlighting#highlights
166# highlight_query = "/etc/ayllu/queries/fuu/highlights.scm"
167# see https://tree-sitter.github.io/tree-sitter/syntax-highlighting#local-variables
168# locals_query = "/etc/ayllu/queries/fuu/locals.scm"
169# see https://tree-sitter.github.io/tree-sitter/syntax-highlighting#language-injection
170# injections = "/etc/ayllu/queries/fuu/injections.scm"
171
172# any additional programming languages and their associated file extensions
173# [[ languages ]]
174# name = "BazQux"
175# extensions = [".baz", ".qux", ".bq"]
176# # deep pink
177# color = "#ff1493"
178
179# language configuration
180[languages]
181
182# Sometimes a file will be detected as one language but you want it to map to
183# another one. For instance a file named main.ml will default to Standard ML
184# however you might prefer OCaml instead. Mappings allow you to override
185# specific languages with your own preferences.
186[languages.mappings]
187"Standard ML" = "OCaml"
188# "Shell" is a blanket term for sh like languages but we want to map it
189# specifically to bash because that's the tree-sitter parser we have installed.
190"Shell" = "Bash"
191
192# any additional programming languages and their associated file extensions
193[[languages.extras]]
194name = "BazQux"
195extensions = [".baz", ".qux"]
196color = "#FF1493"
197
198# othertimes you want to override just the extension for a particular language,
199# .rs extensions map to both Rust and RenderScript.
200[[languages.extras]]
201name = "Rust"
202extensions = [".rs"]
203
204
205# Large File Store configuration
206# [lfs]
207# template URL to construct an API request which will be used to lookup the
208# reference object of the file. Other LFS server implementations may work but
209# this has only been tested with https://github.com/jasonwhite/rudolfs
210# url_template = "/lfs/{collection}/{name}/object/{oid}"
211
212# path to directories of repositories, each collection will be seperated into
213# a unique section on the index page. recursive directories are not supported,
214# you may only have a single level of repositories at this time.
215# [[collections]]
216# # name of the code collection
217# name = "projects"
218# description = "software projects actively being worked on"
219# path = "/path/to/projects"
220# # If true the collection will not show up in the main index or RSS feeds
221# hidden = false
222
223# [[collections]]
224# name = "attic"
225# description = "archived code"
226# path = "/path/to/attic"