use safe markdown for comments to prevent xss
[iankelling.org] / README
1 Content and automated setup of iankelling.org
2
3
4 * Setup
5
6 setup.sh sets up apache and gitweb
7 build.rb does static site generation
8
9 Dependencies for running ./setup.sh DOMAIN: A modern debian based system
10 (tested on debian 8, and debian 8 testing).
11
12 Some shell scripts need to be sourced before running setup.sh:
13 https://iankelling.org/git/?p=distro-functions;a=summary
14 And some programs need to be in PATH:
15 https://iankelling.org/git/?p=basic-https-conf;a=summary
16 https://sallymae.club/git/?p=acme-tiny-wrapper;a=summary
17 chost from
18 https://iankelling.org/git/?p=fai;a=summary
19
20 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
21 hardcoded directory in setup.sh: gitroot=/a/bin/githtml. These
22 directories are managed separately, mostly by rsyncing them.
23
24 Only the latest version of resume is kept in the resume branch which
25 gets rebased on master.
26
27 ./build.rb is not a generalized site generator, it has some content
28 files specific to my site that it expects.
29
30 Dates in the blog directory can be generated with date +%F
31
32
33 * Comments
34
35 New comments are stored in a sqlite database. There is a system for
36 moderating, rate limiting, and handling comments based on previously
37 seen ips. See _site/cgi/comment. Ones that are not moderated for spam
38 etc, are stored to disk for checkin on the next run of build.rb.
39 get-comments, set-comments, and iank-mod.el are for moderating new
40 comments. With one emacs command, you get a buffer of the new comments,
41 with keybinds to mark them for publishing, moderatation, banning, and
42 execute changes.
43
44 * Inspirations
45
46 http://blog.zorinaq.com/release-of-hablog-and-new-design/?
47 https://mjg59.dreamwidth.org/
48 http://bettermotherfuckingwebsite.com
49 https://eduardoboucas.com/blog/2015/05/11/rethinking-the-commenting-system-for-my-jekyll-site.html
50
51 * License
52
53 Non-software is cc-by-sa 4 unless stated otherwise. Software is under
54 GPLv2 or later unless stated otherwise. I'd use gplv3 or agpl, but it's
55 simpler to use the same license as the gitweb javascript.
56
57 The elisp is GPLv3 because emacs is.
58
59 The opensans font is Apache2 licensed, from google fonts,
60 the license is included in the LICENSE file.