← ClaudeAtlas

managing-chezmoi-packageslisted

Use this skill when managing packages, external dependencies, binaries, or CLI tools in a chezmoi dotfiles repository. Handles adding/updating/removing packages in .chezmoidata/packages.yaml, creating .chezmoiexternals/ organized files, pinning versions with Renovate automation, and selecting the correct package ecosystem (Homebrew, mise, Python, Docker, chezmoi externals).
martinemde/dotfiles · ★ 9 · Data & Documents · score 72
Install: claude install-skill martinemde/dotfiles
# Managing Chezmoi Packages Adding a dependency here means three things, not one: picking the right ecosystem, pinning it to something immutable, and making sure Renovate can see the pin. Skip the third and the pin quietly rots — which is worse than no pin, because it looks maintained. ## Pick the ecosystem first The wrong manifest usually works on the machine you're sitting at and diverges elsewhere, so resolve this before editing anything. `./ecosystem-guide.md` covers the trade-offs; the short version: | Use case | Ecosystem | Location | | ------------------------- | ----------------- | -------------------------------------------------------- | | macOS packages (Homebrew) | brew/cask/mas | `home/.chezmoidata/packages.yaml` | | CLI developer tools | mise (Aqua) | `.mise.toml` or `home/dot_config/mise/config.toml` | | Python tools | pip | `home/dot_config/dotfiles/requirements.txt` | | Docker/devcontainer | docker | `home/dot_config/docker-compose/*.yml`, `.devcontainer/` | | External files/repos | chezmoi externals | `home/.chezmoiexternals/*.toml[.tmpl]` | | Install script CLIs | cli-versions | `home/dot_config/dotfiles/cli-versions.toml` | ## Pin immutably | Type | Pinning method | Example | | -------