Configuration and settings to rapidly bootstrap a new machine using Chezmoi
We're using ZSH with Oh My Zsh for plugins and Antigen for plugin management. Applications, tools and utiliies rely on Homebrew for package management.
Our shell is Starship, running in iTerm2 and Visual Studio Code terminals, with a fallback setup for macOS Terminal running bash
. We're using modern alternatives to cd
, cat
and ls
.
Of course, secrets stay in 1Password, which also handles SSH key management and commit signing.
With an existing setup, back everything up first. You will need XCode command-line tools and Homebrew, see below.
- Install the prerequisites and
brew install chezmoi
thenchezmoi init grendel-consulting
, either manually or with the.bootstrap.sh
script - Preview with
chezmoi diff
- Apply with
chezmoi apply
Optionally, run the following one-liner:
sh -c "$(curl -fsLS get.chezmoi.io)" -- init --apply grendel-consulting
Everything not handled by Chezmoi is manual; some existing todos:
- Adopt sensible macOS privacy, productivity and security defaults
- Adopt secret versioning and hashes, coupled with tagging to telegraph
- Extract other configuration, i.e. for Flux, Ice, Rectangle, iTerm2, VS Code, Chrome, Sublime
- Adopt and configure atuin and direnv
You will need to sign in to various tools for their own inbuilt syncing to happen: 1Password, vscode
You may need to launch tools first time to configure launch on startup and checking for updates
You may need to explicitly grant permissions to various tools: Flux, Ice, Rectangle
You may opt to install the Kolide Launcher agent
Regular maintenance tasks should be handled through scripts here too.