Uses
The tools I use every day
The hardware and software behind my work — for building, for running servers, for the homelab, and for living on the Linux desktop. Several of these I built because I wanted them to exist.
Desktop
- Arch Linux — a rolling base I understand completely.
- Hyprland — a tiling Wayland compositor that stays out of the way.
- Darwan — my own themes for the login and lock screens.
- Walker — a fast, keyboard-driven application launcher.
Terminal and editor
- Neovim — my editor for almost everything.
- Insensical — my own multiplexer, built for long agent sessions.
- Ghostty — a fast, native terminal emulator.
- Quarry — my SQL client for PostgreSQL, MySQL and SQLite.
Languages
- Rust — for tools and desktop apps that must be fast and dependable.
- Ruby — for products, and the joy of Rails.
- TypeScript — for the browser, typed end to end.
- QML — for Qt interfaces on the Linux desktop.
Frameworks
- Ruby on Rails 8 — the backbone of Nibble.
- Vue 3 and Inertia — server-rendered pages that behave like an app.
- Tailwind CSS — design tokens in code, as this site shows.
- GPUI — GPU-accelerated native UI in Rust, used by Sysman.
Data and shipping
- SQLite — for far more than people expect; this site runs on it.
- PostgreSQL — when many writers need one database.
- Kamal — zero-downtime deploys to a plain server.
- Homebrew — how Quarry and Insensical reach people.
Hardware
F1Workstation — Ryzen 9 7950X3D
16 cores and 32 threads, a GeForce RTX 4090 and 128 GB of memory, running Arch Linux on 2 TB of btrfs. Big builds and virtual machines without waiting.
27-inch 1440p display
2560×1440 at 120 Hz — sharp enough for text all day, fast enough that scrolling feels right.
MacBook Pro M1
For work away from the desk, and for building and testing the macOS side of my tools.
A compact 96% mechanical keyboard that switches between the workstation and the MacBook.
The mouse for long days; the free-spinning wheel earns its keep in long logs.
Desktop
F2A rolling base I understand top to bottom, and the distribution I ship packages for.
A tiling Wayland compositor: fast, scriptable, and out of the way.
An opinionated Arch and Hyprland setup I follow and adapt.
The application launcher: fast, keyboard-first and easy to extend.
DarwanBuilt by me
Themes for my login and lock screens.
SysmanBuilt by me
Watching my own machine — and remembering what it did.
Terminal
F3My editor for almost everything, configured with AstroNvim for a polyglot week.
A fast, native terminal emulator with excellent defaults.
InsensicalBuilt by me
My multiplexer for long-running work and parallel coding agents.
Still on every server I administer, because it is always there.
QuarryBuilt by me
My SQL client for PostgreSQL, MySQL, MariaDB and SQLite.
just
Every project's commands in one readable file — checks, releases, packaging.
Languages
F4Rust
For tools, daemons and desktop software that must be fast and dependable.
Ruby
For products, and for the sheer productivity of Rails.
TypeScript
For the browser, typed end to end — from the schema to the view.
Python
For automation, scripts and generating things — this site's artwork included.
Bash
The glue of every server, written carefully.
QML
For Qt interfaces on the Linux desktop.
Frameworks
F5The backbone of Nibble — Solid Queue, Solid Cache and SQLite included.
Vue 3 and Inertia
Server-rendered pages that behave like an app once loaded.
Tailwind CSS
Design tokens in code, as this site shows.
ratatui
Terminal interfaces in Rust — Quarry, Darwan and rrussat.
GPUI
GPU-accelerated native UI in Rust, used by Sysman.
Servers & ops
F6Zero-downtime deploys of containers to plain servers — including this site.
Docker
Packaging applications so production is the same everywhere.
systemd
Services, timers, sandboxing and the journal — far more capable than it gets credit for.
Ansible
Configuration as code for fleets of servers.
OpenSSH
Keys, jump hosts and tunnels — the most important tool on every server.
Self-hosted chat, with its sticker tooling.
Analytics without tracking, self-hosted.
Homelab
F7One node runs the whole lab as LXC containers and virtual machines, new ones cloned from an Ubuntu 24.04 template.
DNS for the whole network, with ads and trackers filtered out before they reach a device.
The reverse proxy in front of every service, terminating TLS.
Single sign-on for the lab: one identity, one login, every service behind it.
My own Git server, for what doesn't belong on GitHub.
Private metasearch: results from many engines, with nothing about me sent to any of them.
Reaching the lab from outside without opening a port — tunnelled through Pangolin and Newt, or over a self-hosted Tailscale network.
One private network across the homelab, my servers and my laptop.
A home-server OS for one-click apps, in a virtual machine of its own.
An agents VM
Coding agents get a virtual machine of their own, kept apart from everything else on the lab.
Data
F8PostgreSQL
When many writers need one database.
SQLite
For far more than people expect — this site, Nibble and Sysman all run on it.
MySQL & MariaDB
Still behind a great deal of the web I look after.
Object storage
Off-site backups and uploads, kept separate from the server that makes them.
Shipping
F9Git & GitHub
Every change reviewed, every release tagged.
AUR
How my Linux tools reach Arch users.
How Quarry and Insensical reach macOS.
Cloudflare
Static sites and documentation at the edge.