Angerwhale is a filesystem-based blog with integrated cryptography.
Angerwhale is blogging software that reads posts from the filesystem, and determines authorship based on the post's PGP digital signature. These posts can be in a variety of formats (text, wiki, HTML, POD), and new formats can be added dynamically at runtime. Posting comments is also supported, and again, authorship is determined by checking the digital signature.
Features include guaranteed valid XHTML 1.1 output, social tagging, categories, syntax highlighting (see http://blog.jrock.us/articles/Syntax Highlighting.pod for details), RSS and YAML feeds for every article, comment, tag, and category, nested comments, intelligent caching of everything, space-conserving mini-posts, search-engine (and human!) friendly archiving, a flashy default theme, and lots of other cool stuff.
Trying Angerwhale is pretty simple. Download the tarball from CPAN, and extract it. Then, run
$ perl Makefile.PL
$ make test
make test will run the test suite to make sure Angerwhale works on your system. You can then run the test server:
$ perl script/angerwhale_server.pl
You'll then be able to connect to http://localhost:3000 and see your blog. There's already a sample post, so that should show up and you should be able to leave a comment or log in.
If all goes well, open up the config file, angerwhale.yml, and customize the options to your heart's content. You specifically might want to set base to some place more convenient than the root/posts directory that ships with Angerwhale.
(There are more config options than those listed; for now grep the source for "config" to find them all. You shouldn't need to change the defaults, though; they're reasonable.)
Playing with Angerwhale a bit
Add a file to the base you set up earlier, and you'll see it rendered as a blog post. Edit it, and watch Angerwhale update the modification time (but preserve the creation time). Sign it, and watch your name show up on the post. Log in (on the login page), and add tags. Create a subdirectory in base, symlink some posts into it, and watch them show up in a new category. Try posting some comments.
There's tons more you can do, so explore the code or join the IRC channel! Enjoy!