Category: Uncategorized

  • Using Dockutil with Outset to set user Docks on a Mac

    Many people will find Dock Master a good tool to distributing docks to users. If you would prefer to use Dockutil with Outset and a login-once (or login-every) script, you may run into this issue: Items are added but not always removed Workaround #1 kcrawford (developer of Dockutil) has a workaround for this: # Wait…

  • Enabling FileVault Encryption for Client Macs

    Difficulties in automating FileVault FileVault encryption is unfortunately one of the things for Mac admins that is extremely difficult to automate. Crypt There’s a project called Crypt that involves a login hook that checks whether encryption is enabled or not and then prompts the user to enable encryption. Once that’s done, the individual recovery key…

  • AutoDMG / Outset / Munki bootstrap workflow

    Update December, 2018: Because of the changes that came with Apple’s T2 chips, I wouldn’t recommend the below workflow any more. Instead, I’d recommend a DEP=>MDM=>Munki workflow instead. I wanted to create a workflow that involved pretty much just imaging a new machine with a thin image and then having the image itself pull updates.…

  • Using Plistbuddy to delete a string from an array

    I have two previous posts about using Plistbuddy to add to an array in a .plist file (specifically Munki’s SelfServeManifest file): Bash script to add optional installs for Munki Terminal command to mark a Munki optional install for installation What if you want to remove an item from the array? It’s not a simple thing…

  • Bash script to add optional installs for Munki

    In Terminal command to mark a Munki optional install for installation, I showed a one-off command to mark a Munki optional install item for installation. What if you want to do it in bulk, though? For example, if you’re scripting a thin image to install some software by default, but you want the option for…

  • Ubuntu live USB stuck on i8042: No controller found

    I had a Ubuntu live USB that worked fine on a MacBook Air. I tried to boot it on a Mac Pro, and it seemed to get stuck on [sdb] Assuming drive cache: write through, but the real first error was the one that needed fixing, and it was i8042: No controller found. I finally…

  • Installing an optional install when logout/reboot items are pending in Managed Software Center

    What’s the issue? If all your updates are up-to-date in Managed Software Center, when you select an optional install to install, it will install in the background and be ready to use almost immediately. If, however, you have some pending updates that require a logout or reboot, your optional install (even an unattended install) won’t…

  • Condition Scripts for Munki

    If you’ve been using Munki for a while, you probably already know about conditional items that allow you add items to optional installs, managed installs, etc. based on a condition like whether the client is a laptop or a desktop, or whether the client is running 10.10 or 10.11. But you can also create your…

  • Scripting enabling root or disabling root on Mac OS X

    If you want to script enabling or disabling the root account in Mac OS X (instead of having to go to Directory Utility to do it), you’ll want to use the dsenableroot command. Enable the root user dsenableroot -u adminaccount -p adminaccountpassword -r rootpasswordyouwant Disable the root user dsenableroot -d -u adminaccount -p adminaccountpassword Important…

  • Managing Mac admin user accounts with CreateUserPkg

    A lot of Mac admins are ditching “the golden image” (or “monolithic image”) for more thin-imaging + scripting, managing accounts with scripts and packages. Frankly, though, even if you aren’t using AutoDMG (here at SI, we use a combination of “silver image” or “bronze image” that gets subsequently updated with Munki), you may still want…

  • Creating a Munki nopkg for Remote Management

    When are nopkg items in Munki appropriate? Greg Neagle (author of and primary developer on Munki) makes a good point that in most cases, a real .pkg (instead of a nopkg) is the best choice, because of versioning and receipts. One thing that nopkg items in Munki are good for, though, is checking to make…

  • How to read from and write to .plist files using Python

    Python and Macs Python is a popular tool among Mac Admins. You can find a fairly comprehensive (and long) list of Python-based Mac Admin tools at Python Macadmin Tools, so it’s a handy thing to be able to throw together a Python script every now and then. .plist files A lot of settings in Mac…

  • Automatically enroll or bulk-enroll Munki clients in individual manifests

    You may manage your Munki clients using a general manifest (e.g., support_staff), but you sometimes want some more control over also managing installations for individual users without always specifying the serial number as a condition in a manifest. The most popular tool for this is Munki Enroll, which automatically creates individual manifests with the larger…

  • Script to copy a Munki generic icon

    Munki is fairly good at extracting icons from applications. Sometimes, though, you have items in your Munki catalog that aren’t exactly easily icon-able, so you may want to attach a generic icon to it instead. I wrote a Python script that will copy a generic icon to any of the Munki repository items missing an…