ello learns

This whole experience seemed painfully obvious in retrospect and I felt a bit dumb, so on the off-chance I'm not the only one in this position, let me save you some time.

If you are:


  1. import the sprite using whatever your regular React-component-ification system looks like,
  2. render it on the page someplace with display: 'none';,
  3. change your href="/path/to/sprite.svg#my-cool-icon" to href="#my-cool-icon

and that's it.


It's the last puzzle piece for this lil' blog o' mine: image hosting.

The hosted version of #WriteFreely, write.as, will do image hosting for you with their paid snap.as service. I'm running the open-source self-hosted version, so I'm on my own.

I wanted something lightweight and easy to maintain with roughly the user experience of #imgur:

  • No gallery nonsense, this is just for individual storage and retrieval
  • Let me paste images directly from my system clipboard, no mucking about with my local file system
  • Everything is public but read-only, so everybody can see what I upload but I'm the only one who can upload

The sprint at the end of the UAE Tour Women was wild and unexpected, so I'm going to rant about it with blurry screengrabs from GCN+.


My primary work and development environment is Linux. Ubuntu on machines with desktops, Debian on servers.

On Ubuntu machines one of the first things I set up is tilda, which gives me a Quake-style terminal: available all the time, starts hidden, and displays across the top half of my primary monitor on a global hotkey (I use F1). I think the built-in tabs are kind of ugly so I really go nuts and run a GNU screen session inside it0. Tilda means I always have a terminal available, no matter what virtual desktop I'm on or what I'm doing.


Valheim is an open-world survival game. You play as a dead Viking warrior that Odin has resurrected to kill some baddies. There's almost no introduction or tutorial. You just get dumped, naked, onto a procedurally-generated continent, and have to figure everything out from there.

It's great. I've put over 800 hours into it.

Valheim runs on the Unity game engine, which means it's infinitely modifiable. I play with a couple mods, nothing serious, just a few “make farming marginally faster” and “reduce rage when things fall into the water” tweaks. I also use a mod that organizes the many game world servers I frequent, since the built-in server organization tooling is (was, really) non-existent. The mod is called QuickConnect, and it gives me a nice set of buttons that will connect and authenticate me to all my servers.

With a recent game update to Valheim, that authentication bit fell over. Not to worry, thunk I, for I am a ✨programmer✨.


I've been using Mail-in-a-Box to self-host my own email and DNS for about four-ish years. I got in before VPS providers started cracking down on SMTP traffic, and I've been pretty happy with the experience. Except for the time I procrastinated upgrading so far that I had to get upgrade instructions off the Wayback Machine, but that was my own fault.

Mail-in-a-Box comes configured with a Munin installation. I'd never really touched it beyond browsing the graphs and hmmm-ing sagely, but as I was moving a bunch of other servers around I realized that Munin is intended to aggregate monitoring from a whole network, not just one server. I had five servers scattered around doing things like hosting websites and serving Steam games, so hooking them up to a monitoring hub seemed like a win.


Cute might be generous but it'll at least feel more like me.



Hello is this thing on

Hi? Hi. You're here. I'm here! I think I'm live?

Let's just get down to brass tacks. Writefreely has a setup guide, and somebody named Karl wrapped it all up into a Dockerfile. I borrowed heavily from both resources to end up here. I'm not putting my configs in a nice repository to share because they're probably terrible and should not be used by anyone, but they seem to be working so I'll talk about them.