Moving to Jekyl

Farewell Ghost

After persevering with Ghost for a couple of years, I'm moving this site to Jekyll. I've only ever wanted to have a simple blog with some commenting features and Ghost appeared to be a good solution. However I find myself repeatedly having to hack up either my preferred templates or the ghost basic configuration in order to retain even simple functionality. I'm sure those with the hosted version of Ghost are quite happy with it, but as a self hosted solution it appears to be far too much work. I don't follow all the Ghost related discussions, but I am left with the impression that the focus of the writers has drifted from writing focused sites to more diverse features. I won't criticise that direction, but it has made hosting a Ghost instance much more work than I'd like.

Why self host?

There's a lot of good advice out there that tell's people that "just want to write", to use a hosted solution. If I'm leaving Ghost because it's too much of a headache to maintain, why not pay someone else to have that headache? The simple answer is that I still want to have some involvement with the infrastructure I use to deliver content. This is because I test and often write about some of that infrastructure.


I know I'm late to the party with Jekyll and there are now some other static site generators. But Jekyll appears to be the right tool for me right now. I'll probably collate a list of links I found that were useful in setting my site up. Since there are so many excellent articles about customising Jekyll, I'll spare the Internet my own rambling discussions. But if there's something on my site that you're not sure how to do, ask me in the comments and I'll happily tell you how and which smart person's blog helped me do it.


So far I've only encountered one problem:

Jekyll doesn't like Ansible

A lot of my posts include Ansible code snippets and when these include any type of jinja syntax or variables, Jekyll thinks those are placeholders for it's Liquid templating engine. The simplest work around is to put {% raw %} and {% endraw %} tags just before and after the code block. You can also turn off Liquid parsing in the front matter of each page with render_with_liquid: false. Naturally, both of these will prevent you from creating code blocks with the {% highlight %} syntax. And therein lies my one and only frustration with Jekyll so far. If I want to have line numbers in my code snippets which contain Ansible, then I must define it site wide in the _config.yml file. It doesnt bother me much at the moment, but I'll be keeping an eye out to see if there is a solution.

Here's to more content

With less effort required to maintain my blogging software, surely I'll have more posts here. hmm let's see how I go!


I recently switched to Hugo. I will leave this page available, but please note that my site is no longer hosted using Jekyll.