Re: packagemaker update problems
site_archiver@lists.apple.com Delivered-To: installer-dev@lists.apple.com On lundi, septembre 10, 2007, at 10:08 PM, Bill Coderre wrote: So the name you choose is particularly important. And here's my policy on installer names and IDs. My €0.02 _______________________________________________ Do not post admin requests to the list. They will be ignored. Installer-dev mailing list (Installer-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/installer-dev/site_archiver%40lists.a... [...] When the installer is going to install, it looks for a receipt with the same name as the current package about to be installed. If there is none, it installs the files in the BOM (if there's a bundle with a newer version as noted in BundleVersions.plist, it will skip that bundle, and put a note in the log). The Install button will be titled "Install." If there IS a receipt with the same name, and the receipt has a version (noted in IFMajorVersion and IFMinorVersion of the Info.plist) that is newer than the one being installed, the installer prevents installation with an error. Just to be "pointilleux", AFAIK, it depends on whether the AllowRevert flag is enabled or not in the package. I've also found that if the package is part of a metapackage, it does not prevent installation on 10.4.10 for instance, it just marks the package as being skipped. If not, the installer goes into "upgrade mode." The Install button will be titled "Upgrade." Also, the installer will find all the files/bundles in the receipt that are not in the package being installed, and "obsolete" them (delete them) during installation. If an installer contains the complete software package, I call it a "full installer" and give it a name like iMovie.pkg. If an installer contains a partial set of software, I call it an "update installer" and give it a name like iMovie_701.pkg. At the risk of offending people by saying this is a "good" scheme, let's just say it seems to work OK for me. Note that if there ARE files to be gotten rid of, I have to do that with an additional script. But I have a script to do that, and the list is simple enough to generate during build. Hope This Helps. Hmm, I might be terribly cautious but when doing an updater (updater installer), I also change the CFBundleIdentifier. In the case I'm thinking about, I append a ".updater." to the CFBundleIdentifier. With both the package name and CFBundleIdentifier name changed, I tend to believe Installer.app will not think that this is the same product. This email sent to site_archiver@lists.apple.com
participants (1)
-
Stéphane Sudre