Dotfiles | Ben Cunningham


Written by Ben Cunningham · on April 7, 2018

About a month back, I started investing some time into tracking my dotfiles with git. I try to leave a small digital footprint so reinstalling Ubuntu after something gets borked isn’t too difficult. However, after moving my desktop to the oft-elusive i3wm full-time, I realized I really ought to formally version and automate my system setup.

I initially spent quite a bit of time researching elegant frameworks, others’ ad hoc approaches, and even how to use bare git repos to get the job done. Nevertheless, I eventually settled on the boring, but straightforward approach of symlinks.

To get started, I now just clone my dotfiles repo from GitHub and run the custom bash installer I wrote. The installer then guides me through backing up existing dotfiles, installing the dotfiles from my personal repo, and installing other software with APT.

git clone ~/dotfiles
cd ~/dotfiles
./ -i

All considered, it’s at least a functional way of getting up and running with my configurations on a fresh machine. It takes a bit of effort to maintain, but it gets the job done with minimal software and human dependencies.