Reproducible home setup using chezmoi.
chezmoi will run a package install script on first run, and anytime dependencies change.
- ✅ macOS (Apple or Intel)
- brew is required to download packages
- ✅ Debian / Ubuntu
⚠️ Windows- Only some settings are supported
⚠️ WSL Debian / Ubuntu- Biometric 1Password authentication not available
⚠️ Ephemeral workspaces (GitPod / Codespaces)- Minimal package installation to reduce startup time
- No access to secret files
You can bootstrap the environment by downloading the bootstrap file and using bootstrap.sh -g
which will download and install chezmoi and link it to this GitHub repository.
Running bootstrap.sh
without the flag will also download and install chezmoi, but link it to the local directory instead.
Software | macOS | Debian | WSL | GitPod / Codespaces |
---|---|---|---|---|
oh-my-zsh | ✅ | ✅ | ✅ | ✅ |
Starship | ✅ | ✅ | ✅ | ✅ |
direnv | ✅ | ✅ | ✅ | ✅ |
1password-cli | ✅ | ✅ | ✅ | |
docker | ✅ | ✅ | ✅ | |
kubectl | ✅ | ✅ | ✅ | |
azure-cli | ✅ | |||
nvm | ✅ |
The following files are stored and retrieved via 1Password:
.ssh/id_rsa
.gnupg/pubring.kbx
.gnupg/trustdb.gpg
chezmoi will automatically download and install the 1Password CLI on supported platforms, and will wait until 1Password is available before attempting to restore the secret files.
After chezmoi installs packages, either set up biometric unlock or # manually.
Once complete, open a new console to allow zsh to find 1Password and set the flag stating it's available. Run chezmoi init
again to restore the secret files with the stored session.