USB Cable Testing on Linux
usbmon turns Wireshark into a cable tester, and finds retransmissions on cables that supposedly work.
Sean Behan's website and blog
usbmon turns Wireshark into a cable tester, and finds retransmissions on cables that supposedly work.
A flake that builds a signed unified kernel image, for rescuing a Steam Deck locked out by Secure Boot.
Quadlets describe a container as a systemd unit, so systemd owns the lifecycle instead of Podman.
Cloudflare email routing plus Workers AI: an inbox that answers its own mail.
What a flake actually is: inputs, outputs, and a NixOS configuration with every dependency pinned.
A tour of the rewritten cf-workers-telegram-bot API for running a Telegram bot on Cloudflare Workers.
The fuzzy search on this site, built with fuse.js.
HTTP Basic Auth with a session cookie in SvelteKit, backed by Cloudflare D1.
Wiring Workers AI into a Telegram bot: the AI binding, the model call, and getting a reply back.
Ostree is not just for Silverblue. Using it as a content-addressed snapshot store for your own files.
Swapping the Flatpak Mesa runtime for mesa-git so a new AMD card stops falling back to software OpenGL.
Setting up a two-disk BTRFS RAID1 for a Steam library, and repairing it when a drive starts throwing errors.
Flatpak makes the host distribution almost irrelevant, down to proprietary codecs and games on musl Alpine.
Compiling the out-of-tree 8814au driver for an Alfa AC1900 on Fedora, kernel headers and all.
Running GUI applications like telegram-desktop inside a container with x11docker, xpra and Wayland.
podman generate systemd plus an autoupdate label: containers that start on boot and update themselves.
Getting Podman onto cgroups v2 and crun on distributions that still default to cgroups v1 and runc.
useState, what triggers a re-render, and where React state should actually live.
Building a reusable, nestable card component while learning how React composition works.
Why an atomic rpm-ostree desktop stuck: updates that check out like git, and roll back the same way.
Alpine can commit changes back onto its own live ISO. Using LBU to build a persistent maintenance drive.
Moving a password store between pass and KeePass, and getting two YubiKeys to guard all of it.
Part one of a Rust series: a WebSocket server built on the ws crate.