Do Mac App Store apps deploy late in the process + GarageBand loops?

Contributor II

Greetings all,

We have a pretty good build process for our labs going with Jamf at this point, but I have one odd thing happening, and I think it might be a timing issue (of course, it is always possible that it is a "Bruce does not understand what is going on" issue). As part of the lab build policy, I have it installing the appleloops package along with a bunch of our other stuff. Our Apple SE recommended this to me as the best way to take care of the really, REALLY annoying situation with GarageBand and the Essential Sounds loops. Then at the end, I have it run a script that just does:

/usr/local/bin/appleloops -a garageband -l INFO --deployment --mandatory

Unfortunately, that didn't work. When I launched GarageBand, it still came up with the prompt about downloading the loops. So, being in an experimental mood, I just fired that command off from the Terminal on my test machine. That worked just fine, no prompt after that. During this process, I noticed that if I log in immediately after the build is done (we reboot the system and set the LoginwindowText at the end so that we know it is done), it looks like the Apple Mac App Store apps are still being downloaded and installed. Is the installation of the Essential Sounds not working because GarageBand isn't there yet? Do Mac App Store apps load late in the overall process?

Can someone help me achieve wisdom here? I would like this to be all one integrated build if possible, rather than having to have a separate manual policy to add the loops sometime after the build is finished.

Thank you for any thoughts.


New Contributor II

Hey Bruce, what's happening with the Apple audio content packs is they check that a qualifying audio application is installed before actually installing.

If you're deploying GarageBand/LogicPro X/MainStage, it is best to wait until all the apps are installed (or whatever variation of those apps you're installing) before running the appleloops deployment.

The way I do it in munki is to set it to run as a post install script for each of the apps I deploy.

In the most recent version (anything v3.x.x onwards), you can specify which app you're deploying to only process that apps content. For example:
/usr/local/bin/appleloops --deployment -a garageband -m

Esteemed Contributor II

/usr/local/bin/appleloops + VPP = race condition?



New Contributor II


appleloops won't deploy audio content if it can't find the app installed locally. So if you're able to trigger appleloops after you've detected the VPP app is deployed, then you should be ok.

The alternative is to actually deploy the package through Jamf/Munki whatever, and not through VPP.
It is technically possible to do that with those three apps (you'll need to put a dummy Contents/_MASReceipt/receipt file in place to not have it associated with any particular Apple ID.