Need help packaging GarageBand with loops

apantelis
New Contributor

I Need help packaging GarageBand with all the loops to deploy.

19 REPLIES 19

AntD
New Contributor III
New Contributor III

Would you not want to deploy the actual app through VPP?

A workflow that we have used in the passed for Logic, and should work in the same way for GarageBand is

  • On a test machine download GarageBand through the Mac App Store

  • Open up GarageBand and download the additional sounds

  • Once installed they should be located in any or all of these places (last time I checked)

/Library/Application Support/Garageband
/Library/Application Support/Logic
/Library/Audio
~/Library/Application Support/Garageband
~/Library/Application Support/Audio

Package the contents of these locations or at least the locations that have content in them using Composer or which ever tool you use

  • Create a policy to deploy this package to your target computers but remember this might take awhile since you’ll be looking at ~20gb worth of content.

  • Once this package has been installed on the target computers then install the GarageBand App through VPP as usual. Since the additional content is already on the machines GarageBand will have all the content and extra sounds.

When it comes to checking in that the package has installed and then deploying the app, you could make this more of an automated process by making use of smart groups.

I hope that helps or at least point you in the right direction

Chris_Hafner
Valued Contributor II

I fully agree with @antdarlow We used to package Garageband and when VPP finally began working well we ran there. Dealing with the "licensing" was not only against Apple policy, but it was a nightmare for both IT and the end user.

jkaigler
Contributor II

I have a VPP account setup in JAMF, I added Garageband to the "Mac App Store Apps". I see this under "VPP" section ... "Content not available to assign to computers". When I select Garageband from self service I am prompted to enter Apple ID and password. This the first app I have added for VPP, is this expected behavior or I do have something configured incorrectly?

Thanks

AntD
New Contributor III
New Contributor III

@jkaigler Have you 'purchased' the app within Apple School Manager or the VPP store as well?

From what you are saying it seems like you have added the app but since you have no VPP licences to assign you aren't able to device assign and are being prompted for Apple ID.

Im betting that once you've got licences to assign you'll be able to tick the device assignment option within the VPP tab on the app within Jamf.

Just shout if you're still having problems and I'll happily go through the process in a little more detail.

jkaigler
Contributor II

Thanks, that makes sense.

jkaigler
Contributor II

This sucks. I guess because I am an Administrator in Apple School Manager, my account is disabled for iTunes.

AntD
New Contributor III
New Contributor III

@jkaigler Cool so you are using ASM. You don't want to be doing the purchasing through the iTunes Store.

Once you are logged into ASM down the left hand side there is a sidebar item called 'Apps and Books'. When you click on this you will either get a message that says get started or you'll have 'no apps purchased' or something like that.

If you have a get started message, follow the steps. You'll want to put your Tax status in there, which might take a few hours for Apple to verify (but it does say up to 5 working days). After this bit is set up you should then see the screen that says 'no apps purchased'.

If / when you you no apps purchased (or even a list of apps you might have already purchased) then there's a small search bar. You search the app you want in there and follow the steps in the window to 'purchase'.

This then assigns the licence to your VPP token and as such should pull through to Jamf

jkaigler
Contributor II

I login to ASM with my .edu account which is disabled in iTunes. Should I create an account using our vpp email acct? We have user who is a Site Manager managing iPads. It looks he is already "purchased" some apps.

In the future would it be wise to add the vpp account to ASM for purchases?

Sorry for the bad sentencing, trying to multitask 5 different issues.

WilsonFredonia
New Contributor III

https://github.com/carlashley/appleLoops

To get the loops automatically to the machines, the script there will get all of the content installed with proper receipts. This will allow for distro via Mac App Store Apps but populating the loops and basic sounds appropriately. This will not actually index the loops so there are some drawbacks in a lab setting where user profiles wipe upon logout.

rkopoku
New Contributor

You should check out this discussion post on JamfNation. The link to the amsys page included there helped a lot!

GarageBand packaging

Chris_Hafner
Valued Contributor II

@jkaigler If there'sone thing I learned about logins for Apple service accounts, it is that each one should be its own login. I have separate AppleIDs for:
iTunes (Personal and Professional)
GSX (I learned this separate account lesson here, after much pain)
ASM
VPP
E-Commerce
iTunesU

Each one is aliased to my normal work/Gmail account so it is fairly simple.

jkaigler
Contributor II

@Chris_Hafner thanks, I am slowly learning that same thing.

apantelis
New Contributor

Thank you for all the responses!

PaulHazelden
Valued Contributor

If you run GarageBand or Logic after a fresh install, it will want the Libraries to be installed.
If you say yes to this, but do not put in your admin password when it asks for authorisation to install, you will find that it has downloaded all of the original installer pkg files for the libraries. You can copy these away to a safe location and then put them into Jamf Admin to install. this is then just like they have been installed by the App and thy fill in their install receipts with the apps properly.
They arrive in /var/folders/
If you Set view options to calculate all sizes, you are looking for the really fat folders. You will get to one with GarageBand in its name. Keep on going until you see the pkg files, these are what you want.
https://www.amsys.co.uk/download-garageband-logic-pro-x-content-loops-deployment/

I personally hate having the 800 or so installers lurking in my Jamf Admin list, so I repack them into a compressed archive, keeping to under about 5Gb where possible, and then push this out with a a postinstall script to run through each one and install it, and then delete it so that space is freed up. Easy way to dump 60 or so small installers onto a mac and install them all. Once they are in, GarageBand and Logic are ok with them and work straight away.

robertojok
Contributor

@wilsonm is right. the best way is https://github.com/carlashley/appleLoops
that is what I have always used. It stopped working a while back but @carlashley has done a great job and I tested the script in Catalina and it updated Garageband.

coachdnadel
Release Candidate Programs Tester

@PaulHazelden Can you post your postinstall script? I'd like to test your method.

PaulHazelden
Valued Contributor

I first will put the files in a Temp location inside their own folder. For GB I keep each folder to 5Gb max. I then Compress them to a .tar.gz archive. And then use composer to create a pkg of them.
Then I run as a script set to "run after"

#!/bin/sh

#  
#

# What file is being installed
# $4 is set to the folder name, which is also the archive name

# Uncompressing the Installers
# Move to location, you have to move to the temp folder to uncompress the folder
cd /private/var/csg/Install/
# Uncompress the archive
tar -zxvf "$4".tar.gz

# ---------------------------------------------------//------------------------------------------------------------

# Install the pkg files found in a temp location

for PKG in $(ls "/private/var/csg/Install/$4/" | grep "pkg$")
do
/usr/sbin/installer -pkg /private/var/csg/Install/"$4"/"$PKG" -tgt / -allowUntrusted
# Then it will remove the installers
rm -Rf /private/var/csg/Install/"$4"/"$PKG"
done

# Remove the folder and the archive
rm -Rf /private/var/csg/Install/"$4"
rm -Rf /private/var/csg/Install/"$4".tar.gz

# ---------------------------------------------------//------------------------------------------------------------


exit 0

This one I have set as a script in JAMF server and use the $4 attribute to provide the folder name.
If you want to make it a postinstall script and add it in composer to the composer pkg then swap out the $4 for the folder name.
Script to compress

# Move to location, you have to move to the temp folder to compress the folder
cd /private/var/csg/Install/
tar -zcvf "FOLDER".tar.gz "FOLDER"

drioux
Contributor

@PaulHazelden I have set up a similar method but I packaged them in composer and used a post install script to run them each pkg, then I have a removal script set to run 'after' in the JAMF policy. It seems to be doing everything yours is doing, but I have one issue...

My question is, 'How did you deal with the fact that it still prompts the user for admin password when GarageBand first launches for the user?" Even if the content is there, GarageBand installed via VPP wants to do this upon first run.

PaulHazelden
Valued Contributor

https://www.jamf.com/jamf-nation/discussions/30633/best-practices-to-package-garageband-10-3-2-with-all-loops

Has some further info on it all. The users cancel the admin thing, and then Index the loops. Then they can clear the download progress bit themselves. Been a while since I did it all.