GarageBand 10.1.0 Composer Capture

Luket
New Contributor

Has anyone had any success installing Garageband 10.1.0 by capturing it through composer with all of its loops?

21 REPLIES 21

strider_knh
Contributor II

I am thinking, even though you did not say it, that your problem is that even after you capture everything and deploy to a new station Garageband will still say that it needs to download the extra content.

This is because there is a plist (?) file under usr or bin or some hidden place, can't remember where, that gets modified to let Garageband know what is installed. This location is not scanned by Composer by default. You will need to modify the preference to scan and capture this file as well.

This installer will then work. That is until Apple changes a loop or instrument package and you will need to do it all again. It happened to us last year. The Garageband version didn't change but one of the other packages did.

What we ended up doing is grabbing all of the individual installers and then we created a policy to copy these to the local station with a script to run each one.

jacob_salmela
Contributor II

Same here; I used a script to download all the additional content and then just captured the basic GarageBand.app separately.

Chris_Hafner
Valued Contributor II

Just refreshed my extra GB content this morning. I like the idea of scripting the download but I'm a bit simpler. I simply install GB on a fresh new mac, run a composer index, open GB and let the new content download and install, complete the composer index and clean out any additional cruft that shows up. The nice part is that you can get the items automatically set to install in the user template so that it's available for all newly created users. in any event, looks like you've got at least two ways here!

VT-Vincent
New Contributor III

IIRC, there's an issue with how GarageBand indexes the downloaded content. I used a similar script a while back to download all of the content for one of our labs that uses it heavily. After installing (and confirming the install by checking receipts), GarageBand still didn't recognize the content was installed. After playing with it for a bit and trying different methods, I still couldn't get it to work consistently.

jacob_salmela
Contributor II

I noticed that the content would only be recognized after GarageBand had been installed and launched. So I had the packages install after boot, not during imaging.

Nix4Life
Valued Contributor

@VT-Vincent saw this a few years back. Can you confirm the order of install. 2015 should be installed first. I have used both methods, and GarageBand sees the all content, plus the full Apple Loops packages.

msnowdon
Contributor

If you use Composer, you need to capture the package receipts so the computer knows it's installed. They are located in /private/var/db/receipts. You want both the .bom & .plist files. By default Composer doesnt capture this folder so you can manually add it or change the Composer settings NOT to exclude this folder when scanning for changes.

Chris_Hafner
Valued Contributor II

I normally distribute this in two parts. First, I capture the Garageband installer as per Rich's method: https://derflounder.wordpress.com/2013/08/22/downloading-apples-server-app-installer-package/ and then I use Composer's indexing to capture the additional GB content on it's first launch. I am NOT capturing the .bom or .plist files form the receipts directory as they are installed by the native apple .pkg for Garageband.

FYI: I repackaged these apps yesterday using this method and all distributes perfectly fine!

msnowdon
Contributor

@Chris_Hafner I distribute the GarageBand app per Rich's method as well. I then use a script to install all the additional content. I was simply stating if you use Composer for the entire app & extra content as the original question stated, by default it doesn't capture the receipts.

@jacob_salmela I'm giving your script a try. It has much more packages in it then the one I was using. Looks good so far. Thanks.

Chris_Hafner
Valued Contributor II

That's a good point @msnowdon Yet even so, wouldn't a composer captured install of GB itself leave that program locked to the AppleID that downloaded it? I know you're not recommending it or doing it that way, but for the benefit of discussion, isn't that why some of us use Rich's method?

P.S. I'm also assuming that we all know that the completely "proper" way is to distribute via VPP. Yet, for many of us, VPP distribution of these apps is still a bit problematic.

msnowdon
Contributor

@Chris_Hafner The first build I did of GB, I used Composer for the whole thing. I used an Apple ID that I use to download all packages that go on my images. It seemed to go okay but sometimes it's hard to figure out what is actually needed and what extra junk Composer picked up. Once I came across Rich's method, I try not to use Composer unless it's for a very simple app. I rather use the native Apple installer package as much as possible.

I haven't been able to try VPP for OS X apps yet as you need to be on El Capitan and the majority of my clients are still using Yosemite. I do use it for IOS apps and like you say, it can be problematic.

The one good thing about VPP for OS X apps (once its works well) is the updates. It's a pain to keep up with building new packages every time an update comes out. User's see that there is an update and hound you until you get it out to them. I have other responsibilities besides managing Casper. At least they can install OS X updates on their own.

One last question. What is the best way to find out if say GarageBand has released new content other than what is in @jacob_salmela 's script? I'm not sure how often it changes but I didn't have nearly the amount of content that his script pulls down.

Thanks for your time,

Mark

jacob_salmela
Contributor II

@msnowdon I have just been adding to the script as I find the additional content. I don't have a way to automatically check. I just update it as the need arises.

msnowdon
Contributor

@jacob_salmela I have very little knowledge of scripting. I usually either find something to do what I want or am able to tweak it just enough to do exactly what I want it to do. But I have to say that your script is great work.

corbinmharris
Contributor

I used the "New & Modified Snapshot" option, then did a clean download of Garage Band + Instruments.

Grabbed the Garage Band Extra Sounds from the App Support folder after downloading.

Only thing I had to delete before creating the package was the _MASReceipt

Corbin

jmahlman
Valued Contributor
I used the "New & Modified Snapshot" option, then did a clean download of Garage Band + Instruments. Grabbed the Garage Band Extra Sounds from the App Support folder after downloading

Basically what I did at first but I made it a bit simpler:

Grab /Library/Application Support/Logic &GarageBand as well as /Library/Audio/Apple Loops, Apple Loops Index, and Impulse Responses. Drop them in Composer and make a dmg. I then used composer New & Modified to grab the index files and dropped those after installing the loops.

Seems to work well except that Garageband always says that some sounds are missing and wants to download them again (I know they're there). I let it "download and install" those sounds again which only takes a few minutes.

Logic is 100% fine with this method..

leegalan
New Contributor III

Sorry to resurrect an old thread. @jacob_salmela are you still using this script with GB 10.2?

jmahlman
Valued Contributor

I updated my method for capturing and installing loops in my blog post.

jacob_salmela
Contributor II

@leegalan I've actually been out of the Mac world for a couple of years now, so I haven't had much need to update or use the script. However, the script simply downloads the files direct from Apple, so as long as their paths haven't changed, it should still work. Of course, my script doesn't have any of the newer loops...

leegalan
New Contributor III

Thanks @jacob_salmela. I actually followed @jmahlman blog post instructions. It worked! Thanks, buddy! One thing I did notice is that on a few computers it gave me an error and I had to run it again. Maybe I'll let Carl Ashley know somehow.

jmahlman
Valued Contributor

@leegalan Yeah, sometimes packages just drop out, I've mainly seen it with capturing the packages for deployment, not installation (I have a local repo). I'm sure he'll be able to give you a hand if you reach out on GitHub.

Glad it worked out for you for the most part. I spent a ton of time working on this crap because Apple makes it very difficult.

Edit: Funny, I literally just logged into jamfnation when you posted that.

leegalan
New Contributor III

I think that happened to me because a professor needed it quickly, and I didn't have time to get my repo setup. But maybe having a repo will give me better results in the future.

I agree with you, though. It should have to be this difficult.