· 421 words · 2 minute read

Hugo import Jekyll

This blog used to run on Jekyll.

I was quite happy with that, until some kind of Ruby change meant Jekyll stopped running and I got into an arms race with Ruby versions. Jekyll needs Ruby A.64, the gems for Jekyll need Ruby B.85, the gem-updater won’t work with Ruby A.64, OSX ships with a different Ruby, Linux on the server yet another…

Added to that, my theme used gulp as a task runner and needed lots of npm modules. These ran into the same problem with conflicting dependencies.

It was messy and fickle.

Yesterday it broke again: my blog refused to build on the server. Instead of patching up the mess, I decided to spend my time on changing to a more robust system.

Enter Hugo #

Hugo is another static site generator. It runs on Go. I have revisited with it, as I use it to build the “paaspuzzel”. The big advantage is that Hugo is self contained: there’s no need for plugins or node modules.

A simple hugo import jekyll did the trick. All my articles got imported and mostly everything worked.

I wasn’t done yet. For a long time I’ve been annoyed that images are in a different folder than the blog posts themselves: this makes it difficult to edit with (for instance) iA Writer. Luckily Hugo has a trick for this called page bundles for posts. I now store posts per year, and each post is a directory. A lot less messy. The only downside is I have to go through each article and change the image references…

Then there’s more “manual labor”: I picked a simple theme, but I want to adapt it to my liking. That’s probably a never ending project 😂

The final change for this blog is that I am now typing this article on my phone with Working Copy. This was already possible the old setup, but one change leads to another! So far I’m loving it!


I need to apologize to my three RSS readers. Hugo broke the feed which means a lot of unread articles for you. I’m also changing the urls of all the articles (because of the bundles), which may lead to more unread articles.

If possible, please change the feed url from feed.xml to index.xml. I couldn’t figure out how to rename the feed with Hugo 😅 The reason it still works is because I setup Cloudflare to reroute it, but better to change url manually in your reader as that’s not a long term solution!