Blame


1 a596b957 2022-07-14 tracey .\"
2 a596b957 2022-07-14 tracey .\" Copyright (c) 2020 Tracey Emery <tracey@traceyemery.net>
3 a596b957 2022-07-14 tracey .\"
4 a596b957 2022-07-14 tracey .\" Permission to use, copy, modify, and distribute this software for any
5 a596b957 2022-07-14 tracey .\" purpose with or without fee is hereby granted, provided that the above
6 a596b957 2022-07-14 tracey .\" copyright notice and this permission notice appear in all copies.
7 a596b957 2022-07-14 tracey .\"
8 a596b957 2022-07-14 tracey .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 a596b957 2022-07-14 tracey .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 a596b957 2022-07-14 tracey .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 a596b957 2022-07-14 tracey .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 a596b957 2022-07-14 tracey .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 a596b957 2022-07-14 tracey .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 a596b957 2022-07-14 tracey .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 a596b957 2022-07-14 tracey .\"
16 a596b957 2022-07-14 tracey .Dd $Mdocdate$
17 59975c69 2022-08-29 stsp .Dt GOTWEBD.CONF 5
18 a596b957 2022-07-14 tracey .Os
19 a596b957 2022-07-14 tracey .Sh NAME
20 59975c69 2022-08-29 stsp .Nm gotwebd.conf
21 59975c69 2022-08-29 stsp .Nd gotwebd configuration file
22 a596b957 2022-07-14 tracey .Sh DESCRIPTION
23 a596b957 2022-07-14 tracey .Nm
24 a596b957 2022-07-14 tracey is the run-time configuration file for
25 59975c69 2022-08-29 stsp .Xr gotwebd 8 .
26 a596b957 2022-07-14 tracey .Pp
27 a596b957 2022-07-14 tracey The file format is line-based, with one configuration directive per line.
28 a596b957 2022-07-14 tracey Any lines beginning with a
29 a596b957 2022-07-14 tracey .Sq #
30 a596b957 2022-07-14 tracey are treated as comments and ignored.
31 a596b957 2022-07-14 tracey .Pp
32 a596b957 2022-07-14 tracey Paths mentioned in
33 a596b957 2022-07-14 tracey .Nm
34 a596b957 2022-07-14 tracey must be relative to
35 a596b957 2022-07-14 tracey .Pa /var/www ,
36 a596b957 2022-07-14 tracey the
37 a596b957 2022-07-14 tracey .Xr chroot 2
38 a596b957 2022-07-14 tracey environment of
39 a596b957 2022-07-14 tracey .Xr httpd 8 .
40 a596b957 2022-07-14 tracey .Sh GLOBAL CONFIGURATION
41 0dd80998 2022-08-29 stsp The available global configuration directives are as follows:
42 a596b957 2022-07-14 tracey .Bl -tag -width Ds
43 59975c69 2022-08-29 stsp .It Ic chroot Ar path
44 59975c69 2022-08-29 stsp Set the path to the
45 59975c69 2022-08-29 stsp .Xr chroot 2
46 59975c69 2022-08-29 stsp environment of
47 59975c69 2022-08-29 stsp .Xr httpd 8 .
48 59975c69 2022-08-29 stsp If not specified then
49 59975c69 2022-08-29 stsp .Pa /var/www
50 59975c69 2022-08-29 stsp will be used.
51 0dd80998 2022-08-29 stsp .It Ic prefork Ar number
52 0dd80998 2022-08-29 stsp Run the specified number of server processes.
53 0dd80998 2022-08-29 stsp .It Ic unix_socket Ar on | off
54 0dd80998 2022-08-29 stsp Controls whether the servers will listen on unix sockets by default.
55 0dd80998 2022-08-29 stsp .It Ic unix_socket_name Ar path
56 0dd80998 2022-08-29 stsp Set the path to the default unix socket.
57 0dd80998 2022-08-29 stsp .El
58 0dd80998 2022-08-29 stsp .Sh SERVER CONFIGURATION
59 0dd80998 2022-08-29 stsp At least one server context must exist for
60 0dd80998 2022-08-29 stsp .Xr gotwebd 8
61 0dd80998 2022-08-29 stsp to function.
62 0dd80998 2022-08-29 stsp In case no server context is defined in the configuration file, a default
63 0dd80998 2022-08-29 stsp server context will be used, which listens on a unix socket at
64 0dd80998 2022-08-29 stsp .Pa /var/www/run/gotweb.sock
65 0dd80998 2022-08-29 stsp and uses default parameters for all applicable settings.
66 0dd80998 2022-08-29 stsp .Pp
67 0dd80998 2022-08-29 stsp A server context is declared with a unique
68 7e047b0e 2022-08-30 stsp .Ar name ,
69 0dd80998 2022-08-29 stsp followed by server-specific configuration directives inside curly braces:
70 0dd80998 2022-08-29 stsp .Pp
71 0dd80998 2022-08-29 stsp .Ic server Ar name Brq ...
72 0dd80998 2022-08-29 stsp .Pp
73 f21aef01 2022-08-30 stsp .Xr gotwebd 8
74 f21aef01 2022-08-30 stsp is compatible with TLS Server Name Indication (SNI), provided the
75 f21aef01 2022-08-30 stsp .Ar name
76 f21aef01 2022-08-30 stsp of a server defined in
77 f21aef01 2022-08-30 stsp .Nm
78 f21aef01 2022-08-30 stsp corresponds to the name of a server defined in
79 f21aef01 2022-08-30 stsp .Xr httpd.conf 5 .
80 f21aef01 2022-08-30 stsp .Pp
81 0dd80998 2022-08-29 stsp The available server configuration directives are as follows:
82 0dd80998 2022-08-29 stsp .Bl -tag -width Ds
83 59975c69 2022-08-29 stsp .It Ic custom_css Ar path
84 59975c69 2022-08-29 stsp Set the path to a custom Cascading Style Sheet (CSS) to be used.
85 0dd80998 2022-08-29 stsp If this option is not specified then a default style sheet will be used.
86 59975c69 2022-08-29 stsp .It Ic listen on Ar address Ic port Ar number
87 0dd80998 2022-08-29 stsp Configure an address and port for incoming FCGI TCP connections.
88 0dd80998 2022-08-29 stsp Valid
89 0dd80998 2022-08-29 stsp .Ar address
90 0dd80998 2022-08-29 stsp arguments are hostnames, IP4 addresses, IPv6 addresses, and network
91 0dd80998 2022-08-29 stsp interface names.
92 0dd80998 2022-08-29 stsp The
93 0dd80998 2022-08-29 stsp .Ar port
94 0dd80998 2022-08-29 stsp argument may be number or a service name defined in
95 0dd80998 2022-08-29 stsp .Xr services 5 .
96 0dd80998 2022-08-29 stsp .Pp
97 0dd80998 2022-08-29 stsp May be specified multiple times to build up a list of listening sockets.
98 0dd80998 2022-08-29 stsp However, a given combination of address and port may only be used by
99 0dd80998 2022-08-29 stsp one server.
100 bde6e1ec 2022-09-23 stsp .Pp
101 bde6e1ec 2022-09-23 stsp If a network interface name is given as
102 bde6e1ec 2022-09-23 stsp .Ar address
103 bde6e1ec 2022-09-23 stsp argument then
104 bde6e1ec 2022-09-23 stsp .Xr gotwebd 8
105 bde6e1ec 2022-09-23 stsp will obtain the list of addresses on this interface only on startup.
106 bde6e1ec 2022-09-23 stsp Any future changes to the address configuration of the interface will
107 bde6e1ec 2022-09-23 stsp be ignored.
108 59975c69 2022-08-29 stsp .It Ic logo Ar path
109 a596b957 2022-07-14 tracey Set the path to an image file containing a logo to be displayed.
110 59975c69 2022-08-29 stsp .It Ic logo_url Ar url
111 a596b957 2022-07-14 tracey Set a hyperlink for the logo.
112 59975c69 2022-08-29 stsp .It Ic max_commits_display Ar number
113 59975c69 2022-08-29 stsp Set the maximum amount of commits displayed per page.
114 59975c69 2022-08-29 stsp .It Ic max_repos Ar number
115 a596b957 2022-07-14 tracey Set the maximum amount of repositories
116 59975c69 2022-08-29 stsp .Xr gotwebd 8
117 a596b957 2022-07-14 tracey will work with.
118 59975c69 2022-08-29 stsp .It Ic max_repos_display Ar number
119 a596b957 2022-07-14 tracey Set the maximum amount of repositories displayed on the index screen.
120 59975c69 2022-08-29 stsp .It Ic repos_path Ar path
121 59975c69 2022-08-29 stsp Set the path to the directory which contains Git repositories that
122 0dd80998 2022-08-29 stsp the server should publish.
123 59975c69 2022-08-29 stsp .It Ic show_repo_age Ar on | off
124 a596b957 2022-07-14 tracey Toggle display of last repository modification date.
125 59975c69 2022-08-29 stsp .It Ic show_repo_cloneurl Ar on | off
126 a596b957 2022-07-14 tracey Toggle display of clone URLs for a repository.
127 a596b957 2022-07-14 tracey This requires the creation of a
128 a596b957 2022-07-14 tracey .Pa cloneurl
129 a596b957 2022-07-14 tracey file inside the repository which contains one URL per line.
130 59975c69 2022-08-29 stsp .It Ic show_repo_description Ar on | off
131 a596b957 2022-07-14 tracey Toggle display of the repository description.
132 a596b957 2022-07-14 tracey The
133 a596b957 2022-07-14 tracey .Pa description
134 a596b957 2022-07-14 tracey file in the repository should be updated with an appropriate description.
135 59975c69 2022-08-29 stsp .It Ic show_repo_owner Ar on | off
136 a596b957 2022-07-14 tracey Set whether to display the repository owner.
137 a596b957 2022-07-14 tracey Displaying the owner requires owner information to be added to the
138 a596b957 2022-07-14 tracey .Pa config
139 a596b957 2022-07-14 tracey file in the repository.
140 59975c69 2022-08-29 stsp .Xr gotwebd 8
141 a596b957 2022-07-14 tracey will parse owner information from either a [gotweb] or a [gitweb] section.
142 a596b957 2022-07-14 tracey For example:
143 a596b957 2022-07-14 tracey .Bd -literal -offset indent
144 a596b957 2022-07-14 tracey [gotweb]
145 a596b957 2022-07-14 tracey owner = "Your Name"
146 a596b957 2022-07-14 tracey .Ed
147 59975c69 2022-08-29 stsp .It Ic site_link Ar string
148 a596b957 2022-07-14 tracey Set the displayed site link name for the index page.
149 59975c69 2022-08-29 stsp .It Ic site_name Ar string
150 a596b957 2022-07-14 tracey Set the displayed site name title.
151 59975c69 2022-08-29 stsp .It Ic site_owner Ar string
152 a596b957 2022-07-14 tracey Set the displayed site owner.
153 59975c69 2022-08-29 stsp .It Ic show_site_owner Ar on | off
154 a596b957 2022-07-14 tracey Toggle display of the site owner.
155 59975c69 2022-08-29 stsp .It Ic unix_socket Ar on | off
156 0dd80998 2022-08-29 stsp Enable or disable use of unix sockets.
157 59975c69 2022-08-29 stsp .It Ic unix_socket_name Ar path
158 0dd80998 2022-08-29 stsp Set the path to the unix socket used by the server.
159 0dd80998 2022-08-29 stsp .El
160 a596b957 2022-07-14 tracey .Sh EXAMPLES
161 a596b957 2022-07-14 tracey These are the currently configurable items for
162 59975c69 2022-08-29 stsp .Xr gotwebd 8
163 a596b957 2022-07-14 tracey with their default values.
164 a596b957 2022-07-14 tracey .Bd -literal -offset indent
165 a596b957 2022-07-14 tracey #
166 59975c69 2022-08-29 stsp # gotwebd options
167 a596b957 2022-07-14 tracey # all paths relative to /var/www (httpd chroot jail)
168 a596b957 2022-07-14 tracey #
169 a596b957 2022-07-14 tracey
170 59975c69 2022-08-29 stsp prefork 1
171 59975c69 2022-08-29 stsp
172 59975c69 2022-08-29 stsp server "localhost-unix" {
173 59975c69 2022-08-29 stsp repos_path "/got/public"
174 59975c69 2022-08-29 stsp unix_socket_name "/run/gotweb.sock"
175 0dd80998 2022-08-29 stsp
176 0dd80998 2022-08-29 stsp got_site_name "my public repos"
177 0dd80998 2022-08-29 stsp got_site_owner "Got Owner"
178 0dd80998 2022-08-29 stsp got_site_link "repos"
179 0dd80998 2022-08-29 stsp
180 0dd80998 2022-08-29 stsp logo "got.png"
181 0dd80998 2022-08-29 stsp logo_url "https://gameoftrees.org"
182 0dd80998 2022-08-29 stsp
183 0dd80998 2022-08-29 stsp # on by default
184 0dd80998 2022-08-29 stsp #show_site_owner off
185 0dd80998 2022-08-29 stsp #show_repo_owner off
186 0dd80998 2022-08-29 stsp #show_repo_age false
187 0dd80998 2022-08-29 stsp #show_repo_description no
188 0dd80998 2022-08-29 stsp #show_repo_cloneurl off
189 0dd80998 2022-08-29 stsp
190 0dd80998 2022-08-29 stsp #max_repos 100
191 0dd80998 2022-08-29 stsp #max_repos_display 25
192 0dd80998 2022-08-29 stsp #max_commits_display 50
193 59975c69 2022-08-29 stsp }
194 59975c69 2022-08-29 stsp
195 59975c69 2022-08-29 stsp # Example server context for FCGI over TCP connections:
196 59975c69 2022-08-29 stsp #server "localhost-tcp" {
197 59975c69 2022-08-29 stsp # repos_path "/got/public"
198 59975c69 2022-08-29 stsp # unix_socket off
199 59975c69 2022-08-29 stsp # listen on 127.0.0.1 port 9000
200 59975c69 2022-08-29 stsp # listen on ::1 port 9000
201 59975c69 2022-08-29 stsp #}
202 a596b957 2022-07-14 tracey .Ed
203 a596b957 2022-07-14 tracey .Sh FILES
204 a596b957 2022-07-14 tracey .Bl -tag -width Ds -compact
205 7e8fc9b5 2022-09-07 stsp .It Pa /etc/gotwebd.conf
206 7e8fc9b5 2022-09-07 stsp Default location of the
207 a596b957 2022-07-14 tracey .Nm
208 a596b957 2022-07-14 tracey configuration file.
209 a596b957 2022-07-14 tracey .El
210 a596b957 2022-07-14 tracey .Sh SEE ALSO
211 a596b957 2022-07-14 tracey .Xr got 1 ,
212 e0e2a861 2022-08-30 stsp .Xr httpd.conf 5 ,
213 0dd80998 2022-08-29 stsp .Xr services 5 ,
214 e0e2a861 2022-08-30 stsp .Xr gotwebd 8 ,
215 e0e2a861 2022-08-30 stsp .Xr httpd 8