Skip to content

System architecture

This repository separates what is versioned from what is installed. home/ is the chezmoi source tree; it renders login profiles, editor settings, and managed agent configuration into the home directory. packages/ declares package-manager ownership. install/ turns those manifests into idempotent machine state. bootstrap.sh orders those operations and checks selected runtime postconditions.

The source-to-runtime model

home/ and packages/

bootstrap.sh

chezmoi apply

install/*.sh

managed files in HOME

LOCAL_PLAT runtimes

login and interactive shells

verify-tools.sh

dotfiles-* overlays

Wide diagrams scroll horizontally. Focus the figure to use arrow keys.

The bootstrap obtains its own paths by sourcing install/_lib.sh, which in turn establishes the platform contract. It deliberately applies chezmoi with scripts excluded: installer stages own setup, while chezmoi owns rendered files. See bootstrap setup for the commands and chezmoi sources for editing the deployed configuration.

Kind of stateAuthoritative locationResulting location
Dotfiles and templateshome/managed paths below HOME
Package declarationspackages/Homebrew, Cargo, npm, uv, Go state
Installer logicinstall/local tools and service wiring
Host-specific datachezmoi data and environmentnever copied back into home/
Optional private extensionssibling dotfiles-* directoriestheir own bootstrap lifecycle

Do not edit a rendered ~/.zprofile, ~/.config, or ~/.codex file as the durable change. Edit its source under home/, then use chezmoi diff to view the proposed deployment. The root map names these boundaries and the common entrypoints in REPO-MAP.md.

Bootstrap verifies that selected command paths exist and that a small number of runtime probes work; the final gate is verify-tools.sh. It does not prove that a cloud credential works, that an optional local model is running, or that a graphical application has its privacy permissions. Those are separate operational checks. The architecture pages describe failure behavior and workflow pages show practical machine bring-up paths.