]> Sergey Matveev's repositories - sgblog.git/blob - README
Initial working version
[sgblog.git] / README
1                 SGBlog -- Git-based CGI blogging engine
2                 =======================================
3
4 DESCRIPTION
5
6 SGBlog is a simple blogging engine with a Git-based storage and CGI
7 interface with HTTP-server. It can be used as a cgit replacement for
8 readonly Git repository viewing and Atom feed generation. But it has
9 better features:
10
11 * URLs are tried to be converted to clickable links
12 * SHA1 hashes are tried to be converted to blog links itself
13 * Relative <link rel> links are included for easy navigation
14 * Each page has ETag and it is checked against the request for client-side
15   caching
16 * Pages can be gzip-compressed, depending on Accept-Encoding header
17
18 CONFIGURATION
19
20 SGBlog is configured via environment variables:
21 * SGBLOG_GIT_PATH points to .git directory you want to serve
22 * SGBLOG_BRANCH points to the branch in it (refs/heads/master for example)
23 * SGBLOG_BASE_URL points to full URL before the possible SGBLOG_URL_PREFIX
24 * SGBLOG_TITLE sets the index title
25 * SGBLOG_ATOM_ID sets Atom feed's id
26 * SGBLOG_ATOM_AUTHOR sets Atom feed's author name
27 * If SGBLOG_URL_PREFIX is set, then all link will be prefixed with that URL
28 * If SGBLOG_CSS is set, then link to that CSS URL will be generated
29 * If SGBLOG_WEBMASTER is set, then "made" link well be generated
30 * If SGBLOG_ABOUT is set, then about link is generated at the bottom
31 * If SGBLOG_GIT_URLS is set, then links to that vcs-git space-separated
32   URLs will be generated
33
34 Example lighttpd's configuration:
35
36     setenv.add-environment = (
37         "SGBLOG_GIT_PATH" => "/home/git/pub/stargrave-blog.git",
38         "SGBLOG_BRANCH" => "refs/heads/russian",
39         "SGBLOG_BASE_URL" => "http://blog.stargrave.org",
40         "SGBLOG_TITLE" => "Russian Stargrave's blog",
41         "SGBLOG_ATOM_ID" => "urn:uuid:e803a056-1147-44d4-9332-5190cb78cc3d",
42         "SGBLOG_ATOM_AUTHOR" => "Sergey Matveev",
43         "SGBLOG_URL_PREFIX" => "/russian",
44         "SGBLOG_WEBMASTER" => "webmaster@stargrave.org",
45         "SGBLOG_CSS" => "http://blog.stargrave.org/style.css",
46         "SGBLOG_GIT_URLS" => "git://git.stargrave.org/stargrave-blog.git https://git.stargrave.org/git/stargrave-blog.git",
47         "SGBLOG_ABOUT" => "http://blog.stargrave.org/",
48     )
49
50 LICENCE
51
52 This program is free software: you can redistribute it and/or modify
53 it under the terms of the GNU Affero General Public License as
54 published by the Free Software Foundation, version 3 of the License.
55
56 This program is distributed in the hope that it will be useful,
57 but WITHOUT ANY WARRANTY; without even the implied warranty of
58 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
59 GNU General Public License for more details.