Moving an Existing Service Into a Container
Taking something installed with apt and running it in a container instead, without discovering three weeks later that it was writing somewhere you forgot. The inventory, the parallel run, and…
A Home File and Media Server
Storage that other machines can reach, permissions that survive more than one user, Samba and NFS side by side, and media streaming — plus the sentence about RAID that people…
A WireGuard VPN, Set Up Properly
Reaching your own machines from anywhere, in about forty minutes. Key generation, the one setting everybody misunderstands, split versus full tunnel, and how to diagnose a handshake that never happens.
NixOS: A Machine You Describe Rather Than Configure
One file defines the whole system, every change is a new generation you can boot back into, and nothing is installed the usual way. The genuine advantages, the flakes question,…
Void Linux: Rolling, Independent, and Not systemd
Its own package manager, runit instead of systemd, and a choice of glibc or musl. What Void does well, the install images that are eighteen months old, and who it…
Zorin OS and elementary OS: The Two Opinionated Desktops
Both are Ubuntu LTS underneath and both are aimed at people arriving from Windows or macOS — with opposite philosophies. What each actually gives you, what the paid editions add,…
Gentoo: Compiling Everything, and Why You Might Not Have To
USE flags are the real reason to run Gentoo, not speed. What Portage actually does, the official binary packages that changed the trade-off, and an honest account of the time…
lazygit: The Git Operations Nobody Memorises
A terminal interface over git that makes staging individual lines, interactive rebasing and stash juggling take seconds. What it is good at, and why you should not learn git through…
procs vs ps: Finding a Process Without a Pipeline
procs searches by name, shows which ports a process is listening on, and prints a readable tree. Where it helps, and why ps is still what every script and every…
HTTPie vs curl: Talking to APIs Without the Flags
HTTPie sends JSON by default and prints readable, coloured responses. The syntax translated, where curl remains the only sensible choice, and the faster reimplementation worth knowing about.
