Automate Your OS X App Installations

"To install, drag this icon..." no more!

I refined my original cask script for installing the software needed on multiple Mac workstations. The new version now allows you to configure parameters of the installation such as install path and which category of applications you wish to install.

The point of this tool is to help me configure (or reconfigure) workstations as needed by removing the manual work of finding the applications I always use online, unpacking, and copying to applications folder. That process becomes a tedious task when working with dozens of pieces of software.

Fork it for your own use on Github!

Why a sudden update?

A new version of OS X El Capitan is to be released very soon. I’ve always felt installing a fresh OS ran smoother than doing an upgrade. Maybe the scars are that deep from the days of going Windows 95 to 98? Idk.

Anyways, I’ll be doing a fresh install of El Capitan and I wanted to make sure my apps were in order since I’ve last used my cask script. The process of manually installing each app takes longer than the actual OS install. Furthermore, I don’t need all apps installed in one shot so I broke them up into installable category groups… Something I have been itching to do since the original mockup.

How it works

You’ll notice a file called install.rb in the project root. This is the script you will interface with for installing (or uninstalling) applications. Applications are grouped by categories located in the ./category folder where you can add more or less.

You can get a list of configurable options by running the -h help option.

ruby install.rb -h

Options

–appdir

The default location cask uses for Application shortcuts is ~/Applications. I change this setting in my install command to point to /Applications.

Default: /Applications

Example:

ruby install.rb --appdir=/Applications

–category

Name of the application category group to install (or uninstall). The category name should reference a file in the ./category/ directory, excluding the file extension. If no category group is specified then all will be installed.

Example:

ruby install.rb --category=browsers

or:

ruby install.rb -c browsers

–uninstall

This changes the default install option to uninstall. With this flag on you can uninstall a category group or uninstall everything. This option requires no additional arguments.

Example:

ruby install.rb -c browsers --uninstall

or

ruby install.rb -c browsers -u

Updates

Follow the GitHub repository for updates and please add any feature requests to the project issues. I welcome pull requests :)

Known issues

Unfortunately there is no way to specify the specific version of an app that you need. This hasn’t been much of an issue for me yet but I know it would be nice to have.

License

This was created by Richard Sumilang and is licensed under the CC BY-SA 3.0 license. You are encouraged to fork this repository and make adjustments according to your preferences.

Creative Commons License

Sep 20, 2015 Apps Unix-like

Support this blog

Buy yourself ANYTHING!

That's right! Shop as you normally would using Amazon.com with my affiliate link and the commissions made go directly into keeping this blog healthy. It's that simple! The hardware and software costs used for this site comes out of my own pocket and it's expensive. Lets keep this site ad free :)

Start shopping on Amazon.com now!

Thank you!
Richard S.