[comp.sys.apollo] Alarm Server and Env variables

crgabb@sdrc.UUCP (Rob Gabbard) (01/18/88)

On the DN330 in my office I run the alarm_server from `node_data/startup.19l
instead of when I log in so that I can get notified of problems even when I'm
not logged in, plus if there were any problems during the night, I can see them
in the morning first thing.

The problem I'm having is that it seems that any environment variables set in
`node_data/startup.19l after the cps line that starts the alarm_server are not
set ! For instance, I set UNIXLOGIN and NAMECHARS but they don't get set if
the alarm_server is started. A solution is to move the alarm_server startup
after the variable set, however it is an interesting bug (or feature?).

By the way, if you start the alarm_server upon node startup like I do, you
will get a message like "~user_data/alarm_server.mbx cannot open ....." because
it lookes for a user directory, namely ~. If you create a user_data directory
in /sys the mailbox file will get created there and you won't get the message.

Rob Gabbard                                    UUNET: uunet!sdrc!crgabb
Structural Dynamics Research Corporation

"Why should I worry what happens tommorow ? You know tommorow just might not
    come !" - Gary Rossington

nazgul@apollo.uucp (Kee Hinckley) (01/26/88)

In article <191@sdrc.UUCP> crgabb@sdrc.UUCP (Rob Gabbard) writes:
> On the DN330 in my office I run the alarm_server from `node_data/startup.19l
...
> The problem I'm having is that it seems that any environment variables set in
> `node_data/startup.19l after the cps line that starts the alarm_server are not
> set ! For instance, I set UNIXLOGIN and NAMECHARS but they don't get set if

When you log in is there an alarm window up?  I suspect that what you are seeing
is a side effect of the DMs inheritance rules.  You can set a bunch of environment
variables in the startup file, but when you press a shell key or otherwise start
a process the DM looks for the most recent window you were in and inherits all
of the context (working directory, environment variables, etc.) from that window.
Normally this is exactly what you want (my shell key for instance, does a "cp"
of "$(SHELL)" which means that I get the same type of shell as the one in my
current window).  However in the case of the alarm server it isn't what you
want, but the DM doesn't know the difference.  Setting the variables before running
the alarm server makes it all work since now its windows have all of the variables
set in them, and you'll inherit them indirectly.

                                                        Kee Hinckley
                                                        User Environment
-- 
### {mit-erl,yale,uw-beaver}!apollo!nazgul ###   (Apple ][e ProLine BBS)    ###
###      apollo!nazgul@eddie.mit.edu       ###    nazgul@pro-angmar.uucp    ###
###           nazgul@apollo.uucp           ### (617) 641-3722 300/1200/2400 ###
I'm not sure which upsets me more; that people are so unwilling to accept       responsibility for their own actions, or that they are so eager to regulate     everyone else's.