What does HackerNews think of mac-dev-playbook?

Mac setup and configuration via Ansible.

Language: Shell

#4 in Ansible
#4 in Homebrew
#50 in macOS
This is how I set up my Mac as well; just a local connection. Sets up out of box Mac in about 15 minutes and I can keep my two Mac's configs in perfect sync: https://github.com/geerlingguy/mac-dev-playbook
I symlink a few files in place via Dropbox, but have most of my local configs in a dot files repo: https://github.com/geerlingguy/dotfiles

Then for more systemwide configuration, I have an Ansible playbook I run every now and then (configures apps, dock item order, etc): https://github.com/geerlingguy/mac-dev-playbook

Nice - i learned few tricks from there. for the mac setup, I have been using this for years and works well for me. https://github.com/geerlingguy/mac-dev-playbook
I went a step further, and automated as much as I can with Ansible. Had to reinstall everything after an SSD failure recently, this made it a fun project. I'm also planning on upgrading my machine soon, so that should make the process a lot faster.

I started from this and customized it to my needs: https://github.com/geerlingguy/mac-dev-playbook

I use Ansible, and it pulls in everything I need, including my dotfiles, which are managed in a separate repo:

https://github.com/geerlingguy/mac-dev-playbook

I posted [mac-dev-playbook](https://github.com/geerlingguy/mac-dev-playbook) (an Ansible-based solution) a few weeks back, and this shell-script approach is in some ways a foil to a more heavyweight setup like the one I'm currently using.

Definitely not saying one way is better than the other, but as I've gone deeper into _needing_ to use more than one Mac, it's been easier to manage things with Ansible (which helps me maintain idempotence and uniformity between machines more easily). But if I were managing one Mac, I would probably lean further towards the simplicity of a script like this one.

Here's one example: https://github.com/geerlingguy/mac-dev-playbook

Makes it a lot simpler to do a clean OS install every upgrade, and to make sure all three of my Macs are perfectly in sync!

Why stop at your editor? Automate your entire workstation so every last config is identical across computers: https://github.com/geerlingguy/mac-dev-playbook
I've been using Ansible + Homebrew + Vagrant/VirtualBox for the past couple years, and am now able to provision a new Mac for myself in about an hour (with all my apps and settings in place for development) with a good internet connection.

See: https://github.com/geerlingguy/mac-dev-playbook

Once you start using VMs and/or containers for your development, you'll stop worrying about environments and breaking things :)

I'm working on Ansible for DevOps[1]. You can download a preview, which has a couple good chapters on setup and initial usage. Even for managing one server, a configuration management tool is a major help; I've started using Ansible to manage my Mac workstation as well[2] (so I can keep my two Macs in pretty much perfect sync).

I only assume the reader has basic command-line familiarity, but I try to make the writing approachable for both newer admins and veterans.

[1] https://leanpub.com/ansible-for-devops

[2] https://github.com/geerlingguy/mac-dev-playbook