|
@@ -1,4 +1,6 @@
|
1
|
|
-Coleslaw aims to be flexible blog software suitable for replacing a single-user static site compiler such as Jekyll.
|
|
1
|
+# coleslaw
|
|
2
|
+
|
|
3
|
+Coleslaw aims to be flexible blog software suitable for replacing a single-user static site compiler such as Jekyll. Coleslaw was a nickname of my favorite poet [Czeslaw Milosz](http://blog.redlinernotes.com/tag/milosz.html).
|
2
|
4
|
|
3
|
5
|
# Features
|
4
|
6
|
* Git for storage
|
|
@@ -12,6 +14,7 @@ Coleslaw aims to be flexible blog software suitable for replacing a single-user
|
12
|
14
|
# Installation
|
13
|
15
|
This software should be portable to any conforming Common Lisp implementation but this guide will assume SBCL is installed. Testing has also been done on CCL.
|
14
|
16
|
Server side setup:
|
|
17
|
+
|
15
|
18
|
1. Setup git and create a bare repo as shown [here](http://git-scm.com/book/en/Git-on-the-Server-Setting-Up-the-Server).
|
16
|
19
|
2. Install Lisp and Quicklisp.
|
17
|
20
|
3. For now, git clone https://github.com/redline6561/coleslaw.git inside ~/quicklisp/local-projects/. This is only temporarily necessary until coleslaw is in quicklisp.
|
|
@@ -20,6 +23,7 @@ Server side setup:
|
20
|
23
|
6. ```chmod +x your-blog/.git/hooks/post-receive```
|
21
|
24
|
7. Create or clone your blog repo locally. Add your server as a remote with ```git remote add prod git@my-host.com:path/to/repo.git```
|
22
|
25
|
8. The only thing left to do is point a web server of your choice at the symlink /path/to/deploy-dir/.curr/
|
|
26
|
+
|
23
|
27
|
Now whenever you push a new commit to the server, coleslaw will update your blog automatically! You may need to git push -u prod master the first time.
|
24
|
28
|
|
25
|
29
|
# The Post Format
|
|
@@ -36,12 +40,14 @@ your post
|
36
|
40
|
|
37
|
41
|
# Importing from Wordpress
|
38
|
42
|
There is a "plugin" to import from wordpress. At some point, it should be turned into a standalone script. Until then...
|
|
43
|
+
|
39
|
44
|
1. Export your posts from wordpress.
|
40
|
45
|
2. In your lisp of choice, do the following:
|
41
|
46
|
1. ```(ql:quickload 'coleslaw)```
|
42
|
47
|
2. ```(in-package :coleslaw)```
|
43
|
48
|
3. ```(load-plugins '(import))```
|
44
|
49
|
4. ```(coleslaw-import::import-posts "/path/to/export.xml")```
|
|
50
|
+
|
45
|
51
|
The XML will be read and placed into .post files in the :repo location specified in your [.coleslawrc](http://github.com/redline6561/coleslaw/blob/master/example.coleslawrc).
|
46
|
52
|
|
47
|
53
|
# Writing your own plugins
|