Set up a brand new Mac with all your developer tools and apps automatically by running a single command.
Fork the playbook and customize it to create your own repeatable Mac setup you can reuse after every reinstall.
Provision a remote macOS machine over SSH with a consistent developer environment without sitting at the machine.
Keep your Mac tools and settings versioned in git so you can track what changed over time.
Requires installing Ansible before running, defaults are the author's personal config and need customization to match your own preferences.
This repository contains an automated Mac setup script that installs and configures a developer's tools and applications in one pass. The author, a web and software developer, uses it to get a new or wiped Mac ready for work without manually installing and tweaking dozens of programs one by one. The automation is built on Ansible, a tool that lets you describe what software and settings a computer should have, then applies those descriptions to reach that state. You run a handful of commands to get Ansible set up, then a single command runs the playbook and handles the rest. It installs command-line tools, desktop applications, programming language runtimes, and system preferences. The default setup includes common developer applications like Docker, Slack, Google Chrome, Firefox, and Sublime Text, along with a long list of command-line tools such as Git, Go, Node, PHP, and various networking utilities. It also applies the author's personal configuration files, known as dotfiles, and configures macOS system settings. All of these defaults can be overridden: you create a personal configuration file and list only the packages and apps you want, without modifying the main playbook. The playbook can also be pointed at a remote Mac over SSH, not just the machine you are sitting at. That makes it usable for setting up a cloud-hosted Mac or another machine on your network. The repository is one person's personal setup, shared publicly so others can fork it and adapt it to their own needs. The README includes a detailed from-scratch setup guide for those who want a complete reference. The project is tested automatically on GitHub Actions using real macOS infrastructure, so changes can be verified without wiping a physical machine.
← geerlingguy on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.