This is a first-class chezmoi source repository for the public, reproducible
parts of the WSL development environment.
Layout:
.chezmoi.toml.tmplBootstrap config template forchezmoi init.dot_*Actual chezmoi-managed source state..chezmoiignore.tmplPrevents repo-only docs and manifests from being applied into$HOME.docs/LOCAL-SECRETS.mdLocal-only data and secrets workflow.docs/VALIDATION.mdHow to validate the source state withchezmoi.manifests/Restore manifests that stay in the repo but are ignored by chezmoi apply.scripts/restore-public-dev-env.shBase tooling bootstrap foraptpackages, Homebrew, and the Brewfile bundle.
Deliberate exclusions:
- private credentials and secrets
- all Khoj-related config, data, and environment variables
- machine-local caches, logs, histories, and runtime state
- autogenerated files that are not useful for restore
- machine-specific launcher and trust state
- local identity values and machine-specific paths
Basic usage:
git clone https://github.com/bcorfman/public-dotfiles.git ~/src/public-dotfiles
~/src/public-dotfiles/scripts/restore-public-dev-env.sh
chezmoi init https://github.com/bcorfman/public-dotfiles.git
chezmoi applyThis source state is designed to restore Git-on-WSL using Windows Git Credential Manager, not SSH-agent-based Git auth.
On newer Ubuntu WSL releases such as 26.04 resolute, this repo defaults the
browser command to xdg-open instead of wslview, since wslu is no longer
packaged there.
For that to work after a WSL rebuild:
- Windows Git must be installed.
- The Git Credential Manager helper must exist at the path supplied through local chezmoi machine data.
- The Windows Credential Manager entries must still exist in the Windows user profile.
Post-restore verification:
git config --global --get credential.helper
git config --global --get credential.credentialStore
git ls-remote https://github.com/bcorfman/public-dotfiles.gitIf git ls-remote succeeds without prompting for new credentials, the restored
WSL environment is correctly using Windows Git Credential Manager.