tvl-depot/blog/default.nix
William Carroll 6108f8df01 Support proof-of-concept blog
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.
2020-01-23 22:01:06 +00:00

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
];
}