The macOS "installer" is really just a pretty Finder window that is presented from a read-oly DMG-based volume (that way, copying the .app out of the installer window always makes a copy). If you embed a different icon in each .app "flavor" the installer window should show the correct one.
If we want to provide a way for people to install release, alpha, and nightly apps side-by-side, then we do not need to do anything: macOS users already do this today by creating a folder for each copy of the application. The folder will then contain Tor Browser.app and the TorBrowser-Data folder that is associated with that instance.
On the other hand, if we want to allow users to put release, alpha, and nightly app bundles in /Applications all at the same time we would need to do two things:
(1) Use a unique name for the app bundle, e.g., Tor Browser Alpha.app vs. Tor Browser.app.
(2) Use a unique name for the TorBrowser-Data directory. Today when the application is launched from /Applications, the data directory is always created in the same location (~/Library/Application Support/Tor Browser-Data), and sharing that between release, alpha, and nightly could cause problems.
My opinion is that it is not worth the engineering effort to do (2), but maybe we should do (1). Having a unique .app name and icon would definitely make it easier for people to keep track of which app is which.
The name bundle is MOZ_APP_DISPLAYNAME, where we are going to include the channel name in tor-browser#42398 (closed), for consistency on Mullvad Browser, where the display name is used for default browser stuff.
Moreover, in my recent changes to the Windows installer, I already started including the channel name in the default directory of alphas and nightlies, and in the shortcut name.
So, even more consistency gained by doing this .
We'll still have the problem of profiles: at the moment, all the channels are sharing the same profile, even though Firefox now supports channel-specific profiles (and we're explicitly disabling them).
However, we'll need to investigate separately on what to do for this (especially if we want to migrate the old data if we decide to move to channel-specific profiles).