- First Impressions
- Reboot
- The Dock
- Installers
- Package Maker
- Multiple Bundling
- tar, gzip, bzip2, et al.
- DMGs
- Internet-Enabled DMGs
- ZIP
- Conclusion
- Afterword
Internet-Enabled DMGs
Starting with OS X 10.2.3, DMGs can be configured to be "Internet enabled." Upon downloading the DMG file, Safari will open the file, mount it, copy the contents to the Desktop (or wherever downloads are configured to go), unmount the DMG file, and delete it. Sound complicated? It is.
Internet-enabled DMGs have multiple problems:
- They are so slow that the user may try to do something with the DMG and/or application while the file is being processed, potentially causing problems.
- Not all Web servers will deliver the DMG properly.
- They are slow to make.
- They only work properly with Safari, and only when Open Safe Files is turned on.
While some people argue that this is the "Mac" way to do application deliver, I would disagree. Because of the slowness (up to 57 times slower than zip, by some reports), this format does not present the optimum experience to your users.
DMG files as well as their Internet-enabled cousins allow the developer to embed a EULA (End User License Agreement) into the DMG itself. This forces the user to select "I Agree" to the EULA before the DMG will open. While this sounds like a good idea, it is probably on shaky legal ground. In addition, EULAs cause a few issues for the user. As a developer, you are better off embedding the EULA into your application. That way you can present the EULA to each user when they run the application for the first time, and you can have it available in your About box or Help file.
As with regular DMGs, a very large number of applications use Internet-enabled DMGs. It could be argued that this is one of the most common ways to deliver an OS X application.