I am new to Mac. In the Windows world, installers basically would be msi files. These msi files are typically a compressed database telling the msiexec where the files should get copied. These files would get copied to the appropriate directories. There would also be registry entries indicating that the files should get copied to Program files etc.

Based on this, I have following questions:

  1. In Mac/Unix since there is no control panel, I could be installing same dmg again and again. I would never get repair option.

  2. Why are Volume and mount required? Isn't the installation on Unix like copying files to a target system ?.


Note that there are usually two ways of installing applications on Mac OS X:

  • A simple and common way is to send the user an application bundle. The user can copy it to whichever directory (s)he feels like it. Typically, applications are copied/moved to the /Applications directory and can be moved around the filesystem (or to other filesystems).

  • Another way is to provide an installer. Installers are helpful in case there’s need for pre-/post-flight scripts or specific directories.

So, answering your questions:

In Mac/Unix since there is no control panel, I could be installing same dmg again and again. I would never get repair option ?

Although there is something similar to Control Panel, namely System Preferences.app, there is no stock application to manage applications (list, install, remove). Since most users install applications to the /Applications directory, listing applications is done via inspecting the directory, installing applications is done via copying/moving application bundles to that directory, and removing applications is done via removing application bundles from that directory.

Yes, it is possible for a user to install the same application repeatedly — but I can’t really imagine a use case for that. Maybe you’re asking this because of a ‘repair option’? What would that do? If you’re considering the case where an application bundle gets corrupted by some reason then it could be just a matter of copying the application bundle again.

Why are Volume and mount required ?. Isn't the installation on unix like copying files to a target system ?

.dmg volumes are not required to install applications. A developer/distributor can ship an application bundle in a .zip file, or a .tar file, or a compressed .tar file. Many developers prefer to ship applications via a .dmg volume because it is possible to customise the appearance of the volume when it is mounted — custom background, custom icons, custom icon sizes, or a link to the /Applications directory to make it easier for the user to copy the application bundle to that location.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .