Packaging and Distributing Dlang Applications with GtkD Dependency?

Jacob Carlborg doob at me.com
Fri Sep 27 12:42:56 UTC 2019


On Wednesday, 25 September 2019 at 11:46:04 UTC, Ron Tarrant 
wrote:
> Hi y'all,
>
> I've been Googling how to do this, but coming up with nothing 
> definitive. Are there any articles for how to do this for:
>
> Windows?
> Linux?
> other UNIX-alike OSs?

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


More information about the Digitalmars-d-learn mailing list