Mac installer for audio sample libraries best practices?
-
Hello everyone,
I'm looking for some advice on best practices for making a mac installer.
I recently completed my first sampled instrument plugin, and on windows I've created a very elegant installer. Using Inno Setup, I've created an installer that prompts the user to select a sample folder, then automatically unpacks all the audio samples to that directory, and generates a link file in the users appdata folder. When the plugin is launched for the first time it works seamlessly, without the user needing to worry about unpacking the samples, or locating the sample folder manually.
How do I make something similar for mac? Is there a preferred way to handle unpacking audio sample libraries? Is there a preferred way to generate a link file in the users Application Support folder?
I know that because of how permissions work on macOS I probably wont be able to replicate what I've done on windows, but any advice would be extremely helpful. Even just pointing me to a program that can create mac installers would be helpful.
Thanks.
(edit: spelling)
-
@WillowWolf
You can use white box packages. -
@Oli-Ullmann yes but you can't write to the system and user folders simultaneously on OSX so you end up needing a separate samples installer if you want the user to be able to choose their own sample location.
-
@DanH said in Mac installer for audio sample libraries best practices?:
but you can't write to the system and user folders simultaneously on OSX s
You can, see the video I made about it

-
@David-Healey ooh, is there a link or is it patreon only?
-
@WillowWolf You could look at Package Builder too. Apparently it's been updated to specifically handle installing audio plugins, so I assume it would do what you need.
-
@dannytaurus said in Mac installer for audio sample libraries best practices?:
specifically handle installing audio plugins
What does this mean?
@DanH said in Mac installer for audio sample libraries best practices?:
ooh, is there a link or is it patreon only?
Yes it's on Patreon: https://www.patreon.com/posts/108026744
The instructions are in the Packages documentation.
I'll also be including the instructions in the packaging workshop I'm working on.
-
@David-Healey said in Mac installer for audio sample libraries best practices?:
What does this mean?
I don't know. I'm repeating what I read in other posts here. Hence the 'apparently'

I do know it has an Audio Plugin option when you create a new package project.
And given that installing different files to different locations, including to both user and system directories, is a very common requirement for audio plugins, I assume it will handle it.
Haven't tried it myself yet though.

EDIT: looks like the Audio Plugin option might be purely a visual element, and it doesn't actually do anything special.
-
@David-Healey You get the Destinations settings below. I'm not 100% clear if that means User folder and System Disk though.

EDIT: actually, that Destinations section just dictates what the user sees on this page of the installer:

I think just back away quietly. I'm just making things worse here

-
@dannytaurus said in Mac installer for audio sample libraries best practices?:
You get the Destinations settings below. I'm not 100% clear if that means User folder and System Disk though.
Those are also in Packages, I think this is just a different UI for the same thing. Behind the scenes they're both using pkgbuild and productbuild.
-
Is there a way to get packages to prompt the user for a location to install a specific component such as samples?
@Casey-Kolb I seem to recall you were doing something like this?
-
@David-Healey It was so finicky we ended up just installing them to a default location on the hard drive. If the user wants to move them, they just move them to an external drive and relocate them in CUBE.
-
@Casey-Kolb said in Mac installer for audio sample libraries best practices?:
@David-Healey It was so finicky we ended up just installing them to a default location on the hard drive. If the user wants to move them, they just move them to an external drive and relocate them in CUBE.
shudder.... this is exactly why we went with an in-plugin set up for samples, meta data, presets and images etc.
So the "installer" only has to actually install the plugin itself...
-
@Casey-Kolb What default location did you use?
-
This post is deleted! -
@David-Healey Yea it can be done. I think @Lindon's suggestion is much better but a little more work. It looks like Packages may be updated, but I recall having an issue with the version available at the time. You need a version which actually let's you edit the Presentation of the Installer.
Note too, if you go down this route you also need to autogenerate the LinkFile which points to the sample directory. This is usually autogenerated in the Application Support Folder when a user installs the sample.
David if you are looking to further explore the benefits of vibe coding a solution this is a good candidate....
-
@HISEnberg said in Mac installer for audio sample libraries best practices?:
You need a version which actually let's you edit the Presentation of the Installer.
I have that version. I don't see a way to prompt the user to select a location though. I emailed the dev about it but no response as yet.
-
What was your approach to making an in plugin setup for samples?
Any advice or suggestions would be helpful, since I'm exploring a similar route.
-
@HISEnberg Doing this on windows is pretty easy with inno setup. In the main plugin installer, you can prompt the user to choose a location to install the audio samples, and then use a wildcard to generate a linkwindows file based on the location they chose. When the user opens the plugin for the first time it works as expected, without having to locate samples, be reloaded or fussed with.
Trying to do something similar on mac has been kind of a nightmare so far. The seemingly fundamental inability to install files to both /library and ~/library makes me think there's no single-installer solution.
Until I figure out an in plugin solution, I'm currently exploring the idea of having two installers. One for the samples (and linkOSX file), and one for the plugin.
-
@WillowWolf said in Mac installer for audio sample libraries best practices?:
What was your approach to making an in plugin setup for samples?
HISE has a built in sample installer.
@WillowWolf said in Mac installer for audio sample libraries best practices?:
The seemingly fundamental inability to install files to both /library and ~/library makes me think there's no single-installer solution.
This is entirely possible (as I mentioned earlier in this thread). I have a video about it on my Patreon page, the instructions are also included in the Whitebox Packages documentation.
The problem with Packages is that as far as I can tell there is no method to prompt the user for an install location. You have to install the files to a predefined location. But I've emailed the Packaged dev about this and he's looking into it for me.