Sensitive files are encrypted. Replace them with your own
- Install git
- Download this repo
- Run
./bootstrap.sh(or./bootstrap-macos.shdirectly)
The bootstrap script will:
- Install Homebrew (if not present)
- Install Stow
- Install pipx and project dependencies (ansible, ansible-lint, yamllint)
- Set up dotfiles using Stow
ansible-playbook -i hosts dotfiles.yml --tags "macos"
# Run entire playbook
ansible-playbook -i hosts dotfiles.yml
# Run individual tags
ansible-playbook -i hosts dotfiles.yml --tags "<tag>"
# Run playbook with specific user
ansible-playbook -i hosts -u <username> --ask-become-pass dotfiles.yml
ansible-playbook dotfiles.yml \
-i hosts \
--tags macos \
--extra-vars="ansible_python_interpreter=$(which python)"
- Install git
- Download this repo
- Run
./bootstrap.sh(or./bootstrap-linux.shdirectly)
The bootstrap script will:
- Install build essentials
- Install Linuxbrew (if not present)
- Install Stow
- Install pipx and project dependencies (ansible, ansible-lint, yamllint)
- Set up dotfiles using Stow
Used to install and manage CLI tools (ansible, ansible-lint, yamllint) in isolated environments. This ensures clean installations without conflicts and makes it easy to update tools with pipx upgrade-all.
Get Mac Os values of settings
ansible localhost -i hosts -m community.general.osx_defaults -a "domain=NSGlobalDomain key=KeyRepeat state=list value=1" --extra-vars="ansible_python_interpreter=$(which python)"
- Used to download ansible roles that install common tools like chrome, docker, golang
- To add more roles, use command
ansible-galaxy install <role-name> ansible.cfgis used to specify target ansible directory