summaryrefslogtreecommitdiff
path: root/haunt.scm
blob: 44cfd4d4646b80c875be24dbfa7905d588e87822 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
;; The main Haunt entry-point for my site.

(use-modules (haunt site)
	     (haunt post)
	     (haunt asset)
	     (haunt reader)
	     (haunt builder blog)
	     (haunt builder atom)
	     (haunt builder assets)
	     (haunt publisher rsync)
	     (dnw theme)
	     (dnw tags)
	     (dnw static-pages)
	     (srfi srfi-19)
             (srfi srfi-26))


(define (org-string->date str)
  "Convert STR, a string in Org format, into a SRFI-19 date object."
  (catch 'misc-error
    (lambda () (string->date str "<~Y-~m-~d ~a ~H:~M>"))
    (lambda (key . parameters) (string->date str "<~Y-~m-~d ~a>"))))

(register-metadata-parser! 'date org-string->date)

(site #:title "Through the Heart of Every Man"
      #:domain "functorial.xyz"
      #:default-metadata
      '((author . "Duncan Wilkie")
	(email  . "dnw@functorial.xyz"))
      #:readers (list html-reader)
      #:builders (list (blog
			#:theme dnw-haunt-theme
			#:prefix "/posts")
		       index-page
		       me-page
		       friends-page
		       influences-page
		       tags->page
		       (atom-feed #:blog-prefix "/posts")
		       (atom-feeds-by-tag)
		       (static-directory "assets"))
      #:publishers (list (rsync-publisher #:destination "/var/www/functorial"
					  #:user "publish"
					  #:host "functorial.xyz")))