Posted on 01-10-2019 07:57 AM
Hi Everyone,
After 2 years of using an older package of Garageband with All Loops, it's time for me to repackage it and I'm wondering how to best do it. In the past, I created a 10Gig+ package of Garageband and all the loops using Composer (this is why it's been 2 years). The music teachers want the students to have access to all the loops and since we have Standard accounts it makes it easier if Garageband is just ready to go without Admin privileges to install the loops later.
Should I try to install Garageband using Mac Apps Store and then try to push the loops after? We don't assign the students Apple IDs so I'm not sure if I can push out Garageband directly to devices. I had tried in the past but did not seem to have success. And then where would I find the loops? They seem to be buried in various locations.
Thank you in advance for any advice and guidance.
Posted on 03-05-2021 11:53 AM
@scerazy Very unfortunate that Carl Ashley chose to scrub the internet of all his work rather than pass it on to the community. Hopefully somebody has a copy saved locally and we can modify it among the JAMF Community to keep it going.
Posted on 03-05-2021 12:30 PM
Looks like internet archive to the rescue:
https://archive.org/details/github.com-carlashley-appleloops_-_2019-12-18_10-55-41
Gabe Shackney
Princeton Public Schools
Posted on 03-05-2021 02:10 PM
To open v2 git bundle .bundle that is inside the archive... on Windows
Download portable:
https://git-scm.com/download/win
"Unbundle":
https://statagroup.com/articles/git-bundle
W: empPortableGit>git clone ../carlashley-appleloops_-_2019-12-18_10-55-41.bundle
Cloning into 'carlashley-appleloops_-_2019-12-18_10-55-41'...
Receiving objects: 100% (462/462), 21.31 MiB | 33.93 MiB/s, done.
Resolving deltas: 100% (233/233), done.
But surely somebody has the latest master.zip available? Because it is not here:
https://web.archive.org/web/20210117105359/https://github.com/carlashley/appleLoops/
or one can use https://github.com/davidteren/lpx_links but changing file_helpers.rb to read:
def logic_app_path
'/Applications/GarageBand.app/Contents/Resources'
end
# Returns current filename: i.e. 'logicpro1040.plist'
def plist_file_name
`cd '#{logic_app_path}' && find . -name garageband1021.plist`
Posted on 01-23-2023 01:37 PM
I see Carl Ashley is no longer supported. Though I would have a go getting ideas from other people in the thread.
This is what I came up with for Mandatory loops and the same can be done for all sounds.
Feedback always welcome :-)
#!/bin/sh
#
#
# Create directory /tmp/jamf, continue if directory already exists
mkdir /tmp/jamf || :
# Change directory to /tmp/jamf
cd /tmp/jamf
#Download installer container into /tmp/jamf
# -O downloads file without changing its name
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0048_AlchemyPadsDigitalHolyGhost.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0310_UB_DrumMachineDesignerGB.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0312_UB_UltrabeatKitsGBLogic.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0314_AppleLoopsHipHop1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0315_AppleLoopsElectroHouse1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0316_AppleLoopsDubstep1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0317_AppleLoopsModernRnB1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0320_AppleLoopsChillwave1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0321_AppleLoopsIndieDisco.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0322_AppleLoopsDiscoFunk1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0323_AppleLoopsVintageBreaks.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0324_AppleLoopsBluesGarage.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0325_AppleLoopsGarageBand1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0354_EXS_PianoSteinway.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0357_EXS_BassAcousticUprightJazz.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0358_EXS_BassElectricFingerStyle.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0371_EXS_GuitarsAcoustic.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0375_EXS_GuitarsVintageStrat.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0482_EXS_OrchWoodwindAltoSax.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0484_EXS_OrchWoodwindClarinetSolo.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0487_EXS_OrchWoodwindFluteSolo.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0491_EXS_OrchBrass.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0509_EXS_StringsEnsemble.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0536_DrummerClapsCowbell.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0537_DrummerShaker.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0538_DrummerSticks.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0539_DrummerTambourine.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0540_PlugInSettingsGB.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0554_AppleLoopsDiscoFunk2.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0557_IRsSharedAUX.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0560_LTPBasicPiano1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0593_DrummerSoCalGBLogic.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0597_LTPChordTrainer.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0598_LTPBasicGuitar1.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0615_GBLogicAlchemyEssentials.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0637_AppleLoopsDrummerKyle.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0646_AppleLoopsDrummerElectronic.pkg
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/MAContent10_AssetPack_0910_PlugInSettingsGBLogic.pkg
# Run installer package with the boot drive as the destination
for pkg in $( ls /tmp/jamf/*.pkg ); do
echo "Installing $pkg"
installer -pkg $pkg -target /
done
# Clean up
rm -r /tmp/jamf
05-12-2023 02:48 AM - edited 05-12-2023 02:57 AM
Hello Luke. How can this be done for all sounds? :) And how can we keep it up to date?
Posted on 05-12-2023 04:00 AM
I have given up on automating it. Once a term I will set up a fresh Mac in my Test group and install GarageBand, and then capture the loops pkg files. Then build an installer to install them all. I do the same with Logic. I find it always works that way, and only takes me a week to sort them both out and get them uploaded to the server for distribution. There is a lot of waiting involved, so its done over a week, not taking me a full time week.
Posted on 05-12-2023 05:35 AM
Do you capture with composer? I have no luck capturing any files garageband is downloading. Do you know where it is stored?
Posted on 05-12-2023 06:56 AM
No I dont use Composer to capture them.
First run GarageBand, and it will want to install the essential sounds, let it, but do not put in your admin password to install them. It will download them all though.
Then go to /private/var/folders. In here you will have a bunch of folders with two charecter names. What you need to do at this point is to go to the View Menu at the top of the screen and then choose View Options for that folder, and then tick to calculate all sizes. Sit back and wait for it to do so. One of those folders will show up with a few Gb in it, that is the one you want. Follow the big folder down. I think on mine it is in a folder called q_, and then a great long line of charecters, and then a folder called 0, and in there will be the one with all the stuff you want.
There will be two types of files, the pkg's are the ones you want, I usually copy them to a folder on the desktop. Dont move them, you want them to still be there to actually install.
Once you have a copy of them all, then go ahead and let GarageBand install them.
At this point I will normally reboot the Mac, I want the Admin authorisation to install to be totally gone for the next step.
Open GB again and tell it to download and install the sounds, but the same as with the essential sounds you want it to stop before it installs the files. Back to the same location and copy out the huge folder full of pkg files.
Now comes the fun bit...
I break them into folders with about 5Gb max size, and put them in a location where you can access them on all the Macs they are going to. I have a place in the var folder that I use, but you can use the tmp folder if you want. Then use Composer to make an individual pkg of each of these folders. i think I get 5 for GB and 14 for Logic. Then a post install script to install all of them.
Dont upload them all as their individual pkg files to your Jamf server - the Logic one has close to 900 pkg files in it, and I for one do not want to hunt through those looking for something to add to a policy or try to add 900 pkg's to a policy.
# Install the pkg files found in a temp location
for PKG in $(ls "<path/to/files>" | grep "pkg$")
do
/usr/sbin/installer -pkg <path/to/files>/"$PKG" -tgt / -allowUntrusted
# Then it will remove the installers
rm -Rf <path/to/files>/"$PKG"
done
I use this script to loop through the pkg files and install them and then delete them as I go. Works well, you can also use a Parameter for the Path, and then use the same script set to run after with a different parameter to provide the correct path to each of your folders.
I limit the size to the 5 Gb to make it work better. there used to be a 5Gb limit on files, I believe this is higher now. The whole thing appears to move along at that size, uploading to the server, replicationg to distribution points, sending out to the Macs for installation, and installing them.
Hope this helps
Posted on 05-15-2023 01:22 AM
Thank you for the info! :)
Posted on 05-15-2023 07:32 AM
I have tried this and got all the files mentioned for the basic loops, but after installation GarageBand still want admin right to install the loops :/
Posted on 05-15-2023 08:25 AM
It will be the progress bar, still has the install in progress.
Open GB and then in the center at the top will be the LCD screen thing. The bottom line of this is a progress bar. Click on it and then cancel everything. It should be happy. It will only be there for the users who have tried the download without Admin permission. Anyone who has ignored it or refuesed it will have nothing there and no problems.
It is not obvious that it is a progress bar, but it is.
Posted on 05-12-2023 07:42 AM
Hi Malmen,
I haven't found a way of automating it but it looks like Apple my have a script for us now as per cvangorp post. My version was the same as other people just skipping the composer bit.
Once GB is installed, click download all sound but don't install! Then go to /private/var/folders find all the pkg's then I just copied them into excel and added the first part of the URL. That then gave me the full path.
Posted on 05-12-2023 07:20 AM
Reach out to your Apple SE or Apple Rep, they now have developed script available by request. Their licensing doesn't allow sharing of the script by you can ask for it. Very similar to Carl's script. Is meant to work with MDM's and works with GB and Logic. I have yet to use but received it earlier this spring.
Posted on 05-12-2023 08:18 AM
Hi @cvangorp I spoke to multiple people at Apple and they couldn't find any scripts to give. They said they can create one but it would cost $$$. Do you have any sort of reference I can use? Or did you pay for this service?
Posted on 05-12-2023 08:23 AM
I believe I can supply it. Let me just check first
Posted on 05-15-2023 01:22 AM
that would be awesome!
Posted on 06-30-2023 11:10 AM
Were you able to find out if you could supply it?
Posted on 07-05-2023 06:01 AM
I am not able to supply it but you do need to speak with your SE from Apple and they can provide it.
Posted on 05-12-2023 10:37 AM
Script is called GB loops, I got it as it was mentioned via our monthly webex meeting with Apple SE for Higher Ed and if we wanted it to let our SE know. I had mentioned it to our Apple SE over a year ago that I was looking for something like this to replace Carl's script.
Posted on 07-14-2023 03:05 PM
Thanks @cvangorp but Apple is not willing to supply the script unless you have at least enterprise support, which from my understanding gives you an SE. For those in same boat as me and not able to afford this service I have three methods.
1. You could use the script I posted earlier in the thread but may need to be checked when there is an update to GB.
2. This won't install the loops before hand but a standard user can click install with out having to enter creds and the same if the user attempted to install all sounds at a later date.
/usr/bin/security authorizationdb write system.install.apple-software allow
3. Digging into GB a bit further I found a plist which gave me all the pkg names. which I could then curl ( Little more automated than method 1) Also note its about 40GB in total so can take a while to download and install.
# Create directory /tmp/jamf, continue if directory already exists
mkdir /tmp/jamf || :
# Change directory to /tmp/jamf
cd /tmp/jamf
#Download installer container into /tmp/jamf
# -O downloads file without changing its name
# Current Plugins and Sounds
for line in $(/usr/bin/defaults read /Applications/GarageBand.app/Contents/Resources/garageband*.plist Packages | /usr/bin/grep "DownloadName" | awk '{ print $3 }' | sed 's|["";,]||g' | grep -v "lp10_ms3_content")
do
curl -O https://audiocontentdownload.apple.com/lp10_ms3_content_2016/$line
done
#Legacy Plugins and Sounds
cd /tmp/jamf
for line in $(/usr/bin/defaults read /Applications/GarageBand.app/Contents/Resources/garageband*.plist Packages | /usr/bin/grep "DownloadName" | awk '{ print $3 }' | sed 's|["";,]||g' | grep '../lp10_ms3_content_2013' | sed 's/^.\{3\}//')
do
curl -O https://audiocontentdownload.apple.com/$line
done
# Run installer package with the boot drive as the destination
for pkg in $( ls /tmp/jamf/*.pkg ); do
echo "Installing $pkg"
installer -pkg $pkg -target /
done
#Clean up
rm -r /tmp/jamf
Posted on 07-14-2023 05:07 PM
I don’t have enterprise support. The sales rep can refer you to your specific SE. you don’t need to pay a dime. It’s free. Just need to reach out to them.
Posted on 08-03-2023 07:44 AM
3rd times a charm. Got the script.
Thanks @GabeShack and @cvangorp
Posted on 07-16-2024 11:24 AM
For those that weren't aware, I believe the appleLoops tool has been deprecated and there is a new tool on CarlAshley's github:
https://github.com/carlashley/loopdown