Content and automated setup of iankelling.org
+* Dependencies
-* Setup
+Requires a modern debian based OS, tested on debian 8 & 9.
+
+Some programs need to be in PATH:
+https://iankelling.org/git/?p=basic-https-conf;a=summary
+https://iankelling.org/git/?p=acme-tiny-wrapper;a=summary
+chost from
+https://iankelling.org/git/?p=fai;a=summary
+
+
+* Installation
I use a submodule, so git clone --recursive.
-setup.sh sets up apache and gitweb
-build.rb does static site generation
+./setup.sh
+./build.rb
-Dependencies for running ./setup.sh DOMAIN: A modern debian based system
-(tested on debian 8, and debian 8 testing).
-Some shell scripts need to be sourced before running setup.sh:
-https://iankelling.org/git/?p=distro-functions;a=summary
-And some programs need to be in PATH:
-https://iankelling.org/git/?p=basic-https-conf;a=summary
-https://sallymae.club/git/?p=acme-tiny-wrapper;a=summary
-chost from
-https://iankelling.org/git/?p=fai;a=summary
+* Usage notes
-This repo does not include the repos under /git. In my own version, under /git are links to the .git dirs of the respective repos under the
+This repo does not include the repos under /git. In my setup,
+under /git are links to the .git dirs of the respective repos under the
hardcoded directory in setup.sh: gitroot=/a/bin/githtml. These
directories are managed separately, mostly by rsyncing them.
Dates in the blog directory can be generated with date +%F
-* Comments
+* Blog Comments
New comments are stored in a sqlite database. There is a system for
moderating, rate limiting, and handling comments based on previously
-seen ips. See _site/cgi/comment. Ones that are not moderated for spam
-etc, are stored to disk for checkin on the next run of build.rb.
+seen ips. See _site/cgi/comment. Comments that are not spam etc, are
+stored to disk for git commit on the next run of build.rb.
get-comments, set-comments, and iank-mod.el are for moderating new
comments. With one emacs command, you get a buffer of the new comments,
with keybinds to mark them for publishing, moderatation, banning, and