25.12.2020

Create Macos App Bundle

  1. Essential Macos Apps
  2. Macos App Download
  3. Create Macos App Bundle Software
  4. Macos Application Bundle

To create a unique bundle identifier, you append the name of the application to the reversed domain, for example, com.cocoacasts.scribbles. Remember that you choose the bundle identifier. Reverse domain name notation is what Apple recommends and it's a pattern most developers use. The only requirement is that the bundle identifier is unique. However, inside every App bundle is an Info.plist file that contains information about the App that is useful (mainly) to Mac OS X (the types of files it handles, etc.). But the Info.plist file can also contain information about the environment that the App needs to run in. Command-line interface tools for bundling.NET Core projects into MacOS applications (.app) Installation. Install MSBuild task via NuGet package: Dotnet.Bundle. The function hcl:create-macos-application-bundle does several things to construct a suitable Mac OS X application bundle for your delivered image. It: creates the folders comprising an Application Bundle; adds the resources from a supplied template bundle (or LispWorks (32-bit).app or LispWorks (64-bit).app) to the Application Bundle.

All Manuals > LispWorks Delivery User Guide > 13 Example: Delivering CAPI Othello

13.3 Creating a Mac OS X application bundle

The section applies only to LispWorks for Macintosh with the native Cocoa GUI.

You should not simply run a Mac OS X/Cocoa GUI application from the command line in Terminal.app. Instead you should put the image in a suitable Application Bundle and run it using the Finder. The example delivery scripts in this manual create the Application Bundle before writing the executable.

The function hcl:create-macos-application-bundle does several things to construct a suitable Mac OS X application bundle for your delivered image. It:

  • creates the folders comprising an Application Bundle
  • adds the resources from a supplied template bundle (or LispWorks (32-bit).app or LispWorks (64-bit).app) to the Application Bundle
  • writes a suitable Info.plist file in the Application Bundle
  • returns the path of the executable within the Application Bundle

Note: You must supply identifier to provide CFBundleIdentifier when creating a bundle for your own application.

Essential Macos Apps

13.3.1 Example application bundle delivery script

Note how this script calls deliver with the executable path returned by hcl:create-macos-application-bundle:

In the session below script.lisp is in the user's home directory. Here is the start and end of the session output in Terminal.app:

The last line of the deliver output shows the full path to the executable, but you should run the application bundle Othello.app via the Finder.

13.3.2 Alternative application bundle creation code

Your LispWorks Library contains example code which constructs a Mac OS X application bundle. It defines write-macos-application-bundle which is similar to hcl:create-macos-application-bundle.

LispWorks 5.1 and earlier versions relied on this example code to create Mac OS X application bundles and you may still wish to use it, or a modified version of it, if hcl:create-macos-application-bundle does not meet your needs. Load the example file in your delivery script, before calling deliver, like this:

Macos App Download

There is another example, which is actually a save-image script (rather than deliver), in

Create Macos App Bundle Software

(example-file 'configuration/save-macos-application.lisp')

13.3.3 Further Mac OS X delivery examples

Macos Application Bundle

These can be found in your LispWorks library directory:

(example-edit-file 'delivery/macos/')

Mac audio music apps. LispWorks Delivery User Guide - 10 Aug 2017