Content and automated setup of iankelling.org * Dependencies 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 ./build.rb * Usage notes 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. Only the latest version of resume is kept in the resume branch which gets rebased on master. ./build.rb is not a generalized site generator, it has some content files specific to my site that it expects. Dates in the blog directory can be generated with date +%F * 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. 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 execute changes. * Other sites that are in some way interesting: http://blog.zorinaq.com/release-of-hablog-and-new-design/? https://mjg59.dreamwidth.org/ http://bettermotherfuckingwebsite.com https://eduardoboucas.com/blog/2015/05/11/rethinking-the-commenting-system-for-my-jekyll-site.html https://chris-lamb.co.uk/posts/concorde * License Non-software is cc-by-sa 4 unless stated otherwise. Software is under GPLv2 or later unless stated otherwise. I'd use gplv3 or agpl, but it's simpler to use the same license as the gitweb javascript. The elisp is GPLv3 because emacs is.