.\"
.TH "CSVN-UI.RC" 5 "2020-11-07" "cSvn-ui CGI script" "csvn-ui.rc"
.SH "NAME"
\fB/etc/csvn-ui.rc\fR \- cSvn CGI script config file
.SH "DESCRIPTION"
\fB/etc/csvn-ui.rc\fR file describes Subversion repositories which should be shown by \fBcSvn-ui\fR CGI script.
.SH "FILE FORMAT"
\fB/etc/csvn-ui.rc\fR is regular text file created by user to present Subversion repositories. This file reads by \fBcscmd\fR daemon
and converts to binary form for \fBcSvn-ui\fR CGI script. Binary format allows to minimize the time needed for complete HTTP responses.
.PP
The configuration file consists of a set of variable or repository declarations also configuration file can contains section
of repository descriptions. The C/C++ comments are available:
.PP
.in +4n
.EX
\fI
/****************************
Apache's SVN repositories:
*/
home-page = "https://svn.apache.org/";
repo 'subversion' {
owner = "Apache";
description = "Source repository of the Subversion.";
checkout-prefix-readonly = 'https://svn.apache.org/repos/asf';
}
section "Other Repositories" {
repo 'other-repository' {
. . .
}
. . .
}
\fR
.EE
.in
.SH "DATA TYPES"
Configuration file assumes three types of variables.
.PP
\fBint\fR \- integer constants. Example declaration:
.PP
.in +4n
.EX
\fItrue = 1;\fR
.EE
.in
.PP
\fBstring\fR \- string constants. Example declaration:
.PP
.in +4n
.EX
\fIname = "Apache Subversion";\fR
.EE
.in
.PP
\fBpath\fR \- path constants. Example declaration:
.PP
.in +4n
.EX
\fIpath = '/etc/csvn-ui.rc';\fR
.EE
.in
.SH "RESERVED VARIABLES"
There is a set of variable names used by \fBcSvn-ui\fR CGI Script.
.TP 4
\fBsvn-utc-offset\fR
The integer or string value of UTC offset on the SVN server where repositories are published. For example:
.PP
.in +6n
.EX
\fIsvn-utc-offset = +0300; /* Europe/Moscow time zone */\fR
.EE
.in
.TP 4
\fBrepo-root\fR
The name of directory where some repository is placed related to \fBsvn repositories root\fR directory. For example:
.PP
.in +6n
.EX
\fIrepo-root = 'tools';\fR
.EE
.in
.TP 4
\fBcheckout-prefix-readonly\fR
The checkout prefix for readonly access to the repository. The value of this variable should has \fBpath\fR type
without leadinfg dir-separator. Example declaration:
.PP
.in +6n
.EX
\fIcheckout-prefix-readonly = 'svn://example.com';\fR
\fIcheckout-prefix-readonly = 'https://svn.example.com/svn';\fR
.EE
.in
.RS 4
Please note that \fBsvn\fR protocol works match quickly.
.RE
.TP 4
\fBcheckout-prefix\fR
The checkout prefix for readwrite access to the repository. The value of this variable should has \fBpath\fR type
without leadinfg dir-separator. Example declaration:
.PP
.in +6n
.EX
\fIcheckout-prefix = 'svn+ssh://svn@example.com';\fR
.EE
.in
.RS 4
This means the access on behalf \fIsvn\fR system user.
.RE
.TP 4
\fBbranches\fR
The name of directory where branches is places. Default value is \fIbranches\fR.
.TP 4
\fBtrunk\fR
The name of the \fItrunk\fR directory. Default value is \fItrunks\fR.
.TP 4
\fBtags\fR
The name of directory where tags are saved. Default value is \fItags\fR.
.RS 4
Example declarations of directory names:
.RE
.PP
.in +6n
.EX
\fIbranches = 'branches';\fR
\fItrunk = 'trunk';\fR
\fItags = 'tags';\fR
.EE
.in
.TP 4
\fBsnapshots\fR
The extension of snapshot tarballs. Default value: \fI'tar.xz'\fR. Example declaration:
.PP
.in +6n
.EX
\fIsnapshots = 'tar.xz';\fR
.EE
.in
.RS 4
Currently snapshot variable is not used by \fBcSvn-ui\fR CGI Script.
.RE
.TP 4
\fBcss\fR
.RS 4
The full name of the CSS style sheet relative to the directory where \fBcSvn-ui\fR CGI Sctipt is installed.
Example declaration:
.RE
.PP
.in +6n
.EX
\fIcss = '/.csvn/css/csvn.css';\fR
.EE
.in
.TP 4
\fBlogo\fR
Url which specifies the source of an image which will be used as a logo (i.e right banner) on \fBcSvn-ui\fR pages.
Default value: \fI'/.csvn/pixmaps/csvn-banner-280x280.png'\fR. The path to the \fBlogo\fR also should be set
relative to the directory where \fBcSvn-ui\fR CGI Script is installed. Example declaration:
.PP
.in +6n
.EX
\fIlogo = '/.csvn/pixmaps/csvn-banner-280x280.png';\fR
.EE
.in
.TP 4
\fBlogo-alt\fR
The string used in HTML as a 'alt' property of the right banner tag. Default value: \fI"Example.org"\fR.
Example declaration:
.PP
.in +6n
.EX
\fIlogo-alt = "Example.org";\fR
.EE
.in
.TP 4
\fBlogo-link\fR
The string used in HTML as a 'href' property of the right banner image link tag. Default value: \fI"https://example.org"\fR.
Example declaration:
.PP
.in +6n
.EX
\fIlogo-link = "https://example.org";\fR
.EE
.in
.TP 4
\fBmain-menu-logo\fR
Url which specifies the source of an image which will be used as a logo of the main menu item on \fBcSvn-ui\fR pages.
Default value: \fI'/.csvn/pixmaps/logo/SVN-logo-white-744x744.svg'\fR. The path to the \fBmain-menu-logo\fR also should be set
relative to the directory where \fBcSvn-ui\fR CGI Script is installed. Example declaration:
.PP
.in +6n
.EX
\fImain-menu-logo = '/.csvn/pixmaps/logo/SVN-logo-white-744x744.svg';\fR
.EE
.in
.TP 4
\fBfavicon-path\fR
The directory name of the 'favicon.ico' file without leadind dir-separator.
Default value: \fI'/.csvn/pixmaps/favicon'\fR. Example declaration:
.PP
.in +6n
.EX
\fIfavicon-path = '/.csvn/pixmaps/favicon';\fR
.EE
.in
.RS 4
This directory name used for finding additional images declared in the HTML \fBheader\fR of all \fBcSvn-ui\fR pages.
.RE
.TP 4
\fBsyntax-highlight-css\fR
The base name of the CSS style sheet file used for syntax highlighting.
Default value: \fI'_csvn.css'\fR. Example declaration:
.PP
.in +6n
.EX
\fIsyntax-highlight-css = '_csvn.css';\fR
.EE
.in
.RS 4
\fBcSvn-ui\fR CGI Script uses highlight.js
.UR https://\:highlightjs.org\:/
.UE
installed into \fI'/.csvn/.engines/highlight/${hljs-version}/{css,js}'\fR directories
where the default \fI'_csvn.css'\fR file is palced too.
.RE
.TP 4
\fBheader\fR
The content of the file specified with this option will be included verbatim at the top of all pages.
Default value: \fI'/.csvn/html/header.html'\fR.
.TP 4
\fBfooter\fR
The content of the file specified with this option will be included verbatim at the bottom of all pages.
Default value: \fI'/.csvn/html/footer.html'\fR. Examle of the \fBheader\fR and the \fBfooter\fR declarations:
.PP
.in +6n
.EX
\fIheader = '/.csvn/html/header.html';\fR
\fIfooter = '/.csvn/html/footer.html';\fR
.EE
.in
.RS 4
The \fBheader\fR and the \fBfooter\fR files used as template where \fBcSvn-ui\fR CGI Script substitute placeholders
such as \fI${variable-name}\fR by their values. For example the ${css} placeholder will be replaced by the value
of \fIcss\fR variable declared in the \fB/etc/csvn-ui.rc\fR config file.
.RE
.TP 4
\fBpage-size\fR
The \fBstring\fR or \fBint\fR variable which set the length of the repositories list or logs shown in one page by the \fBcSvn-ui\fR CGI Script.
Default value: 200. Example declaration:
.PP
.in +6n
.EX
\fIpage-size = 50; /* 10 ... 200 may be string or integer. Default value is page-size = 200 */\fR
.EE
.in
.TP 4
\fBowner\fR
The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages and also in the \fIOwner\fR colon of the repository list.
Default value: \fI"Andrey V.Kosteltsev"\fR.
.TP 4
\fBauthor\fR
The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages. Default value: \fI"Andrey V.Kosteltsev"\fR.
Example declarations of the \fBowner\fR and the \fBauthor\fR variables:
.PP
.in +6n
.EX
\fIowner = "John Smith";\fR
\fIauthor = "John Smith";\fR
.EE
.in
.TP 4
\fBtitle\fR
The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages as a page title. Default value: \fI"SVN Repositories"\fR.
Example declaration:
.PP
.in +6n
.EX
\fItitle = "Example.org SVN Repositories";\fR
.EE
.in
.TP 4
\fBdescription\fR
The \fBstring\fR variable used in the HTML header of all \fBcSvn-ui\fR pages as a page description.
Default value: \fI"Subversion repositories hosted at Solar System, Earth"\fR.
Example declaration:
.PP
.in +6n
.EX
\fIdescription = "Subversion repositories hosted at example.org (St.-Petersburg)";\fR
.EE
.in
.RS 4
For a long description the value of this \fBstring\fR variable can be splitted in the C-style by following way:
.RE
.PP
.in +6n
.EX
\fIdescription = "Subversion repositories"\fR
\fI " hosted at example.org "\fR
\fI "(St.-Petersburg)";\fR
.EE
.in
.TP 4
\fBkeywords\fR
The \fBstring\fR variable contains space separated keywords used in the HTML header of all \fBcSvn-ui\fR pages as a page keywords.
Default value: \fI"cSvn repositories"\fR.
Example declaration:
.PP
.in +6n
.EX
\fIkeywords = "cSvn UI CGI Subversion Repositories scm SVN";\fR
.EE
.in
.TP 4
\fBcopyright-notice\fR
The \fBstring\fR variable used in the HTML footer of all \fBcSvn-ui\fR pages as a Copyright Notice.
Default value: \fI"By using any website materials you agree to indicate source."\fR.
Example declaration:
.PP
.in +6n
.EX
\fIcopyright-notice = "By using any materials you agree with ...";\fR
.EE
.in
.TP 4
\fBcopyright\fR
The \fBstring\fR variable used in the HTML footer of all \fBcSvn-ui\fR pages as a Copyright.
Default value: \fI"© 2020 Andrey V.Kosteltsev. All Rights Reserved."\fR.
Example declaration:
.PP
.in +6n
.EX
\fIcopyright = "© John Smith (explorer), 1580 - 1631.";\fR
.EE
.in
.TP 4
\fBhome-page\fR
The URL of the home page of the project.
Default value: \fI"https://example.org"\fR.
Example declaration:
.PP
.in +6n
.EX
\fIhome-page = "https://main-site-of-the-project.org";\fR
.EE
.in
Analytics variables:
.TP 4
\fBanalytic-links\fR
The path to the file which contains meta tags with site ownership verificaton codes for engines such as \fIGoogle Search Console\fR or
\fIYandex Webmaster\fR. \fBcSvn-ui\fR CGI Script reads the file \fBanalytic-links\fR in RAW format and includes it into tag of each HTML page.
Example declaration:
.PP
.in +6n
.EX
\fIanalytic-links = '/analytics/links';\fR
.EE
.in
.RS 4
Where the file \fI/analytics/links\fR may contains HTML tags like follow:
.RE
.PP
.in +6n
.EX
\fI\fR
.EE
.in
.RS 4
The file name should be defined relative of the path where \fBcSvn-ui\fR CGI Script is installed. For example, if \fBcSvn-ui\fR CGI Script installed
into \fI/srv/www/htdocs/csvn\fR directory and file name declared as \fI/analytics/links\fR then \fBcSvn-ui\fR CGI Script will try to read the
file \fI/srv/www/htdocs/csvn/analytics/links\fR.
.RE
.TP 4
\fBanalytic-scripts\fR
The path to the file which contains JavaScripts for engines such as \fIGoogle Search Console\fR or
\fIYandex Webmaster\fR. \fBcSvn-ui\fR CGI Script reads the file \fBanalytic-scripts\fR in RAW format and includes it at the end of tag before
entry of each HTML page.
Example declaration:
.PP
.in +6n
.EX
\fIanalytic-scripts = '/analytics/scripts';\fR
.EE
.in
.RS 4
Where the file \fI/analytics/scripts\fR may contains code like follow:
.RE
.PP
.in +6n
.EX
\fI
\fR
.EE
.in
.RS 4
Please note that the \fI