Latest articles

Cut the noise: Declarative web components with HTMLElementSugar

HTMLElementSugar simplifies web component development by eliminating boilerplate for attribute definitions, aliases, templates, and configuration inheritance.

Config based git hooks for fun and profit

Git 2.54 adds config-based hooks, letting you share hooks across projects without a shared hooks directory — and without Husky staging a hostile takeover.

How to replicate bum

Bum is small scripts, sensible guardrails, and gitconfig as a runtime — all built on git's own plumbing. No magic, no reinvention. Just git, used well.

All your Traefik are belong to us

Run Traefik as a permanent service on your dev box. One wildcard cert, with real domains, and self-registering Docker projects. Scales to production too.

Greybeards rise

How I unified my entire desktop under one vim colorscheme, iceberg, spanning terminal, prompt, i3, rofi, screensaver, and git. Consistency over aesthetics.

I just wanted PHP 8.2 (Composer had other ideas)

Create a Laravel 12 project targeting PHP 8.2 while running 8.4. Composer said no. This is the docker workaround, and the permission fix that followed.

Yet Another CLI framework

YA::CLI is a Perl CLI framework that eliminates boilerplate by auto-discovering subcommands, handling POD help pages, and using Moo roles — so you just write the logic.

Latest answers

Question: apt wants to remove packages during testing/unstable upgrade. How do I fix it?

When apt wants to remove packages during an upgrade on Debian unstable, focus on what to install. Use apt-cache, aptitude to trace deps and guide the resolver.

Question: My Debian doesn't boot with a GUI

Troubleshoot Debian not booting to GUI by checking display manager status, systemd targets, and default-display-manager configuration.

Question: How do I register deepin-terminal as an alternative on Debian?

Register custom terminal emulators in Debian's alternatives system using update-alternatives, including --slave option for man page integration.

Question: How does Debian solve converging configuration files?

Learn how to override Debian package configs without losing changes during upgrades using .d directories, ordering, and dpkg-diver