Skip to Main Content

How to Make Your Own Bulk App Installer for OS X


The worst part about setting up a new Mac is finding and downloading all your software. It's time-consuming, boring, and usually feels like a waste of time. Thankfully, with just a little bit of setup, you can automate the whole process with Homebrew and Homebrew Cask so you never have to do it again.

What Is Homebrew?

Homebrew is a command line utility that automates the process of downloading most of the apps you'll want to install on a new computer. Essentially, you can just type in a single command in Terminal to download and install software instead of searching for it in your browser, downloading it, and then running an installer. This includes stuff like Chrome, aText, and more. Once you set Homebrew up, you can save your installation script and get your new Macs set up in seconds. Basically, Homebrew simplifies the process of downloading and compiling software. Typically speaking, it does this by downloading source code from sites like GitHub.

We'll also use Homebrew Cask, which allows Homebrew to download popular programs at once. Where Homebrew concentrates more on installing developer tools, Homebrew Cask lets you install more common software like Chrome or Spotify. You'll need both Homebrew and Homebrew Cask installed.

Step One: Install Homebrew and Homebrew Cask

The first thing you'll need to do is install Homebrew. So, open up Terminal (in Applications > Utilities) and type in this command:

ruby -e "$(curl -fsSL "https://raw.githubusercontent.com/Homebrew/install/master/install)"

Once that finishes up, we'll install Homebrew Cask and hook it into Homebrew. Type these two commands into Terminal:

brew tap caskroom/cask
brew install caskroom/cask/brew-cask

That's it! Both Homebrew and Homebrew Cask are now installed.

Step Two: Familiarize Yourself with Cask

Now that Homebrew and Homebrew Cask are installed, it's time to familiarize yourself with how Homebrew Cask works. Technically, you can skip straight ahead to step three if you want to just create a new system installation script, but it's good to get your bearings a bit before moving on.

Homebrew Cask has a few basic commands that you'll want to know. You have four commands you'll likely use more than others: search, install, uninstall, and cleanup.

Here's what to type into Terminal to install an app:

brew cask install app name

and to uninstall:

brew cask uninstall app name

Homebrew Cask uses specific names for apps that aren't always intuitive. So, if you're not sure of an app's specific name, you can search for it:

brew cask search app name

And if you want to see every single app available for download with Homebrew Cask, type in:

brew cask search

After you've installed a bunch of software you can also have Cask cleanup and delete all those downloaded files you no longer need:

brew cask cleanup

While these four commands are pretty much the only ones you'll usually use, Homebrew Cask has a ton. You can get a full list of commands by typing in:

brew cask

With that you'll have a pretty good grasp on what you can and can't do with Homebrew and Homebrew Cask.

Step Three: Make an Install Script

Now, we're going to make a list of every program we want to include in the install script. For this, we'll need to make sure apps are available with Homebrew Cask. So, we'll search for each of them. For example, if you want to include Chrome, you'd type in:

brew cask search chrome

Which will display:

==> Partial matches   <br>chrome-remote-desktop-host  google-chrome  chromecast

Now we know that "google-chrome" is the program name we'll need. We'll use that information to make a script using a text editor.

Open your text editor of choice (we like TextMate), and create a new script. First, we need to tell the file that it's a script, so make the first line: #!/bin/sh. That will be followed by a list of installation commands. Here's an example that grabs everything from the 2013 Lifehacker Pack for Mac except Wunderlist and the extended pack:

#!/bin/sh <br>brew cask install quicksilver <br>brew cask install notational-velocity  <br>brew cask install evernote <br>brew cask install atext <br>brew cask install google-chrome <br>brew cask install sparrow <br>brew cask install adium <br>brew cask install skype <br>brew cask install reeder <br>brew cask install vlc <br>brew cask install handbrake <br>brew cask install plex-media-server <br>brew cask install picasa <br>brew cask install spotify <br>brew cask install dropbox <br>brew cask install utorrent <br>brew cask install skitch <br>brew cask install growlnotify <br>brew cask install crashplan <br>brew cask install the-unarchiver

When you're done, save the file as caskconfig.sh. Considering you'll want to run this on new computers, it's a good idea to save it on a cloud storage service like Dropbox or an external drive like a USB stick. Once it's saved, we need to make it executable. Pop back into Terminal, point it toward the file's directory, and type in:

chmod a+x caskconfig.sh

Now, on a new system, follow step one to install Homebrew and Homebrew cask. Then, move caskconfig.sh into your home directory, and type this into Terminal to install all your apps:

./caskconfig.sh

That's it! You just created your own custom installation package that'll make installing new apps on a new Mac a cinch.