Re: Can I use "Check" programs, instead of scripts?
Re: Can I use "Check" programs, instead of scripts?
- Subject: Re: Can I use "Check" programs, instead of scripts?
- From: Christopher Ryan <email@hidden>
- Date: Mon, 21 Nov 2005 18:34:55 -0800
Scott,
I'm using PackageMaker (v2.1 (122)) to create an installer. I'm
trying to use a compiled tool, rather than a script, for the
InstallationCheck and VolumeCheck "executable". However, neither
executable is called. I have "stdio.h" statements that create and
write to a know file, so I know they aren't working. I know the
tools work, because I can execute them from the command line, and
they create the expected debug files and return the expected return
value.
First, can I use compiled tools instead of scripts for these?
Yes
Second, what do I need to do to get these to execute? The tools
are placed in the proper location in the resulting "xxx.pkg" bundle.
Executable named VolumeCheck and/or InstallationCheck
No, wait! I just discovered that if I manually edit the
"Info.plist" file in the "xxx.pkg" bundle, and remove the
"IFRequirementDicts" key/value pair, my Check tools are run. This
seems wrong. Even if the Requirements are used instead of the
InstallationCheck tool, I would still expect the "VolumeCheck" tool
to be executed, because there are no volume-specific Requirements.
This is the way IFRequirements work. This sort of confusion has
brought us to "Distribution Scripts" in Tiger, which do everything
through one interface (JavaScript) and the JS may call an
executable. The original idea of IFRequirements were to allow a
"safe" way to do requirement checks ( safe, because IFRequirements,
unlike scripts or executables cannot edit the users hd), so they
"replace" all old checks.
You get Distribution Script's JavaScript, IFRequirements, or
InstallationCheck/VolumeCheck, not all of them.
Now my problem is that I can't seem to delete the last "Package
Requirement" from the dialog pane "Edit Package Requirements...".
The "-" (minus) button on the last requirement is dimmed and can't
be deleted. There is no menu command to delete it. If I change
the rule to a blank condition, I get a red exclamation point, and
the "Save" button goes dim. No matter what I do, an
"IFRequirementDicts" key/value pair is always emitted to the
"Info.plist" file.
Sounds like a bug. My only suggestion would be to make the package
and remove the IFRequirement by hand. Then file a bug against Package
Maker.
Chris
Any suggestions? Do I have to start with a new PackageMaker with a
blank list of requirements?
Thanks.
Scott
-----
_______________________________________________
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