X-Git-Url: https://git.hcoop.net/clinton/website/site/unknownlamer.org.git/blobdiff_plain/cb44b69be59b2387df40b925ed6ff287afa6b4c0..3cb3fdfc2e16501e3fdac68b8855d91c3df935bd:/Site%20Software.html diff --git a/Site Software.html b/Site Software.html new file mode 100644 index 0000000..c37164f --- /dev/null +++ b/Site Software.html @@ -0,0 +1,137 @@ + + + +
+I work on the static content of the site using Emacs Muse. My muse +configuration is pretty long and available in my +site-emacs repository. The site itself exists in a darcs repository +which is a fork of the source repository I edit locally—the source +repository contains muse/image files while the site repository +contains html updates as a separate series of patches.
+ +This provides a very nice editing environment and makes publishing +fairly easy—I push edits from my laptop to my workstation and then +off to HCoop with the html updates. Almost no effort is spent dealing +with some dumb web interface or other pointless things making it much +easier for me to just write things and toss them up onto the web.
+ + +There are a few scripts and templates in the darcsweb::site-support +repository that I use to update the +site. darcsweb::site-support/update.sh automates the process of +sending patches off to the server via afs.
+ +Book List is autogenerated by darcsweb::site-support/books.lisp which +reads a template and a small sexp database of book entries and spits +out a muse file which is not kept under VC. This works well for me +currently, but I intend to eventually upgrade this simple system to an +Elephant object database with a CLIM frontend for editing +entries. I'll probably end up writing a minimal database manager for +the sexp based system first.
+ + +The site rss feed is generated by darcsweb::site-support/rss.lisp. It
+fetches the darcs xml changelog for interesting files and then spits
+out a tolerable feed with automagically generated links from *.muse
to
+*.html
. A dumped binary is run from a darcs hook on the main
+repository that handily updates the feed whenever I commit.
apply posthook update-site-rss
+apply run-posthook
Boring old Apache is used to serve up the generated feed. The feed +stays updated when I update, and Apache deals with properly letting +readers know when the file last changed and whatnot.
+ + + +All of the scripts used to generate the site are in the public domain +unless otherwise mentioned in the files themselves. To use them +anywhere else would require modification, but a few chunks of code +could be generally useful for other things.
+ + + + + + + + + + \ No newline at end of file