How to correctly distribute software in Mac ?

Archives Forums/MacOS X Discussion/How to correctly distribute software in Mac ?

Armitage 1982(Posted 2009) [#1]
Hi

I would like to try the Brucey BMK (NG) Universal Binaries on a MAC OS X 10.5.5 Leopard (Intel Mac so).

As I'm mostly a Windows user (but willing to release games on Mac too) I'm wondering what's the best distribute form in Mac ?

I know there is an "Installer.app" for that but do you think it can handle Universal Binaries and that PPC will be able to install it ?
I like the idea of being installed like any other product (think it's more easy for anybody).

Also I think it's also possible to distribute software with a Package system similar to Linux.
How can you produce these package ?
Is this easy to install for lambda users ?

In worst cases would a simple zip file would be better ?

Thanks for your advices and good help.


Tricky(Posted 2009) [#2]
The package system for the build in installer is a good way to install stuff, but that format is hard to distribute, since an installer package for Mac is actually a folder with a lot of smaller files.

The most popular form of distribution on Mac is to either just zip it, or to put the .app in a DMG file. A dmg can be mounted as a disk drive, and if you put the app or folder in it that people have to drag to their application folder you mostly have a good way to go. It is one of the most used principals.

Many people who use the DMG method place an alias to the applications folder in the DMG file, so that they can just drag your software into the folder already displayed in your DMG file. Most Mac users find this the most easy way to install software.

DMG is (as far as I know) not tied to any processor setups, so it works in as well PPC as Intel.

DMG files can be created with the Mac tool "Disk Utility" that comes standard with MacOS X.




What can make installing even easier is when you put all your external data into the .app.
Then I don't mean by using "Incbin", but by using the .app folder.

On Mac all GUI based apps are folders
A simple example

Application.app can contain
Contents
Contents/MacOs
Contents/MacOS/Application <- The actuall app.

You can also do store your pictures like this

Apllication.app/Contents/Data/Picture1.jpg
Apllication.app/Contents/Data/Picture2.jpg
Apllication.app/Contents/Data/Picture3.jpg
Etc.

That way your users only have to drag and drop the application in order to install it.
Works quite easily actually. ;)


Armitage 1982(Posted 2009) [#3]
Thanks a lot Tricky for these valuable informations :)

I like the DMG Idea and surely go with it and see what's happen with "Disk Utility".
Sounds fairly easy and PPC compliant.

Thanks again :)


okee(Posted 2009) [#4]
Tricky,

How do programs generally install in leopard, do all the files related to a program
go in the same folder, or are they like windows and put some files into the system folders
and write to a mac registry equivalent.
i just got a loan of a macbook with Leopard off a friend with the intention of buying it
and so far love it, but just trying to find out more about how it works under the hood.


okee


Corum(Posted 2009) [#5]
Mac OS has no registry equivalent. (Thank God :)
Just think about it like a real UNIX system.
Usually the whole stuff is packed into a single file, which you can even browse into.
This file contains executables, localisation files, icon references, subdirectories, assets, etc.
Talking about "windows-like style", an eventual INI file could be located into /Library/preferences directory.