4 min read #tools

My Toolchain

This is the environment I use every day: Gentoo + Hyprland. The configuration is scattered across dozens of places, but truly systematic setups boil down to two things; everything else is just detail orbiting them.

First, there is only one source of color. When I change the wallpaper, matugen computes a Material You palette and pushes it to all applications — terminal, Quickshell, lock screen, launcher, input method, GTK. I never hand-fill color values in any config, and the entire desktop always uses a single color scheme.

Second, you only learn the movement keys once. The hjkl set is the same continuous keymap from Neovim windows, to Zellij panes, to Hyprland window focus, with no need to switch mental models in between.

The rest of my preferences are fairly plain: if it can be done in the terminal, I don’t open a GUI (git → lazygit, k8s → k9s, files → superfile). The few things that need to sync across machines go through chezmoi; the rest just sit in ~/.config.

EditorNeovimLazyVim base + LSP/debugging/Flutter/C#/input method switching
TerminalGhostty · WezTermPrimary: Ghostty; Windows: WezTerm
MultiplexerZellijSeamless jumping with nvim
DesktopHyprland EcosystemHyprland + Quickshell + matugen
ShellZshFocus on completion
CLICLI Toolboxrg / fd / bat / eza / delta
SyncchezmoiCross-machine dotfile management