Communication between Installer Plugin and script: how?
Communication between Installer Plugin and script: how?
- Subject: Communication between Installer Plugin and script: how?
- From: Mike Fischer <email@hidden>
- Date: Mon, 15 May 2006 15:28:39 +0200
Hi!
I'm trying to figure out the best way to communicate a user choice
made in an Installer Plugin pane to one of the scripts (postflight).
So far I have tried from the method:
-(void)didExitPane:(InstallerSectionDirection)dir
A) putenv()
B) create a temporary file in /tmp
The function putenv() seems to have no effect on the environment in
the postflight script and I see no way to transport information in
this way. Am I missing something here?
Creating the temporary file works but there are drawbacks:
- I need to make sure that nobody else is using a file of the same
name. I've gotten a 99.9% solution by using a UUID as the filename
but it's not 100% which I'd like to have. I tried to use getenv() to
get the INSTALLER_TEMP directory but the result was always null.
Apparently this environment variable is not (yet) set in the context
of my Installer pane.
- I need to make sure that the file is deleted after use. Of cource I
rm it in the postflight script and this works fine. But the user may
quit the installer after my Installer pane has created the file and
before the postlight script runs. Overriding -(void)dealloc on the
Installer pane didn't work because apparently the pane is never
deallocated. So where can I do cleanup tasks that should run when the
Installer quits?
Going through the headers of the InstallerPlugins.framework I didn't
see any built-in mechanism for this type of communication. Is thre
any other/real documentation yet?
So I basically need an idea for a one way communication from the
Installer Plugin pane to the postflight script (or one of the other
scripts) that always works, doesn't potentially disrupt other
software and safely cleans up its mess in all cases. Any help would
be appreciated.
Thanks!
Mike
PS. All of this was done on Mac OS X 10.4.6 Build 8I127 in case it
matters. (And yes, my installer requires >= 10.4 and alerts the user
if run on older systems.)
--
Mike Fischer Softwareentwicklung, EDV-Beratung
Schulung, Vertrieb
Web: <http://homepage.mac.com/mike_fischer/index.html>
Note: I read this list in digest mode!
Send me a private copy for faster responses.
_______________________________________________
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