Ansible Playbook to configure a fresh install of MacOS Big Sur on Apple Silicon.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jake Price 1331db2e21 Add packages 2 months ago
images Fix images 3 months ago
.gitignore Initial commit 3 months ago Update title and summary 3 months ago
ansible.cfg Remove vault password, not required 3 months ago
flags.yml Initial commit 3 months ago
playbook.yml Add packages 2 months ago

Ansible Playbook for Initial Configuration of MacOS Big Sur on Apple Silicon

Bare in mind these instructions are specific to my own device and infrastructure. Regardless of that, do feel free to adapt this repository to your own needs.

Mount Samba Share

Open Finder, and press ⌘ K to open the "Connect to Server" window. Enter smb:// and click Connect.

Confirm the attempt to connect.

Then enter credentials for the share.


Open up the default Terminal, and type pip3. This will then prompt you to install Command Line Developer Tools.

Next, change the default shell to Bash (from Zsh):

chsh -s /bin/bash

Next, upgrade pip.

pip3 install --user --upgrade pip3

Restart the terminal, and then proceed with the next steps.

Install Ansible

Install Ansible using the command below.

python3 -m pip install --user ansible

You may need to add the below PATH to .bashrc, if running ansible doesn't work straight away, as Ansible get's installed there.

export PATH="/Users/jpr/Library/Python/3.*/bin:$PATH"

Install Homebrew

/bin/bash -c "$(curl -fsSL"

Install Ansible Galaxy Collections

ansible-galaxy collection install community.general

Optional Tasks

To avoid running certain tasks (such as Homebrew) which may take a while to run, a number of boolean variables are provided in flags.yml.

By default they are all set to false.

For an actual intial configuration, or to make sure current software is up to date, the flags can be set to true.

# Download Ansible Galaxy Prerequisites:
download_galaxy: false

# Download applications that need manual installation:
download_apps: false

# Run Homebrew Packages:
run_homebrew_packages: false

# Run Homebrew Casks:
run_homebrew_casks: false

# Run Python pip:
run_pip: true

Run Playbook

ansible-playbook --ask-become-pass playbook.yml