This is a set of config files mostly starting with "." (hence the repo name) that allow consistent behavior between multiple tools across environments. Uses dotbot
Clone the repo (eg. to $HOME/.files or $HOME/dotfiles) and install with:
./install
Configuration for this is in config/install.conf.yaml.
Add "update" to update dotfiles, submodules, and system as in ./install update. This is configured in config/update.conf.yaml.
Some things like SSH keys or private configs shouldn't be used. You can use a secrets manager like bitwarden to store and sync these items.
- zsh+oh-my-zsh - shell autocomplete, history search, etc.
- starship - terminal styling
- Git - source code management
- Tmux & plugins via tpm - terminal multiplexer (splits/tabs, etc)
- herdr - a tmux-like multiplexer made for agents
- Neovim & plugins - telescope, lsps, formatting (based on kickstart.nvim)
- wezterm - cross platform terminal emulator
- macos
On unixy systems you can put system specific configuration in ~/.files/sys.sh and they will also be sourced.
- macOS
- Ubuntu