Re: Unable to enforce version checks in metapackage
Re: Unable to enforce version checks in metapackage
- Subject: Re: Unable to enforce version checks in metapackage
- From: Iceberg-Dev <email@hidden>
- Date: Sat, 30 Oct 2010 00:36:53 +0200
On Oct 29, 2010, at 3:02 AM, Monte Benaresh wrote:
Hi All,
Some of you may have seen that I am interested in creating a
metapackage that only installs its components when they are newer
than what is already installed. Thanks to Stéphane for his replies
to my last post.
Originally, I tried twiddling all the available version numbers in
Iceberg. I found that the only instance of the version number that
is checked for simple packages is "Short Version" under "Display
Information." However, as other developers have seen, this
mechanism is absent when installing a metapackage, and all
components are installed regardless of whether they are older or
newer.
Today I thought of using the InstallaitonCheck script to enforce
version checking. First I simply modified a working script to
'exit 113' and defined a string for it. This all works fine in the
simple package, but when placed into a metapackage I get the
following behavior:
1. Log error:
Oct 28 17:44:22 Monte-Intel-Mac Installer[2793]: Package Authoring
Error: Infinite loop between <choice> attributes and mixed state
aborted.
2. No alert box.
3. The component generating the failure is grayed-out. Hovering
over its entry in the "customize" list shows tip text with my error
message string.
I did more experimenting, and #1 happens whenever InstallaitonCheck
returns a non-0 return code.
Are metapackage installs really so badly broken or are there some
other rules I must abide by when dropping components into a
metapackage?
My goal is simply to combine multiple installs for the convenience
of the user while preventing back-rev components from getting
installed.
An InstallationCheck script returning a non-0 return code should not
cause that kind of error. Using an InstallationCheck has always been
a solution with metapackages to disable a package (for instance if
it's not compatible with the current OS version).
The error message is a bit mysterious. It looks like the kind of
message you might get if you were using a distribution script and
having a package P1 whose state depends on the state of package P2
and the state of P2 depends on the state of P1.
_______________________________________________
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