cGit-UI — is a web interface for Git repositories. cGit-UI is based on CGI script written in С.
 This article covers installing and configuring cGit-UI to work using Nginx + uWsgi. Setting up server components is quite simple and practically does not differ from setting up cGit.
 cGit-UI supports Markdown files that are processed on the server side using the md4c library, which has proven itself in the KDE Plasma project. cGit-UI provides the ability to add site verification codes and scripts from systems such as Google Analytics and Yandex.Metrika for trafic analysis. Users who wonder to receive donations for his projects can create and import custom donation modal dialogs.
 Instead of looking at screenshots, it is better to look at the working site to decide on installing cGit-UI on your own server.
 cGit-UI depends of following libraries: libpcre2, libmd4c, libmd4c-html, libmagic, and libgit2.
 Also cGit-UI depends on the cScm package. Therefore, before installing cGit-UI, you have to install and configure cScm Configuration Daemon.
 To use cGit-UI a web server must be installed and configured on the system. We recommend the Nginx with uWsgi application server. Of course, Git SCM system should be installed too.
 To obtain sources we have to checkout its from SVN repository:
 and run the bootstrap script:
 Also cGit-UI source packages are available for download on the Radix.pro FTP-server.
 The bootstrap script especially created for Autotools install automation. To install Autotools into the source directory on the build machine (i.e. when build == host) the bootstrap script can be run without arguments.
 In this case Autotools will be installed from current root file system.
 For the cross environment the --target-dest-dir option allows to install some stuff from development root file system:
 For example, in this case the aclocal.m4 script will be collected from the
${TARGET_DEST_DIR}/usr/share/aclocal directory.
 Also we can make use of additional variables such as CFLAGS, LDFLAGS:
 The system user, on whose behalf the Nginx server is launched, must have permissions to access the directory in which the cGit-UI CGI script was installed:
 Additionaly if nginx user has not enough permissions to access repositories we have to change owner of /var/www/htdocs/cgit/cgit-ui.cgi script and set SUID or SGID bit:
 Since we used the --with-scriptdir=/var/www/htdocs/cgit option on configuring stage, the cGit-UI CGI script installed in the /var/www/htdocs/cgit/ directory. In this case, the /etc/uwsgi/cgit-ui.ini file should look like this:
 Where /var/www/htdocs/cgit/cgit-ui.cgi is the full name of installed cGit-UI CGI script.
 To run the uWSGI daemon for cGit-UI backend we can make use following start/stop script:
 To run this daemon on systems with BSD-like initialization such as Slackware we have to add the following lines to the /etc/rc.d/rc.M and /etc/rc.d/rc.6 scripts correspondingly.
 First of all, we have to add a virtual server to the main Nginx config file:
 The following configuration used uWsgi and will serve cGit-UI on a subdomain like cgit.example.org:
 A detailed description of the configuration file format can be found in the cgit-ui.rc(5) manual page:
 As an example, we will give a working configuration file in which the pkgtools.git repository is presented.
      README, cscmd(8), cgit-ui.rc(5)
 Enjoy.