Posted on 01-17-2019 01:40 AM
Now that GarageBand is available for free, we're assigning it to our Macs using VPP App Store licenses.
However, when a user tries to run it for the first time, it prompts them for an administrator password to download and install the Essential Sounds library.
There used to be a script to do this, but as we're using VPP assignments now, there's no .pkg file for us to attach a "postinstall" script to.
How do we get just the bare essentials installed for users to be able to run GarageBand, without them being prompted for an administrator username and password? Ideally it would be great if this could happen automatically as soon as GarageBand is on the Mac.
Thanks,
Dan Jackson (Senior ITServices Technician)
Long Road Sixth Form College
Cambridge, UK
Posted on 01-17-2019 01:46 AM
Not sure if this would be of any help: https://github.com/carlashley/appleLoops
We only have a few MACs so just installed it manually but I agree there should be an easier way.
Posted on 01-17-2019 03:02 AM
@RLR yes I think that's the script we were using previously, but how can we associate that with the installation of a Mac App Store App that's assigned through VPP? The "Mac App Store Apps" area of Jamf Pro does not provide any way to add a script to the installation.
EDIT: I guess a policy would be the logical place, but how can I make a smart group that will only include computers that have GarageBand but don't have the Essential Sounds?
Posted on 01-17-2019 03:32 AM
Maybe this could work?
You can capture the packages being downloaded from the App Store using something along these lines:
http://techion.com.au/blog/2014/10/18/pkgkeeper-script
So start GarageBand and grab the sounds using the above script. The sounds are downloaded as packages so the above script will work (turn off SIP first).
Then maybe create a Smart Group that looks for GarageBand being installed and if it is run a policy to install the captured packages.
Posted on 01-23-2020 08:53 AM
JMR - That can work, but the download creates a ton of .pkg files. 116 to be specific.
Posted on 01-24-2020 02:51 AM
The Carl Ashley Apple Loops script has been considerably updated since the last time I used it and is now able to create a DMG full of the .pkgs, which I've uploaded to Jamf Admin and now have a script that can mount the dmg and install all the .pkgs from cache:
#!/bin/sh
LOG=/var/log/appleloopsinstaller.log
log () {
d=`date`
echo "[$d] $@" >>$LOG
}
Exit () {
log $1
echo "EXIT:$2"
exit $2
}
PACKAGE_PATH="/Library/Application Support/JAMF/Waiting Room"
input="installdmg"
dmg="$PACKAGE_PATH/GaragebandMandatorySounds.dmg"
log "input: $input"
log "dmg: $dmg"
TMPDIR=/tmp/appleloops-dmg-$RANDOM
log "Temp Mount Dir: $TMPDIR"
echo "installer:PHASE:Verifying and mounting disk image..."
log "cmd: hdiutil attach "$dmg" -mountpoint "$TMPDIR" -nobrowse -puppetstrings"
hdiutil attach "$dmg" -mountpoint "$TMPDIR" -nobrowse -puppetstrings || Exit "Could not mount $dmg at $TMPDIR" 3
for PKG in $(ls "$TMPDIR/lp10_ms3_content_2016" | grep "pkg$"); do
input="installpkg"
package="$TMPDIR/lp10_ms3_content_2016/$PKG"
target="/"
log "input: $input"
log "package: $package"
log "target: $target"
log "cmd: /usr/sbin/installer -dumplog -pkg "$package" -target "$target" -verboseR >> $LOG 2>&1"
/usr/sbin/installer -dumplog -pkg "$package" -target "$target" -verboseR >> $LOG 2>&1
err=$?
log "The package installed successfully"
echo "EXIT:$err" # send back the exit code from /usr/bin/installer
done
log "/usr/bin/hdiutil detach "$TMPDIR""
hdiutil detach "$TMPDIR" # Don't care about failed detach
Exit "The helper finished with no errors" 0 # caller told us to quit
Note that the .dmg is not a Jamf-compatible .dmg, so you can't use the "Install" action to install it, the way I've got it working is to Cache this (which just copies it to /Library/Application Support/JAMF/Waiting Room) then run this script which mounts it and installs all the PKGs. The process takes around 15 minutes on our Macs here.
Posted on 01-24-2020 04:46 AM
I have used Carl Ashley's script for years here and it's good. Last summer he had to tweak it just a little bit because it was missing a very small handful of available loops, but he has since done so and given his script's functionality, I've went back to using it because it works well.
Posted on 01-24-2020 06:45 AM
Just as an aside, we have complained about this to our field SE as well as bugreported it, feedbacked it, and just generally whined about it everwhere we could think of. In the meantime, we are also using the appleloops solution.
Posted on 03-04-2020 07:41 PM
To grab the GarageBand or Logic installers for sound libraries use the below...
SoundsLibrariesExtract
Then use InstallPKGsfromDMG from below
InstallPKGsfromDMG