Engineering notes from Nairobi.

Notes on homelabs, Kubernetes, and the decisions that go into building software.

Featured · Infrastructure

The Kubernetes cluster is gone. One mini PC runs the whole house now: four network segments, a solar inverter Home Assistant can act on, and a guard that shuts the servers down before the battery does.

· 7 min read

Recent posts

2026

  1. The Checks That Lied

    I segmented my network, wrote tests to prove it, and watched the tests pass while measuring nothing at all. Then the same disease turned up in my home automation, and left a freezer switched off for thirteen hours in a house full of green ticks.

    Infrastructure · 14 min read

  2. Wiring Home Assistant Into My Solar Inverter

    A Growatt inverter, a Raspberry Pi running Solar Assistant, and Home Assistant on Proxmox. Bridging them took an MQTT broker, a form that silently discarded everything I typed, and a decision to keep the link read-only. Then it stopped watching the house and started switching it off.

    Infrastructure · 15 min read

  3. Opnsense - Firewall

    The rules that seal my IoT segment, in the order they have to be written, and the two that look redundant until you understand what they are for.

    Infrastructure · 8 min read

  4. GitHub Actions Things I Wish I Knew Earlier

    Matrix strategies, OIDC auth, registry caching, and a few footguns I hit setting up CI/CD for a monorepo.

    GitHub Actions · 4 min read

  5. Longhorn: distributed storage for my homelab

    How I use Longhorn for distributed block storage across my Kubernetes homelab. Replication, disk tags, GitOps management, and what happens when a node disappears for nine days.

    Kubernetes · 8 min read

  6. Pushing Docker Images to Azure Container Registry with GitHub Actions

    Set up a GitHub Actions workflow to build and push Docker images to ACR. Spoiler: the OIDC token approach doesn't work with buildx. Here's what does.

    Azure · 3 min read

  7. My Power Backup System

    A 5kW hybrid inverter and a 5.12 kWh battery, bought to ride out power cuts. Three years later the panels went up and it quietly became the primary supply, with the grid as the fallback.

    Infrastructure · 8 min read

  8. Branch-Based Deployments with Private Staging on Cloudflare

    How I use Cloudflare Pages for deployments and Cloudflare Access to protect my staging environment with email OTP authentication.

    Cloudflare · 6 min read

  9. Homelab Hardware

    The three mini PCs I bought for a Kubernetes homelab, what they cost, and what is left of them eighteen months later.

    Self-Hosted · 7 min read

  10. My Home Lab

    A tour of my Kubernetes homelab on Talos Linux with GitOps and full observability, and why I tore the whole thing down in August 2026.

    Self-Hosted · 8 min read

  11. Automating Cloudflare Pages with the API

    The Cloudflare Pages dashboard is fine but I'd rather just curl things. Here's how I set up staging and production branches pointing to different domains without touching the UI.

    Cloudflare · 3 min read