Re: PackageMaker 2.0 packages not working in Panther
Re: PackageMaker 2.0 packages not working in Panther
- Subject: Re: PackageMaker 2.0 packages not working in Panther
- From: Christopher Ryan <email@hidden>
- Date: Tue, 28 Jun 2005 16:38:06 -0700
Andy,
We want people to move to using the CFBundleShortVersionString for
versioning, but since other versions where used in the past we
continue to use them as the overall version.
In Tiger the internal 5 tuple version used to represent the version
is made like this:
CFBundleShortVersionString | SourceVersion | IFMinorVersion
0.0.0 | IFMajorVersion
| minor
" |
major | 0
" | 0
(major and minor come from the package_version file, which is no
longer needed)
In Panther, a much less deterministic method was used (which is why
we switched to this method in Tiger). Tiger's package maker no
longer writes out the IFMajorVersion and IFMinorVersion because we
want you to use CFBundleShortVersionString (which is shown as
"Version" in Package Maker on Tiger). However, after looking into
this problem for you, it looks as if Panther would only use the
CFBundleShortVersionString if IFMajorVersion and IFMinorVersion are
defined! So, it sounds like Package Maker needs to continue to write
out these keys so that the Panther (and possibly Jaguar) installer
looks at the CFBundleShortVersionString as the significant "bits".
Chris
Mac OS X Installation & Setup
I've been updating some of my packages to the new PackageMaker
2.0.1 under Tiger, but I'm finding that while these work fine in
Tiger, if I try to install an update of an existing package that
had been previously installed in Panther, the new package fails,
saying that ".A newer version of the package is already installed."
Looking at the receipt of the original install (done under Panther
with a package created with PackageMaker 1.2), I discovered that
its Info.plist contains the two keys IFMajorVersion and
IFMinorVersion, both set to 0. The new plist from PackageMaker
2.0.1 doesn't create these two keys. I believe this is what's
causing the problem because if I either remove these two keys from
the receipt package or add them to the new package, the install
works under Panther. It would seem that the Installer that runs
under Panther looks at these values and if they're missing, gets
confused.
I'm wondering if anyone else has encountered this problem and what
sort workaround there might be (other than manually adding these
two keys each time I build the package under Tiger). Is the new
PackageMaker supposed to create packages that are backwards
compatible to the Installer that runs under Panther?
Thanks!
-- Andy
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Installer-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Installer-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden