/macosa

Automate the state of your macOS or OSX environment

Primary LanguageShell

Get up and running quickly with a new macOS install the way you want it. And keep it that way.

Getting Started

  1. Before you do anything, you should check out this short presentation on macOSa
  2. Install your operating system, supported versions so far:
  1. See info on how to run the install script:
bash <(curl https://raw.githubusercontent.com/rockholla/macosa/master/install) -r -h
  1. Check out how to customize to fit your needs: https://github.com/rockholla/mymacosa. Fork that repo into your own, make all of the changes you like and push back up to your public fork. macOSa will ask you for this repo location at install time. If you'd like a jumpstart with how to write your customizations, feel free to check out the customizations I built and use.

  2. When you're ready to install, run the following:

bash <(curl https://raw.githubusercontent.com/rockholla/macosa/master/install) -r

or if you'd like to install the full Xcode app/suite (not just tools):

bash <(curl https://raw.githubusercontent.com/rockholla/macosa/master/install) -r -x full
  1. Follow the prompts, you'll be up-and-running pretty quickly and easily

Other Helpful Info

macOSa is focused on making things easy and quick. To this end, it attempts to minimize the amount of times you have to input your account/machine password. We believe it's important to make you aware that, after you provide it on initial install, it writes this password in plain text to your machine under ~/.macosa/vars/internal.yml as well as ~/.macosa/.vaultpass. It's a bit like a key inside the thing that it opens, so we feel it's a reasonable practice as long as you're following other standard practices to secure your machine and account. We know this might not be acceptable for everyone though, so we just want to make you aware.

macOSa is currently designed for new installs only. There might come a time where you could install it on an already-running and configured install of macOS, but not yet.

Please submit issues or pull requests if you find something that needs fixing or if you think something should be changed. You can of course take what's available here and run with it on your own, but remember that submitting useful things back to the community is important and what this project is all about.