Personal machine setup for macOS and Ubuntu. Uses chezmoi for dotfiles and Ansible for system provisioning.
# Clone
git clone git@github.com:prokolyvakis/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
# Install prerequisites
make install
# Full setup (packages + dotfiles)
make applyhome/— chezmoi source directory. Manages dotfiles (zshrc, bashrc, gitconfig), modular shell configs (~/.shell/*.sh), and AstroNvim config.ansible/— Ansible playbook with roles for packages, zsh, tmux, fonts, nvm, and neovim.scripts/— Testing utilities (Docker smoke test).
make help # Show all targets
make dotfiles # Apply dotfiles only (chezmoi)
make system # Run system provisioning only (ansible)
make apply # Both
make lint # Lint ansible + yaml
make docker-test # Run full setup in a clean Ubuntu containerUses AstroNvim with AI completion via codecompanion.nvim using Claude (Anthropic). Set ANTHROPIC_API_KEY in your environment, then use :CodeCompanionChat in nvim.
GitHub Actions runs on every push/PR:
yamllint+ansible-lint+ syntax-check (Ubuntu)chezmoi verify(macOS + Ubuntu matrix)