New blog
afresh1@ graciously hacked up a Plack app for blogsum and like that I was rid of mod_perl and blogsum was running again. However I had for a long time been contemplating moving to something else, something with fewer dependencies and which could run in either nginx or OpenBSD’s httpd(8). I had looked at sblg but I didn’t really want to write XML nor am I good enough at CSS to figure out how to get it to look enough like my existing blog, so it fell to the wayside.
One day I ran across reyk’s post about moving to sblg and there I had 95% of all the scaffolding I needed to get my blog converted. Using that and then hacking up the CSS wasn’t too hard (how hard is an all black theme anyway?). There were a few stumbles, he has all his posts in a single directory which offends my sense of order as I liked to have them grouped by at least year. A few hours of hacking the Makefile and templates and that was mostly fixed. Then came the big one, I have tags which are not single words, now sblg explicitly allows for this but the Makefile could not handle it. In the end it was really just three changes but as someone unfamiliar with Makefiles and whose shellscripting skills are on the rudimentary side it took way longer than expected. I’m also fairly certain my solutions are inefficient, they work but they could probably be vastly superior.
Lastly I had to add some rewrites to nginx to deal with the changed uri, on the old blog it contained the month as well as year, this was dropped as I don’t post enough to warrant the additional directories. The old uri could also contain colons, which now have to be dropped. The rewrite proved quite simple, which is always nice.
Other than squeezing some efficiency out of my Makefile, my other remaining issue is figuring out if there is a way to include the bandcamp links in the markdown version which each post starts as. As I read it, this doesn’t seem possible, but perhaps there is some way around it. For now the workaround is to insert them later in the xml file directly. Ugly and hackish but it works.