These are my dotfiles — various config files and scripts that I like to carry with me between machines.
Things are mostly written by me unless indicated otherwise; feel free to steal anything you like whole or in part.
Comments, questions, and suggestions are always welcome; the best way to do this is probably just adding an issue.
(This is mostly for my own reference - you probably want to just pick and choose things rather than install everything if you're not me).
-
Install Linux (I'm on various distros on different machines - some things in this repo are likely distro-specific or outdated).
-
Do the following:
mkdir -p ~/src/github.com/bobwhitelock
cd !$
git clone https://github.com/bobwhitelock/dotfiles
cd dotfiles
./install
vim zsh/env.private.sh # And appropriately set any needed secret env vars.
source zshrc
# Copy over private files, SSH keys, AWS credentials etc.- Fix the things which will probably break/be incomplete in the above, and update steps for next time.
A .local-customizations/ directory (git-ignored) can be placed in this repo
to override or extend config without modifying the repo itself. A separate
repo can symlink files/dirs into it to activate overrides.
The directory mirrors the relevant parts of this repo:
.local-customizations/
├── zsh/
│ ├── env.sh # Sourced at end of zsh/env.sh (overrides take precedence)
│ └── lib/
│ └── *.sh # Auto-sourced after main zsh/lib/ files
├── gitconfig # Included by main gitconfig (overrides user.email etc.)
├── vim/
│ └── *.vim # Auto-sourced at end of vimrc
├── bin/
│ └── * # Scripts linked to ~/bin/ via dotbot
└── tmuxinator/
└── *.yml # Configs linked to ~/.tmuxinator/ via dotbot
See tests/fixtures/local_customizations/ for a documented example.