A developer’s dotfiles incrementally replaced over years until nothing original remains – the Ship of Theseus problem applied to terminal config.
Key Takeaways
The Ship of Theseus framing captures how ~/.config and $HOME dotfiles accumulate tool sprawl across years of incremental changes.
Modern tools increasingly write their own directories into $HOME, fragmenting what was once a tidy config hierarchy.
The core tension is portability vs. personalization: a heavily tuned environment is powerful on one machine and disorienting everywhere else.
The $XDG_CONFIG_HOME standard was meant to contain this sprawl, but adoption is uneven and many tools still pollute $HOME directly.
Hacker News Comment Review
Commenters split sharply: one camp converged on near-stock settings plus a personal ~/bin of scripts for portability; the other pushed config management tools (Puppet, Ansible) to template and version the full machine state.
$HOME pollution from AI tooling and Electron apps is a live frustration – tab-completion muscle memory breaks as directories like .claude or .conductor appear ahead of expected completions.
GNU Stow and Guix Home are the most-cited lightweight solutions for dotfile hygiene; Ansible is recommended when the scope grows to full machine setup beyond just config files.
Notable Comments
@threecheese: Names Claude and Conductor specifically as recent $HOME polluters; “nd is juuuuuust ahead of nf” captures the tab-completion breakage concretely.
@PunchyHamster: Argues config management earns its weight for templating per-device parameters, not just syncing static dotfiles.