These instructions describe how to install and configure Munki to work on a single machine (tested with Mac OS X 10.6.2 Client). For demonstration purposes, we'll be deploying Firefox. This is useful for testing, but is not recommended for production use.
Server Setup
- Turn on Web Sharing
- Check System Preferences -> Sharing -> Web Sharing
- Download and install Munki Package
- Create server directory structure
- Open Terminal.app
- cd
- mkdir Sites/munki Sites/munki/catalogs Sites/munki/manifests Sites/munki/pkgs Sites/munki/pkgsinfo
- Copy Firefox disk image to Sites/munki/pkgs
- Give webserver permission to read disk image
- chmod 644 Sites/munki/pkgs/[NAME_OF_DISK_IMAGE]
- Create pkginfo file for package
- /usr/local/munki/makepkginfo Sites/munki/pkgs/[NAME_OF_DISK_IMAGE] > Sites/munki/pkgsinfo/[NAME_OF_DISK_IMAGE].pkginfo
- Create catalog
- /usr/local/munki/makecatalogs Sites/munki
- Create a testing manifest at Sites/munki/manifests/testing. (Be careful about the name of the manifest file -- for this example we're naming it "testing" with no filename extension.)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>catalogs</key>
<array>
<string>testing</string>
</array>
<key>managed_installs</key>
<array>
<string>Firefox</string>
</array>
</dict>
</plist>
Client Setup
- Edit /Library/Preferences/ManagedInstalls.plist
- Set ClientIdentifier to testing
- Set SoftwareRepoURL to http://localhost/~USERNAME/munki where USERNAME is the short name of your user account.
It might be easiest to use the defaults command for this:
defaults write /Library/Preferences/ManagedInstalls ClientIdentifier testing
defaults write /Library/Preferences/ManagedInstalls SoftwareRepoURL http://localhost/~USERNAME/munki
Running the Client Tools
- sudo /usr/local/munki/managedsoftwareupdate
- or -
- Launch /Applications/Utilities/Managed Software Update.app
Updating Software
On the Server
- Copy new version of Firefox disk image to Sites/munki/pkgs
- Create pkginfo file for new package
- /usr/local/munki/makepkginfo ~/Sites/munki/pkgs/[NAME_OF_DISK_IMAGE] > ~/Sites/munki/pkgsinfo/[NAME_OF_DISK_IMAGE].pkginfo
- Create catalog
- /usr/local/munki/makecatalogs ~/Sites/munki
On the Client
- Launch /Applications/Utilities/Managed Software Update.app
More info
For a more in-depth introduction to Munki, see these MacTech articles:
http://www.mactech.com/articles/mactech/Vol.26/26.10/2610MacEnterprise-ManagingSoftwareInstallswithMunki/index.html
http://www.mactech.com/articles/mactech/Vol.26/26.11/2611MacEnterprise-ManagingSoftwareInstallswithMunki-Part2/index.html
http://www.mactech.com/articles/mactech/Vol.26/26.12/2612MacEnterprise-ManagingSoftwareInstallswithMunki-Part3/index.html
http://www.mactech.com/articles/mactech/Vol.27/27.01/2701MacEnterprise-ManagingSoftwareInstallswithMunki-Part4/index.html
Just a style-thing but the mkdir command can be compressed to this:
mkdir -p Sites/munki/{catalogs,manifests,pkgs,pkgsinfo}