I am a windows guy new to Mac, I need to deploy software to lots of Mac.

I do centrally install software by scripts on Windows platform, but I still have no clue how to do it on Mac after having done some research.

Can someone tell me

  1. What are some key components I need for centrally pushing out the software on the Mac?

  2. What language do I need to use for the scripts?

  3. Is there a Mac image create/deploy service available, like WDS on windows?

  • 1
    You're question is likely to be closed because 1) it's too broad in scope 2) it's too many "questions" (we do a 1:1 Q/A relationship here) and 3) only your question #2 relate to your title. I highly suggest going through the Tour to help refine your question.
    – Allan
    Jan 15, 2017 at 12:59
  • 1
    All that said...in an effort to direct you to at least a starting point: Take a look at ARD, for software deployment, as for a language, you need to learn how to "live" in one of the Unix Shells (I prefer bash) and as a general rule, macOS Server has the ability to create deploy images though there are other free alternatives.
    – Allan
    Jan 15, 2017 at 13:04
  • 1
    I'm going to unlock this. Let's focus on the broad outlines of MDM - I'll be sure to post a nice summary of the leading options. JAMFnow/pro and munki as well as to make the MDM link to Apple's documentation. A nice broad answer will be able to save this from "too many detailed questions"/
    – bmike
    Jan 16, 2017 at 15:19
  • 1
    Take a look at Munki, and there's obviously things like Macports, Homebrew, Joyent's pkgsrc, and Fink.
    – ian
    Jan 13, 2019 at 15:22

2 Answers 2


What you ask is basically the trade of being a Mac administrator and there are three major ways to get this done and one where you let everyone do the work:

  1. Train your end users to install things
  2. Use Apple's legacy tools to manage installs (ARD and AppleScript)
  3. Use ssh and tools like homebrew https://brew.sh and shell scripts to install software and entire applications.
  4. Use a modern MDM - the popular open source choice is Munki and the popular vendor supported choice is JAMFpro (which is the new name for the Casper Suite/JSS for the upcoming version 10 release)

You probably have asked this question since you have ruled out options 1 and 2 - but they are realistic and scalable options for organizations in the 10 to 100 client range. Past 100, you're probably going to want some sort of Apple push / MDM / automation framework and using one that's already in service is better than making your own for almost all cases.

Also, be sure to evaluate your end user "self-service" options. Munki has the managed software installer and I'm using JAMF's name for their end user portal for app installs, scripts and management. Even once you have a push framework set up to script things, letting users fix things themselves is the winning move if you want to scale up your support without hiring help desk staff to do everything for your clients.

  • 1
    Thats the answer I m looking for. ARD , MacOS server and Bash. Thanks Allan and bmike
    – Root Loop
    Jan 22, 2017 at 2:52

There are a few apple device management softwares out there, but almost none of them (at least to my knowledge) is free. A very popular choice is JAMF Software.

It is quite sensible to consider scripts to remotely connect to devices and deploy softwares (hopefully those that require minimal user interactions). There are limitations however if you do not have full control over system configurations of the target devices; an end-user may disable remote login or uninstall your softwares etc.

Overall, I think the answer to this question may well depend on the nature of the software(s) to be deployed, technologies you want to use etc.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .