http://www.perlmonks.org?node_id=351630

shriken has asked for the wisdom of the Perl Monks concerning the following question:

I'm not sure if this is a problem with the configuration of the Mac os X (panther, 10.3.3) system, or the way I'm using this module.

Perl v5.8.3, Mac::etc modules are up-to-date with CPAN.

The why is long; basically, I have a program I want to run periodically via cron on this Mac. Under certain conditions, I want to pop-up a dialog to notify the user. Here's the test case:
#!/usr/bin/perl use diagnostics; use strict; use Mac::Notification; my($foo) = new NMRec( nmStr => "hello world" ); NMInstall($foo); sleep(10); exit;
Runs perfectly, no whining/warnings. Dialog appears. Dialog can be dismissed, or it goes way after 10 seconds when Perl cleans up...

Next I try to run the test case from cron. I've tried this as the user who is currently logged onto the Mac, and as the 'root' user. In both cases, I'm getting the error message output via cron. Excerpt:

RegisterProcess failed (error = -50)

Now for the curveball. The Mac is using postfix for it's mail daemon and postfix (which I don't understand all) is throwing the output in a mail spool directory and it has high-ascii characters in it... So I'm not sure if there's reall a space in RegisterProcess (for example), or some other hairy detail in the error message that I just can't make out.

Since it works command line, and the modules load under cron, I'm guessing this is some sort of "security" issue where I'm not being allowed (by the mac os) to use the notification manager from cron.

Any help?