One set of dotfiles to rule them all. In theory at least. Managed with yadm for flexibility. Made while streaming SomaFM Groove Salad through moOde audio player.
- Plugin-oriented
- Vim version 8 or newer
- zsh
- Ergonomics
- Multi-Platform support
- Automated package installation for apt and homebrew 🍺
- OS X Catalina
- Ubuntu 20.04
- Bare metal, LXC, and Docker
- Flexibility
- minimal bootstrap provides consistent look and feel
- optional features available for more customized environments
- Optional features
- Git author configuration
- Identity (SSH/GPG)
- More to come
Tested and tuned on these operating systems:
- OS X Catalina
- Ubuntu 20.04 Server
Yadm will git stash
your existing dotfiles before overwriting them. You can
always run yadm stash show -p
to access and restore your dotfiles.
Ubuntu 20.04:
apt install yadm &&
yadm clone https://github.com/TimSpence/dotfiles.git
OS X Catalina:
brew install yadm &&
yadm clone https://github.com/TimSpence/dotfiles.git
After installation, bootstrap with this command to enable the basic features:
.config/yadm/bootstrap --minimal
Alternatively, bootstrap with this command to enable everything:
.config/yadm/bootstrap --all
I like using containers--Docker or LXC--for testing so I don't spend all my time fixing bare metal.
Dockerfile inspired by zinit-configs.
This is in progress, but here are the steps:
mkdir some-temp-dir
# copy Dockerfile and dotfiles to a temp dir
docker build --build-arg TERM="${TERM}" --build-arg user=me --tag dotfile-tester path-to-temp-dir
docker run -ti --rm dotfile-tester env TERM="${TERM}" zsh -i -l