So in Part 1 we took a look at the concept of thin imaging and created a base OS X image that you could deploy to your Macs via your preferred method (mine is currently still DeployStudio. Let me know what yours is in the comments!). In this 2nd part we are going to take a look at the next phase in thin imaging, package deployment (or at least the repository for packages). To do this we are going to use a set of excellent tools; Munki and MunkiAdmin.
You could essentially do all of this just using Munki, but as that is command line only (and my command line is not as good as I would like it to be), MunkiAdmin gives you a GUI front end. Go ahead and install both packages (install munkitools first).
Once you have both components installed, open up MunkiAdmin. The first thing it is going to do is ask you to locate the Munki Repo. As we don’t have one yet, click cancel.
Select File > New Repository > Create your repository where you like. I named mine Munki_Repo.
You can see it has automatically created the sub directories.
Back in MunkiAdmin, File > New Manifest > save this in the default Manifest folder. Name it appropriately. For example, I name mine after the room the manifest will be assigned to. In this example I will be using a Mac lab named ‘E1’.
File > New Catalog > again name the catalog. I am also calling this E1.
Please Note: It appears the Catalog disappears until it actually has something in it, so don’t worry if it isn’t there when you quit MunkiAdmin and then reopen it. We will cover adding apps to catalogs at a later date.
In MunkiAdmin hit the Save button. This is a good habit to get in to. After any changes, make sure you hit save. And you may frequently have to hit the Reload button also.
OK, so this is our main sections in MunkiAdmin configured. You might be thinking that this is all looking pretty empty, you would be right! At this point our repository is configured. We will use this repository to push out applications to clients. But before we can do that we need to import applications in to Munki to distribute.
The Munki Repo needs to be shared via web services so that it is accessible. To do this, open Server.app, select Websites from the left, and check the box for Enable PHP. Turn websites on.
You can edit the existing Websites listed in Server.app, or you can add a new one. I will add a new one as I have other web services running. Be sure to point the ‘Store site files in’ to your Munki Repo. Select Edit Advanced Settings, and tick the box for Allow folder listing.
Make sure you can access your Munki repo via a web browser – ideally from another machine on your network. If you open Safari and type in the web address of your munch repo, you should be presented with the same list of folders as found in your Munki Repo via Finder on the server.
Please note that I setup my own DNS name for my munki repository, if you put yours in the Default website directory located at:
Then the URL will likely be that of your web server, e.g..
If you put it in a sub directory of the Default folder then the URL will likely be:
In part 3 we will take a look at AutoPkgr which will allow us to import packages. We will then look at how we distribute these using MunkiAdmin.