A script to set up a macOS laptop for development.
It can be run multiple times on the same machine safely. It installs, upgrades, or skips packages based on what is already installed on the machine.
Forked from here
We support:
- macOS Monterey (12)
- macOS Big Sur (11)
- macOS Catalina (10.15)
Older versions may work but aren't tested.
(These commands should be run in Terminal)
To open Terminal:
- Press Command+Space and search for Terminal.
- Hit enter
Copy the below command into Terminal and hit enter:
curl --remote-name https://raw.githubusercontent.com/CrugBarat/ANDigital-onboarding-mac-setup/develop/mac
Then copy the below command into Terminal and hit enter:
sh mac 2>&1 | tee ~/laptop.log
You will need to enter your computer password a few times throughout the script to allow installations
You are all set 🎉🎉🎉 - it should take less than 15 minutes to install (though this depends on your machine).
At the end of the installation script, another script will run to attempt to check if any applications failed to install. (occasionally may claim some application are missing that aren't)
You can repeat this by running the following lines in terminal (although it's not required):
curl --remote-name https://raw.githubusercontent.com/CrugBarat/ANDigital-onboarding-mac-setup/develop/laptop_install_test
sh laptop_install_test
NB: If you have any issues with running these scripts, please reach out to your AND Onboarding Admin.
- Apple's Command Line Developer Tools to enable developer functionality on our macOS system.
- Homebrew for managing operating system libraries.
- Git for version control
- Zsh as your command line shell
- Oh My Zsh to add nice features to zsh - autocompletions, shortcuts etc.
- tree for visualising directory structure from the Terminal
- Ruby
- Rbenv for managing versions of Ruby
- Bundler for managing Ruby libraries
- Ruby Build for installing Rubies
- Java
- Node.js for JavaScript back-end development, and
- NPM for installing JavaScript packages
- PostgreSQL for storing relational data
- MongoDB for storing non-relational data
- Google Chrome for web browsing and development
- VSCode IDE
- Slack for team chat
- IntelliJ IDEA CE for Java development
- MongoDB Compass for accessing MongoDB databases from a GUI
- Docker
- Open Dyslexic for accessibility