On Friday, 27 September 2019 at 12:42:56 UTC, Jacob Carlborg
wrote:
For macOS you should distribute a GUI application for end users
as an application bundle [1]. That's basically a directory
containing a specific structure. Any dependencies and resources
like libraries (GTK), images and so on should be bundled inside
the application bundle. Then package the application bundle
inside an archive, ideally a Disk Image (DMG) [2]. The
application would be completely self contained and the user can
install it by dragging it to the Application directory.
There might be some specific documentation how to bundle a GTK
application on macOS. I found this [3], don't know if it's good
or not.
Ideally the application should be distributed on the Mac App
Store. But that requires a developer account that costs money.
It also has some restrictions that distribution outside of the
Mac App Store doesn't have. If you cannot distribute using the
Mac App Store the next best thing is to notarize the
application (also requires a paid developer account, as far as
I can see) before distributing it. Otherwise the user will get
a dialog complaining that the application is from an unknown
developer and the user need to explicitly go into System
Preferences to allow it.
[1]
https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW1
[2] https://en.wikipedia.org/wiki/Apple_Disk_Image
[3] https://gitlab.gnome.org/GNOME/gtk-mac-bundler
--
/Jacob Carlborg
Excellent, Jacob. Thanks for all that.