Deploying Custom Packages in Apple Business Essentials

18 Jul 2024

Apple’s documentation on deploying custom packages using Apple Business Essentials lacks in-depth examples of real-world implementations. Here are two!

Prerequisites

Your organization must have an approved tax status under “Organization Settings” at business.apple.com. Once received, turn on custom apps:

Apple Business Essentials Organization Settings page showcasing tax status and custom apps settings

zoom.us

  1. Navigate to Zoom’s download page.
  2. Copy the appropriate download URL, writing it down somewhere for later. I’m deploying to Apple Silicon, so I chose the ARM distribution.

    WARNING: “if you decide to use a developer-hosted link to a package, make sure that the package doesn’t get updated by the developer in-place.” As noted in Apple’s documentation, if you are in a position to host the package on your own server, you should consider doing so in order to prevent any changes upstream from affecting your deployment.
  3. In a new browser tab, test the download URL. Pressing enter should immediately download/prompt you to download the zoomusInstallerFull.pkg. Per Apple, “the package must begin to download when the link is used. The link can’t lead to a webpage with another link.”
  4. In terminal, run shasum -a 256 zoomusInstallerFull.pkg. The output should look something like the following. We want to copy the long string of numbers and letters, excluding the filename.

    Terminal output:

     08104901aee19f3d08d9cb449fb0cc77379712ce31f9a12612bf8be3675da971  zoomusInstallerFull.pkg
    

    Desired SHA-256 hash:

     08104901aee19f3d08d9cb449fb0cc77379712ce31f9a12612bf8be3675da971
    
  5. Follow through with the package installation on your machine/a testing machine. With the app open, write down the app version. In Zoom’s case, it is written at the bottom of the login page. (If it isn’t, you can use the app’s “about” pane. With the app open, select its name in the macOS menu bar and click “About Zoom Workplace”)

    zoom.us about panel

  6. In Finder, open the applications folder and find zoom.us. Right click and select “Show Package Contents”. In the Contents folder, open Info.plist. We’re looking for the CFBundleIdentifier’s value, which in this case, is us.zoom.xos. Write this down.

     <key>CFBundleIdentifier</key>
     <string>us.zoom.xos</string> 
    
  7. Back in Finder, right click zoom.us and press “Get Info” (alternatively, press command + i).
  8. Click the small app icon so that it is selected and then press command + c to copy the icon.

    zoom.us Finder Get Info panel

  9. Open Preview.app, and in the macOS menu bar, select “New from Clipboard” (or command + n). Save the file as a .png somewhere on your disk.

    Note: per Apple’s documentation, icons must be either a .icns, .jpeg, or .png file, no larger than 1024x1024 and under 10 MB.
  10. In Apple Business Essentials (ABE), under the apps tab, select “New Package”. The fields are to be filled out as follows:

    • Package Name: zoom.us
    • macOS Package URL: The download URL you wrote down in step #2
    • SHA-256 Hash: The hash you wrote down in step #4
    • Bundle ID: The CFBundleIdentifier you wrote down in step #6
    • Version: The app version you wrote down in step #5
    • App Icon: The .png you saved in step #9
    • Description: I included Zoom’s website here, though this isn’t necessary.

    I didn’t add any System Extensions, Privacy Preference Permissions, or Login and Background Item Management items.

  11. Save the package. Add the app to a collection or assign it to a device. Using a device that has been assigned the new package, open Essentials.app, find your new package, and press install. (It may take a little while for the package to appear – it took around 10 seconds in my case.)

That’s it! During the app install process, the user might be prompted to choose whether to “Automatically keep the Zoom Workplace app up to date”. My recommendation is to keep this checked and press done, otherwise the Sysadmin will need to regularly upload update packages into ABE. I encourage users at this point to also configure the necessary app permissions so that they don’t experience any hiccups during their first meeting:

To get set up for screen sharing:

(AFAIK, there isn’t a way to automate this part of the setup…)

Back in ABE, you can view app installation status on assigned devices:

App install status list in Apple Business Essentials

Google Chrome

The process for deploying Chrome’s package is more or less the same as Zoom’s. However, what isn’t obvious at first is that Chrome has a download page targeted at enterprise users where you can choose to download a .pkg instead of a .dmg installer. Google likes to obfuscate their download URLs, but with a little bit of trickery it can be acquired:

  1. Using Firefox, download your chosen installer
  2. Open the downloads pane
  3. Right click your download and select “Copy Download Link”

Firefox downloads menu

Otherwise, the installation follows in the same order as Zoom. Follow steps #1-11, changing the names and icon as needed.

Happy deployment!