Version managed portable development environment configuration for JS/TS devs on OSX.
Important
This repo contains no personal data or secrets, but some configs are specific to our org and developer tooling. For example, it has some opinionated usage of AWS SSO and cert bundles.
All modules are linked in .zshrc and can be disabled to choose which to apply.
- Install PREREQUISITES before executing install script
- Follow INSTALL instructions to clone and install default tools
- Assign SECRETS required for shell and git config
- Setup ASDF for multiple language and version support
- Configure AWS SSO profiles for authenticating with AWS
- Create KEYS for SSH and GPG access to git cloud providers
To update your local dotfiles and get the benefit of any contributions since you setup your machine:
- Go to the dotfiles path
cd $DOTFILES
- Make sure you have no uncommitted changes:
git status
- Ensure you're on the primary branch:
git checkout trunk
- Pull latest changes:
git pull
- Rerun installer to get new modules:
dotfiles-install
When installing a new tool that reads configuration from $HOME
:
- Create folder for configs:
mkdir $DOTFILES/config/my-new-tool
- Move any default configs:
mv $HOME/my-new-tool-config $DOTFILES/config/my-new-tool
- Stow to link back to home:
stow -v -t $HOME -d $DOTFILES/config -S my-new-tool
When adding a new environment module (any custom shell configs, functions, alias etc):
- Create (and edit) code:
touch $DOTFILES/environment/my-new-module.sh
- Start a new terminal session or run
zsh
to initialise in place
After adding a new package to brewfile
, run brew bundle install --file=$DOTFILES/brewfile
Commit and push any changes above to save for future installs.
Re-running install script will also reload modules . $DOTFILES/install.sh