6108f8df01
After some toil, I have a working proof-of-concept blog. The idea is simple: write blog posts in markdown and store the posts in the `./posts` directory. Then use the server and `pandoc` to convert these markdown files into HTML at request time. I'm using nix to package everything together. It's far from perfect, but it works at the moment, which is encouraging.
28 lines
629 B
Nix
28 lines
629 B
Nix
{
|
|
nixpkgs ? import <nixpkgs> {},
|
|
depot ? import <depot> {},
|
|
universe ? import <universe> {},
|
|
...
|
|
}:
|
|
|
|
let
|
|
injectedPosts = nixpkgs.writeText "posts.lisp" ''
|
|
(in-package #:server)
|
|
(setq *path-to-posts* "${./posts}")
|
|
'';
|
|
injectedExecutables = nixpkgs.writeText "executables.lisp" ''
|
|
(in-package #:server)
|
|
(setq *pandoc-bin* "${nixpkgs.pandoc}/bin/pandoc")
|
|
'';
|
|
in depot.nix.buildLisp.program {
|
|
name = "server";
|
|
deps = with depot.third_party.lisp; with universe.third_party.lisp; [
|
|
hunchentoot
|
|
cl-arrows
|
|
];
|
|
srcs = [
|
|
./src/server.lisp
|
|
injectedPosts
|
|
injectedExecutables
|
|
];
|
|
}
|