Terminal multiplexer with multiple panes

Terminal Multiplexing: tmux vs Zellij vs Screen

You SSH into a server. You start a long-running process. Your connection drops. Process dies. Terminal multiplexers solve this. They keep sessions alive, split your screen into panes, and let you work on multiple things without opening twelve terminal windows. I’ve used all three major options. Here’s what I learned. What Is a Terminal Multiplexer? A terminal multiplexer runs between your shell and terminal emulator. It: Persists sessions: Detach, reconnect later, everything still running Splits screens: Multiple panes in one window Manages windows: Switch between workspaces Works remotely: Same interface whether local or SSH’d flowchart LR Term["Terminal Emulator"] --> Mux["Multiplexer"] Mux --> Shell1["Shell 1"] Mux --> Shell2["Shell 2"] Mux --> Shell3["Shell 3"] GNU Screen: The Original Screen has been around since 1987. It’s installed everywhere, it works, it’s ugly. ...

May 14, 2026 · 7 min read · Tom Meurs
Learn the defaults - portability over customization

Learn the Defaults: Why Portability Beats Customization

I have a confession: I spent years perfecting my dotfiles. Custom vim mappings, tmux prefix changed to Ctrl+a, fancy shell prompts, aliases for everything. My setup was perfect. And then I SSH’d into a production server to debug an issue, and I was useless. No custom mappings. No plugins. No aliases. Just vanilla vim with its default keybindings that I had completely forgotten. I fumbled around, couldn’t remember how to do basic navigation, and felt like a complete beginner. ...

February 15, 2026 · 7 min read · Tom Meurs
Dotfile management with mise and chezmoi

Dotfile Management with mise and chezmoi: The Perfect Combo

I’ve been using the same .zshrc for years. And my .vimrc. And my tmux config. Over time they’ve grown into a carefully tuned system that does exactly what I want. The problem: I have multiple machines. A laptop, a desktop, sometimes a VM for testing. And keeping everything in sync was always… improvised. Finding the right dotfile management solution took me years. I tried everything. And I mean everything. The Long Search It started with the classic: a bare git repo in my home directory. git init --bare ~/.dotfiles, some aliases, done. It works, but it’s fragile. One wrong git clean and you’ve nuked your configs. And good luck with machine-specific settings. ...

February 11, 2026 · 8 min read · Tom Meurs
YubiKey with pass, GPG and SSH integration

YubiKey + Pass + GPG + SSH: One Key to Rule Them All

There’s a moment when everything clicks. You plug in your YubiKey, type your PIN once, and then everything just works. SSH to servers? No password. Sign git commits? Automatic. Get a password from pass? Touch the key and done. That moment took me about three evenings of frustration to reach. But now that it works, I never want to go back. Why This Setup? I had a problem: too many authentication methods. ...

January 13, 2026 · 6 min read · Tom Meurs
pass password manager, gpg, unix, cli, password store

Pass: the Unix password manager that just works

I used KeePass for years. Then 1Password. Then Bitwarden. All decent tools, but they always felt… like too much. Too much UI, too many features, too much hassle to integrate properly into my workflow. Then I discovered pass. A password manager that does exactly what the name says: store passwords. Nothing more, nothing less. What is pass? Pass is the “standard unix password manager.” It’s a shell script of ~700 lines that stores passwords as GPG-encrypted files in a directory. That’s it. No database, no proprietary format, no built-in cloud sync. ...

January 10, 2026 · 7 min read · Tom Meurs