DEV Community

Cover image for Easy, automated macOS setup
donnybrilliant
donnybrilliant

Posted on

Easy, automated macOS setup

If you're like me, setting up your Mac manually after a format or clean install can be a tedious task.
It's a time-consuming, repetitive process that I'd rather skip.
So, in a burst of frustration, I created a script to automate the whole process.

install.sh:
It's a simple bash script that performs a variety of tasks to prepare a macOS machine for use:

  • Updates macOS to the latest version.
  • Installs Homebrew, the package manager for macOS.
  • Installs essential software and applications through Homebrew casks and formulae.
  • Offers the choice between installing Node.js via NVM (Node Version Manager) or Homebrew.
  • Installs global NPM packages.
  • Provides options to install additional software, such as .NET, Firefox Developer Edition, PostgreSQL, MySQL, MongoDB, Epic & Steam, Unity Hub, and Figma.
  • Cleans up the installation environment by running brew cleanup and other maintenance commands.
  • Sets up Git with global username and email configurations.
  • Installs VSCode extensions.
  • Installs selected apps from the App Store using mas (Mac App Store command-line interface).
  • Installs and configures ohmyzsh for a better terminal experience.
  • Applies custom system settings and Dock configurations to optimize the user experience.
  • Automatically updates Homebrew installed packages with a specified frequency.

Just clone the repo, tweak the config file to your liking, and run it. It's that simple.
It's set up to my liking as a web developer by default.

Here's the link to the script on GitHub: https://github.com/donnybrilliant/install.sh

I'm hoping it can save you some time and make setting up your Mac a bit easier.
It's designed to be a starting point, so I'm really keen to hear your feedback, suggestions for improvements, or any cool tweaks you'd add.

Top comments (0)