Skip to main content

Moving to Blowfish

··756 words·4 mins
Blog Configuration Personal
Author
Moulting Penguin
Table of Contents

Liftoff is unsupported
#

So it turns out Liftoff goes out with a whimper:

I no longer have time to work on this theme for various reasons.

OK, yeah, I get it. Most Hugo themes appear to be some rando who wanted to create a <insert site of your type>, and, since Hugo users have to choose to use a theme (either one they download or they create) they have to. . . either create one or download one. But as I’ve mentioned elsewhere, people generally don’t want to invest their time in creating something, so people are more than happy to find some other poor bloke’s github repository of their theme. Of course, who knows how many people create their own and don’t share it. There are a number of them, I assume, since I ran into a site where they said they’d released a version of their theme after they moved to creating a new theme. So what’s weird about that is they weren’t releasing the new one, and explicitly said they’d release the new one when they were done with it and created a new one. WTF? This just sounds so weird – why would you only release code to the public after you no longer wanted to work on it. By definition, you aren’t using it anymore, and clearly aren’t going to put any effort into maintaining it. I mean, seriously, it’s like casting off something and saying “Hay, maybe you’d find the this thing I no longer use might be interesting”. Sigh.

Anyway, to get back to the topic at hand, Liftoff is no more. This is because I updated Hugo (I have a script to update brew and upgrade all the <things>) and then Liftoff’s theme wouldn’t build the site anymore. So, faced with this, I had two options:

  1. Dive into figuring out why Liftoff wouldn’t work.
  2. Switch themes

#1 would required I invest some time into it. I mean, I tried a quick search and found some things that might be the problem, but my quick fixes didn’t work. So this made me realize maintaining Liftoff would basically be the same as creating my own theme. And if I were going to do that, I might as well, well, do that

So I decided to look at some other themes. But if I were going to go with another theme, the lesson here is “don’t pick a theme supported by an individual who is doing it as hobby for their own web site”. Clearly, there are a few themes that are very popular, and have some sort of effort being put into them. And, so I looked around at some of the blogs I read. Blowfish was used by more than one. So let’s give that a try.

I had actually tried to use Blowfish once before. but had some problems. I don’t remember what they were. But when I went to install the theme, I couldn’t even download the damn thing. I got an error about failing to download all the chunks or something. A quick google led to some git config settings1.

After successfully downloading the submodule, it turned out the conversion was a little easier than I expect. In fact, using Blowfish helped me find solutions to a few things:

  • Blowfish supports a better image usage. I can set the “hero” image, and tell pages (of all types) to use the hero image as the background.
  • I found that the categories and tags I’d been using (which are shown in everything!) had significant overlap. This makes me realize there was no good taxonomies definitions. Nothing like seeing duplicate tags/categories. :-)

Overall, it just seemed. . . easier. I figured that when I first tried to use Hugo, I had a lot of issues. I don’t remember why I aborted trying to use Blowfish (maybe it was I just couldn’t download it :-)), but it seems to be working for now. In addition, I learned a little more about using hugo server. :-)2

[n.b. Updated 10/26/24 to move this to projects, since I’ve decided to maintain a list of projects for this making this blog]


  1. Specifically, packedGitLimit, packedGitWindowSize, deltaCacheSize, packSizeLimit, and windowMemory. See this StackOverflow question. I put it in the .git/config file rather than adding them as global settings. ↩︎

  2. So, I used “emoticons”. What the hell is a an emoticon, you ask. This is: :-). Emoticon’s are the precursor to emojis. When we had only “text”, we wrote :-), which is the text equivalent of 😄 ↩︎