# Prototype global .login file
# $Id: login,v 1.13 2004/10/22 18:31:12 ghudson Exp $

#krb524init
#aklog -setpag

# This file is sourced by default user file ~/.login

# SGI xwsh runs shells as login shells. We don't want this.
if ($?XSESSION) then
  exit 0
endif

# Remember the pid of the login shell; used by dustbuster.
setenv ATHENA_LOGIN_SESSION $$

set initdir=/usr/athena/lib/init

# Create a unique temporary directory for the session, and remember
# the directory name in the environment.
#set sessiondir = "`$initdir/mksessiondir -s $$`"
#if ("$sessiondir" != "") then
#  setenv ATHENA_SESSION_TMPDIR "$sessiondir"
#endif

if (! -r ~/.hushlogin) then
	set verbose_login	# Echo messages unless user has ~/.hushlogin.
endif
/bin/stty sane			# Use sane control characters

if ($hosttype == "sgi") then
  /bin/stty intr ^C
endif

# *******************   ENVIRONMENT SETUP   *******************

# The ~/.cshrc file sets environment variables, attaches lockers, and sets
# the command search path.  It has already been sourced at this point.

# Check that user home directory is available

if ($?TMPHOME) then
    echo "WARNING:"
    echo ""
    echo "Your home directory is currently unavailable."
    echo "This is probably due to a problem with the"
    echo "fileserver on which your directory is stored."
    echo ""
    echo "You may use a temporary directory for this session."
    echo "If you do, any files you create and any mail you"
    echo "incorporate will be DELETED when you logout and lost forever."
    echo ""
    echo "Would you like to continue this session, using a TEMPORARY"
    echo -n "directory? (yes,no) [The default is no] "
    set answer = ($<)
    if ("$answer" =~ [yY]*) then
	echo "Continuing with temporary directory..."
	mkdir ~/Mail
    else
	kill -HUP $$
    endif
endif
	

# *******************   DEVICE SETUP   *******************

# On IRIX, the terminal type may not be set yet.
if (! $?term) then
    eval `tset -s -Q`
endif

# Set device type if interactive session (e.g., dialup)

if (("$term" == switch) || ("$term" == network) || ("$term" == dialup) \
    || ("$term" == unknown)) then

    # The standard terminal emulation is vt100.  To use a different emulation,
    # set the environmental variable DEF_TERM in your ~/.environment file to
    # to the device you want to emulate (one that the system will recognize).

    if (! $?DEF_TERM) setenv DEF_TERM vt100
    set noglob; eval `tset -s -I -Q "?${DEF_TERM}"` || unset noglob

endif


# If the login is on an X display but the DISPLAY variable has not 
# been set, ask the user what the DISPLAY should be (e.g., rlogin)

#if (("$term" =~ xterm*) && (! $?DISPLAY)) then
#	echo -n "What DISPLAY are you using [default: none]? "
#	set response = ($<)
#	if ("$response" != "") then
#		if ($response =~ *:*) then
#			echo "Setting DISPLAY to $response"
#			setenv DISPLAY "$response"
#		else
#			echo "Setting DISPLAY to ${response}:0"
#			setenv DISPLAY "${response}:0"
#		endif
#	endif
#endif


# *******************   ACTIVITY STARTUP   *******************

# Run standard system/user startup activities

# Run default system startup activities.  To skip these, put the command
# "set skip_tty_startup" in your ~/.environment file.

if (! $?ZEPHYR_CLIENT) setenv ZEPHYR_CLIENT zwgc

if (! $?skip_tty_startup) then
	if ($?verbose_login) echo "Running standard startup activities ..."
	set ignoreeof			# ^D won't log you out
#	$ZEPHYR_CLIENT			# Start Zephyr client
	echo "This is a dialup, so zwgc is not being run on login."
	get_message -new -login		# Display current motd
	mailquota -n			# Check quota on post office server
	from -t -n			# Check for mail
	(olc who &) >& /dev/null	# Ping the OLC server
endif


# Run the tty-session customizing commands in your ~/.startup.tty file.

if (-r ~/.startup.tty) then
	if ($?verbose_login) then		# Don't echo if noninteractive
	  echo "Running custom startup activities listed in ~/.startup.tty ..."
	endif
	source ~/.startup.tty
endif


# Run notification system, lert. To skip this (a generally bad idea unless
# you plan to run it yourself), put the command "set skip_lert" in your
# ~/.environment file.

if (! $?skip_lert) then
	lert -q				# Don't want to see server errors.
endif
