My most popular and demanding project is ๐๏ธ erase-install, a zsh script for upgrading, reinstalling and erasing macOS. This was updated significantly in 2022 to use mist-cli and swiftDialog, and has to keep pace with changes to those projects as well as changes to macOS itself.
My other most used project is JamfUploader. This is a collection of python processors for use with AutoPkg which is the dominant method for integrating AutoPkg with Jamf Pro. The project also includes jamf-upload.sh
, a script enabling the use of the JamfUploader framework to create or amend all sorts of API objects without having to write AutoPkg recipes.
The JamfUploader processors are also mirrored in my AutoPkg recipes repo, grahampugh-recipes, along with a large collection of recipes and examples of how to write .jamf
recipes.
For those interested in an easy script for setting up AutoPkg on a fresh machine, including (optionally) configuring JamfUploader, check out AutoPkgSetup.
If you need a signed package to add to your MDM to install Rosetta 2 at enrollment, check out Rosetta-2-install.
MSPs, or anyone working with multiple Jamf Pro instances, may be interested in the Multitenant Jamf Tools (MJT), which is a series of scripts using a common framework, designed to perform a range of actions on Jamf Pro instances using the API. This includes jocads.sh
, an interactive script with the ability to copy a large range of API objects from one instance to multiple other instances in one go, and jamfuploader-run.sh
and autopkg-run.sh
, two scripts that wrap on top of AutoPkg and the JamfUploader processors to allow running jamf-upload.sh
and AutoPkg recipes on multiple instances at once. There's also mdm-commands.sh
, which allows you to run various MDM commands on multiple devices at once. Handily, MJT stores credentials for all your instances in your Keychain, so you only have to provide them once.
If you need to convert PLIST files to YAML, or vice versa, check out plist-yaml-plist.
The projects based on python-jss that I inherited from Shea Craig, namely JSSImporter, Spruce, jss_helper, JSSRecipeCreator, and python-jss itself, are all now deprecated. You can still find the code in the JSSImporter organisation.