Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Oct 2003 11:11:20 -0800 (PST)
From:      Urchin Software <freebsd@urchin.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/58646: New port
Message-ID:  <200310281911.h9SJBgW9084764@mail.urchin.com>
Resent-Message-ID: <200310281920.h9SJK4LM031973@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         58646
>Category:       ports
>Synopsis:       New port
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 28 11:20:04 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Doug Silver
>Release:        FreeBSD 4.8-STABLE i386
>Organization:
Urchin Software Corporation
>Environment:
System: FreeBSD mail.urchin.com 4.8-STABLE FreeBSD 4.8-STABLE #1: Mon Apr 14 16:17:43 PDT 2003 root@mail.urchin.com:/usr/obj/usr/src/sys/URCHIN i386


>Description:
	Urchin is the most powerful web traffic analysis program available.
We have set this to install into $PREFIX/urchin, i.e. /usr/local/urchin and
upon completion two services start up, our Apache server on port 9999 and
a scheduling daemon.  If starting up a service is a problem, it can be adjusted
in the Makefile (START_SERVERS = yes).

** Please note that this submission supercedes #56644 on 09/09/2003 **

Thank you.

>How-To-Repeat:
	This is a new port
>Fix:

--- urchin5.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	urchin5
#	urchin5/files
#	urchin5/files/install.sh
#	urchin5/Makefile
#	urchin5/distinfo
#	urchin5/pkg-descr
#	urchin5/pkg-plist
#
echo c - urchin5
mkdir -p urchin5 > /dev/null 2>&1
echo c - urchin5/files
mkdir -p urchin5/files > /dev/null 2>&1
echo x - urchin5/files/install.sh
sed 's/^X//' >urchin5/files/install.sh << 'END-of-urchin5/files/install.sh'
X#!/bin/sh
X#
X# UNIX installation and upgrade script for Urchin
X# Copyright (c) 2003 Urchin Software Corporation
X
X# Set shell variables and defaults for installation
XPATH=/usr/bin:/usr/sbin:/bin:/sbin:$PATH
XOS=`uname -s`
XHOST=`uname -n`
XINSTALLDIR=/usr/local/urchin
XPORT=9999
XNOW=`date +%Y%m%d%H%M%S`
XLANGUAGE=en
X
X# This sets up a portable way to have echo \c and echo -n be equivalent
Xcase "`echo 'x\c'`" in 
X   'x\c') echo="echo -n" nnl= ;;      #BSD style echo
X       x) echo="echo"    nnl="\c" ;;  #SysV style echo
X       *) echo "$0 quitting: Can't set up echo command" 1>&2; exit 1 ;;
Xesac
X
X# Ask user to choose language
Xif [ $# -eq 0 ]; then
X   echo "Choose Language: [Default: 1]"
X   echo "   1. English"
X   echo "   2. Japanese / 日本語"
X   $echo "-> ${nnl}"
X   read ans
X   case $ans in
X      ""|1) LANGUAGE=en
X            ;;
X         2) LANGUAGE=ja
X            ;;
X   esac
Xfi
X
X# Language Dictionary
Xcase $LANGUAGE in
X   en)
X      ENTRY0001="Error"
X      ENTRY0002="Unable to determine the current directory"
X      ENTRY0003="Missing installer file"
X      ENTRY0004="Welcome to the Urchin Installation and Upgrade Utility"
X      ENTRY0005="Please select the installation type"
X      ENTRY0006="New"
X      ENTRY0007="Upgrade"
X      ENTRY0008="Default"
X      ENTRY0009="Version"
X      ENTRY0010="Invalid response.  Please try again."
X      ENTRY0011="Please read the install.txt file before continuing.  Urchin installs and uses a lightweight Apache webserver for web-based administration and report delivery.  The installer may ask for the following information during installation"
X      ENTRY0012="Be sure to backup the current installation before continuing with this upgrade."
X      ENTRY0013="Japanese"
X      ENTRY0014="A port number for the Urchin webserver.  Port numbers below 1024 require superuser privileges."
X      ENTRY0015="A valid user and group for ownership and operation."
X      ENTRY0016="Specify the installation directory"
X      ENTRY0017="Specify the directory where Urchin was installed"
X      ENTRY0018="The specified location exists and is not a directory"
X      ENTRY0019="The specified location is not a directory"
X      ENTRY0020="The specified directory does not exist"
X      ENTRY0021="Do you want the script to create it?"
X      ENTRY0022="Yes"
X      ENTRY0023="No"
X      ENTRY0024="Failed to make directory"
X      ENTRY0025="You do not have permissions to write to the specified directory.  You may need to rerun this script as root or a different user."
X      ENTRY0026="The specified directory already exists."
X      ENTRY0027="Are you sure you want to install in this location?"
X      ENTRY0028="The specified directory does not contain the necessary files for performing an upgrade."
X      ENTRY0029="Unable to change ownership of files to the specified group.  The group is either invalid or you don't have permission to change files to that group."
X      ENTRY0030="Unable to test group argument."
X      ENTRY0031="Invalid option.  You cannot specify a new installation and an upgrade at the same time."
X      ENTRY0032="Invalid user."
X      ENTRY0033="You must be root to specify a different user."
X      ENTRY0034="The webserver cannot be run as root."
X      ENTRY0035="Invalid argument supplied after -s option."
X      ENTRY0036="A port number less than 1024 requires superuser privileges."
X      ENTRY0037="The specified port is not available."
X      ENTRY0038="You appear to be downgrading Urchin."
X      ENTRY0039="Installed Version"
X      ENTRY0040="Installer Version"
X      ENTRY0041="Stopping Urchin webserver and scheduler"
X      ENTRY0042="Choose a port number for the webserver"
X      ENTRY0043="Choose a user for the webserver and file ownership"
X      ENTRY0044="Choose a group for the webserver and file ownership"
X      ENTRY0045="Would you like the installer to start the Urchin webserver and scheduler at the end of the installation?"
X      ENTRY0046="Summary Information"
X      ENTRY0047="Installing Urchin"
X      ENTRY0048="Upgrading Urchin"
X      ENTRY0049="Installation Directory"
X      ENTRY0050="Webserver Port"
X      ENTRY0051="Webserver User"
X      ENTRY0052="Webserver Group"
X      ENTRY0053="Start Webserver and Scheduler"
X      ENTRY0054="Press return to continue"
X      ENTRY0055="Please select continue or exit"
X      ENTRY0056="Backing up configuration databases and files"
X      ENTRY0057="The following configuration file is not the same as the distributed version.  Please check this file to make sure it contains the correct options"
X      ENTRY0058="Installing Urchin"
X      ENTRY0059="Continue"
X      ENTRY0060="Creating webserver configuration"
X      ENTRY0061="Initializing the configuration databases"
X      ENTRY0062="Upgrading Urchin"
X      ENTRY0063="Updating the configuration databases"
X      ENTRY0064="Setting file ownership and permission"
X      ENTRY0065="Starting the Urchin webserver and scheduler daemon"
X      ENTRY0066="Installation Complete"
X      ENTRY0067="Problems changing permissions on the distribution files"
X      ENTRY0068="The Urchin administrative interface should be ready to use at"
X      ENTRY0069="The Urchin administrative interface will be ready to use at the following address after the webserver and scheduler have been started."
X      ENTRY0070="The administrative interface default username is admin and the password is urchin.  A wizard will direct you through the process of licensing the product and changing the default password.  We strongly recommend that you  change the default value to something more secure."
X      ENTRY0071="To start or stop the Urchin webserver or scheduler, run 'urchinctl start' or 'urchinctl stop' from the installation bin directory."
X      ENTRY0072="Usage"
X      ENTRY0073="directory"
X      ENTRY0074="port"
X      ENTRY0075="user"
X      ENTRY0076="group"
X      ENTRY0077="prints this help message"
X      ENTRY0078="operates the installer in quiet mode (disables some messages)"
X      ENTRY0079="specifies the installation directory"
X      ENTRY0080="specifies the port for the webserver"
X      ENTRY0081="specifies the group for the webserver"
X      ENTRY0082="specifies the user for the webserver"
X      ENTRY0083="specifies whether to start the Urchin webserver and scheduler"
X      ENTRY0084="specifies a new installation"
X      ENTRY0085="specifies an upgrade installation"
X      ENTRY0086="Exit"
X      ENTRY0087="Restarting Urchin webserver and scheduler"
X      ENTRY0088="Determining data and var directory locations"
X      ENTRY0089="Installer cannot continue with upgrade"
X      ENTRY0090="Warning"
X      ;;
X   ja)
X      ENTRY0001="エラー"
X      ENTRY0002="現在のディレクトリが見つかりません"
X      ENTRY0003="インストールファイルが不足しています"
X      ENTRY0004="Urchin インストールとアップグレードユーティリティへようこそ"
X      ENTRY0005="インストールタイプを選択してください。"
X      ENTRY0006="新規"
X      ENTRY0007="アップグレード"
X      ENTRY0008="デフォルト"
X      ENTRY0009="バージョン"
X      ENTRY0010="入力が間違っています。もう一度入力してください。"
X      ENTRY0011="続行する前に install.txt をお読みください。Urchin は、ウェブベースの管理・リポート配布に行うため、軽量化された Apache ウェブサーバーをインストールします。インストール中にこれらの情報を必要とすることがあります。"
X      ENTRY0012="アップグレードを続行する前に、現在インストールされている Urchin をバックアップしてください。"
X      ENTRY0013="日本語"
X      ENTRY0014="Urchin ウェブサーバー用のポート番号です。1024以下のポート番号使用にはスーパーユーザーの権限を必要とします。"
X      ENTRY0015="所有用と操作用の有効なユーザとグループ"
X      ENTRY0016="インストールディレクトリを指定してください"
X      ENTRY0017="Urchin がインストールされているディレクトリを指定してください"
X      ENTRY0018="指定された場所は存在しますが、ディレクトリではありません"
X      ENTRY0019="指定された場所はディレクトリではありません"
X      ENTRY0020="指定されたディレクトリは存在しません"
X      ENTRY0021="スクリプトによってそれを作成しますか?"
X      ENTRY0022="はい"
X      ENTRY0023="いいえ"
X      ENTRY0024="ディレクトリ作成に失敗しました"
X      ENTRY0025="指定されたディレクトリに書き込む権限がありません。ルート、又は別のユーザーでこのスクリプトを再起動してください。"
X      ENTRY0026="指定されたディレクトリはすでに存在します。"
X      ENTRY0027="本当にこの場所にインストールしてもよろしいですか?"
X      ENTRY0028="指定されたディレクトリには、アップグレードに必要なファイルが存在しません。"
X      ENTRY0029="ファイルの所有権を、指定したグループに変更できません。このグループが不正であるか、あなたにファイルをこのグループに変更する権限がありません。"
X      ENTRY0030="グループ引数を変更できません。"
X      ENTRY0031="不正なオプションです。新規インストールとアップグレードを同時に行えません。"
X      ENTRY0032="不正なユーザー"
X      ENTRY0033="違うユーザーを指定するにはルートユーザーになる必要があります。"
X      ENTRY0034="ウェブサーバはルートでは起動できません。"
X      ENTRY0035="-s の後に不正な引数が付いています。"
X      ENTRY0036="1024より小さいポート番号にはスーパーユーザーの権限が必要です。A"
X      ENTRY0037="選択されたポートは有効ではありません。"
X      ENTRY0038="Urchin をダウングレードしようとしています。"
X      ENTRY0039="インストールされたバージョン"
X      ENTRY0040="インストーラのバージョン"
X      ENTRY0041="Urchin ウェブサーバーとスケジューラを停止しいます。"
X      ENTRY0042="ウェブサーバ用のポート番号を選択してください"
X      ENTRY0043="ウェブサーバとファイルの所有権を持つユーザを選択してください"
X      ENTRY0044="ウェブサーバとファイルの所有権を持つグループを選択してください"
X      ENTRY0045="インストールの最後に Urchin ウェブサーバとスケジューラを立ち上げますか?"
X      ENTRY0046="要約情報"
X      ENTRY0047="Urchin インストール中"
X      ENTRY0048="Urchin アップグレード中"
X      ENTRY0049="インストールディレクトリ"
X      ENTRY0050="ウェブサーバポート"
X      ENTRY0051="ウェブサーバユーザー"
X      ENTRY0052="ウェブサーバグループ"
X      ENTRY0053="ウェブサーバとスケジューラを起動してください"
X      ENTRY0054="続けるためにはリターンを押してください"
X      ENTRY0055="Please select continue or exit"
X      ENTRY0056="Backing up configuration databases and files"
X      ENTRY0057="The following configuration file is not the same as the distributed version.  Please check this file to make sure it contains the correct options"
X      ENTRY0058="Urchin のインストール中"
X      ENTRY0059="Continue"
X      ENTRY0060="ウェブサーバ設定の作成中"
X      ENTRY0061="設定データベースの初期化中"
X      ENTRY0062="Upgrading Urchin"
X      ENTRY0063="設定データベースのアップデート中"
X      ENTRY0064="ファイル所有権・パーミッションの設定中"
X      ENTRY0065="Urchin ウェブサーバとスケジューラデーモンの起動中"
X      ENTRY0066="インストール完了"
X      ENTRY0067="配布ファイルのパーミッション変更に問題があります"
X      ENTRY0068="Urchin 管理インターフェースは使用中です"
X      ENTRY0069="ウェブサーバとスケジューラ起動後、Urchin 管理インターフェースが以下のアドレスで使用されます。"
X      ENTRY0070="管理インターフェースでは、デフォルトユーザー名は admin、パスワードはurchin です。ウィザードから製品のライセンス化とデフォルトパスワードの変更を行えます。デフォルト値をより安全なものに変更することをお勧めします。"
X      ENTRY0071="Urchin ウェブサーバとスケジューラの起動・停止には、インストール bin ディレクトリから、「urchinctl start」又は「urchinctl stop」を起動してください。"
X      ENTRY0072="使用法"
X      ENTRY0073="ディレクトリ"
X      ENTRY0074="ポート"
X      ENTRY0075="ユーザー"
X      ENTRY0076="グループ"
X      ENTRY0077="このヘルプメッセージをプリントしてください"
X      ENTRY0078="インストーラを quiet モード(幾つかのメッセージが非表示になります)で行ってください"
X      ENTRY0079="インストールディレクトリを指定してください"
X      ENTRY0080="ウェブサーバのポートを指定してください"
X      ENTRY0081="ウェブサーバのグループを指定してください"
X      ENTRY0082="ウェブサーバのユーザを指定してください"
X      ENTRY0083="Urchin ウェブサーバとスケジューラを起動するかを指定してください"
X      ENTRY0084="新規インストールを指定してください"
X      ENTRY0085="アップグレードインストールを指定してください"
X      ENTRY0086="Exit"
X      ENTRY0087="Restarting Urchin webserver and scheduler"
X      ENTRY0088="Determining data and var directory locations"
X      ENTRY0089="Installer cannot continue with upgrade"
X      ENTRY0090="Warning"
X      ;;
Xesac
X
X# Function to format text output
Xechof () {
X   if [ -f /usr/bin/fmt ] && [ $LANGUAGE = en ]; then
X      echo "$1" | fmt
X   else
X      echo "$1"
X   fi
X}
X
X# Determine the current directory and the location of the installation files
XCURRENTDIR=`pwd`
Xif [ "x$CURRENTDIR" = x ]; then
X   echof "## $ENTRY0001: $ENTRY0002"
X   exit 1
Xfi
XTEMPDIR=`dirname $0`
Xif [ "x$TEMPDIR" != x ] && [ "x$TEMPDIR" != x. ]; then
X   INSTALLERDIR=$CURRENTDIR/$TEMPDIR
Xelse
X   INSTALLERDIR=$CURRENTDIR
Xfi
X
X# Verify installation files are present in the installer's directory
XINSPECTOR=$INSTALLERDIR/inspector
Xif [ ! -f "$INSPECTOR" ]; then
X   echof "## $ENTRY0001: $ENTRY0003: $INSPECTOR"
X   exit 1
Xfi
XGUNZIP=$INSTALLERDIR/gunzip
Xif [ ! -f "$GUNZIP" ]; then
X   if [ -f /usr/bin/gunzip ] && [ -x /usr/bin/gunzip ]; then
X      GUNZIP=/usr/bin/gunzip
X   else
X      echof "## $ENTRY0001: $ENTRY0003: $GUNZIP"
X      exit 1
X   fi
Xfi
XDIST=$INSTALLERDIR/urchin.tar.gz
Xif [ ! -f "$DIST" ]; then
X   echof "## $ENTRY0001: $ENTRY0003: $DIST"
X   exit 1
Xfi
X
X# Get the version number for displaying to the user
XNEWVERSION=`"$INSPECTOR" -v | cut -d ":" -f 2 | cut -d " " -f 3 | cut -c 1,2,3,4`
XMAJORVERSION=`echo $NEWVERSION | cut -c 1`
XMINORVERSION=`echo $NEWVERSION | cut -c 2,3,4`
X
X# Determine username of the person executing this script
Xif [ $OS = SunOS ]; then
X   if [ -f /usr/xpg4/bin/id ]; then
X      MYLOGIN=`/usr/xpg4/bin/id -un`
X   fi 
Xelse
X   MYLOGIN=`id -un`
Xfi
X
X# Verify MYLOGIN was set
Xif [ x$MYLOGIN = x ]; then
X   if [ ! x$USER = x ]; then
X      MYLOGIN=$USER
X   elif [ ! x$LOGNAME = x ]; then
X      MYLOGIN=$LOGNAME
X   else
X      MYLOGIN=nobody
X   fi
Xfi
X
X# Set the default user for the web server.  This will be verified later...
Xif [ $MYLOGIN = root ]; then
X   WUSER=nobody
Xelse
X   WUSER=$MYLOGIN
Xfi
X
X# Set the default group for the user.  This will be verified later...
Xif [ $OS = SunOS ]; then
X   if [ -f /usr/xpg4/bin/id ]; then
X      WGROUP=`/usr/xpg4/bin/id -gn $WUSER`
X   fi 
Xelse
X   WGROUP=`id -gn $WUSER`
Xfi
Xif [ x$WGROUP = x ]; then
X   WGROUP=`groups $WUSER | awk '{print $1}'`
Xfi
X
X# Set flags for command line options
Xdflag=0   # Install Directory flag
Xgflag=0   # Group flag
Xpflag=0   # Port flag
Xqflag=0   # Quiet flag
Xsflag=0   # Start scheduler and webserver flag
Xtflag=0   # Installation type (new or upgrade)
Xuflag=0   # User flag
X
X# Check for a --help argument
Xfor arg in "$@"; do
X   if [ "x$arg" = x--help ]; then
X      $0 -h
X      exit 0
X   fi
Xdone
X
X# Read in command line arguments and set flags and variables accordingly
Xwhile getopts d:g:hnmp:qs:u: OPT; do
X   case $OPT in
X      # Partially verify the installation directory
X      d) if [ "x$OPTARG" != x ]; then
X            if [ -r "$OPTARG" ] || [ -w "$OPTARG" ] || [ -x "$OPTARG" ] && [ ! -d "$OPTARG" ]; then
X               echof "## $ENTRY0001: $ENTRY0018: $OPTARG"
X               exit 1
X            fi
X            # Perform remainder of directory checks at end of the getopts while loop right after
X            # selection of installation type.
X            INSTALLDIR=$OPTARG
X            dflag=1
X         fi
X         ;;
X      # Verify the group
X      g) if [ x$OPTARG != x ]; then
X            if [ ! -d /tmp/.urchin$$ ] && [ ! -f /tmp/.urchin$$ ] && [ ! -r /tmp/.urchin$$ ] && [ ! -w /tmp/.urchin$$ ] && [ ! -x /tmp/.urchin$$ ]; then
X               touch /tmp/.urchin$$
X               chgrp $OPTARG /tmp/.urchin$$ > /dev/null 2>&1
X               if [ $? != 0 ]; then
X                  echof "## $ENTRY0001: $ENTRY0029: $OPTARG"
X                  exit 1
X               else
X                  WGROUP=$OPTARG
X                  gflag=1
X               fi
X               if [ -f /tmp/.urchin$$ ]; then
X                  rm /tmp/.urchin$$
X               fi
X            else
X               echof "## $ENTRY0001: $ENTRY0030"
X            fi
X         fi
X         ;;
X      # Print help information
X      h) echof "$ENTRY0072: $0 [-h] [-q] [-d $ENTRY0073] [-p $ENTRY0074] [-g $ENTRY0076] [-u $ENTRY0075] [-s (yes|no)] [-n|-m]"
X         echof "      -h   $ENTRY0077"
X         echof "      -q   $ENTRY0078"
X         echof "      -d   $ENTRY0079"
X         echof "      -p   $ENTRY0080"
X         echof "      -g   $ENTRY0081"
X         echof "      -u   $ENTRY0082"
X         echof "      -s   $ENTRY0083"
X         echof "      -n   $ENTRY0084"
X         echof "      -m   $ENTRY0085"
X         echof ""
X         exit 0
X         ;;
X      # New installation
X      n) if [ $tflag -eq 0 ]; then
X            upgrade=0
X            tflag=1
X         else
X            if [ $upgrade -eq 1 ]; then
X               echof "## $ENTRY0001: $ENTRY0031"
X               exit 1
X            fi
X         fi
X         ;;
X      # Upgrade installation
X      m) if [ $tflag -eq 0 ]; then
X            upgrade=1
X            tflag=1
X         else
X            if [ $upgrade -eq 0 ]; then
X               echof "## $ENTRY0001: $ENTRY0031"
X               exit 1
X            fi
X         fi
X         ;;
X      # Verify the port
X      p) if [ x$OPTARG != x ]; then
X            if [ $MYLOGIN != root ] && [ $OPTARG -lt 1024 ]; then
X               echof "## $ENTRY0001: $ENTRY0036: $OPTARG"
X               exit 1
X            else
X               PORT=$OPTARG
X               pflag=1
X            fi
X         fi
X         ;;
X      # Set the quiet flag
X      q) qflag=1
X         ;;
X      # Set the start flag
X      s) if [ x$OPTARG != x ]; then
X            if [ x$OPTARG = xyes ]; then
X               startservers=1
X            elif [ x$OPTARG = xno ]; then
X               startservers=0
X            else
X               echof "## $ENTRY0001: $ENTRY0035"
X               exit 1
X            fi
X            sflag=1
X         fi
X         ;;
X      # Verify the user
X      u) if [ x$OPTARG != x ]; then
X            if [ $OPTARG = root ]; then
X               echof "## $ENTRY0001: $ENTRY0034: $OPTARG"
X               exit 1
X            fi
X            id $OPTARG > /dev/null 2>&1
X            if [ ! $? = 0 ]; then
X               echof "## $ENTRY0001: $ENTRY0032: $OPTARG"
X               exit 1
X            elif [ $OPTARG != $MYLOGIN ] && [ $MYLOGIN != root ]; then
X               echof "## $ENTRY0001: $ENTRY0033: $OPTARG"
X               exit 1
X            else
X               WUSER=$OPTARG
X               uflag=1
X            fi
X         fi
X         ;;
X      \?) $0 -h
X         exit 1
X         ;;
X   esac  
Xdone  
X
X# Print installation splash screen and basic information
Xif [ $qflag -eq 0 ]; then
X   clear
X   echof "------------------------------------------------------------------------"
X   echof "-- $ENTRY0004"
X   echof "-- $ENTRY0009 $MAJORVERSION.$MINORVERSION"
X   echof "------------------------------------------------------------------------"
X   echof ""
X   echof "$ENTRY0011:"
X   echof "   1. $ENTRY0014"
X   echof "   2. $ENTRY0015"
X   echof ""
Xfi
X
X# Prompt user for new install vs upgrade
Xif [ $tflag -eq 0 ]; then
X   wflag=0
X   while [ $wflag -eq 0 ]; do
X      echof "$ENTRY0005 [$ENTRY0008: 1]"
X      echof "   1. $ENTRY0006"
X      echof "   2. $ENTRY0007"
X      $echo "-> ${nnl}"
X      read ans
X      case $ans in
X         ""|1) upgrade=0
X               wflag=1
X               ;;
X            2) upgrade=1
X               wflag=1
X               ;;
X            *) echof "$ENTRY0010"
X               ;;
X      esac
X      echof ""
X   done  
Xfi
X
X# Warn user to backup before proceeding
Xif [ $upgrade -eq 1 ] && [ $qflag -eq 0 ]; then
X   echof "$ENTRY0012"
X   echof ""
Xfi
X
X# Finish verification of directory entered as a command line option based on installation type.
Xif [ $dflag -eq 1 ]; then
X   # Check if $INSTALLDIR does not exist
X   if [ ! -d "$INSTALLDIR" ]; then
X      if [ $upgrade -eq 0 ]; then
X         mkdir "$INSTALLDIR"
X         if [ $? -gt 0 ]; then
X            echof "## $ENTRY0001: $ENTRY0024: $INSTALLDIR"
X            exit 1
X         fi
X      else
X         echof "## $ENTRY0001: $ENTRY0020: $INSTALLDIR"
X         exit 1
X      fi
X   # Check if $INSTALLDIR is not writeable
X   elif [ ! -w "$INSTALLDIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0025: $INSTALLDIR"
X      exit 1
X   fi
Xfi
X
X# Verify the port is available if this is a new installation and the port was a command line option.
Xif [ $upgrade -eq 0 ] && [ $pflag -eq 1 ]; then
X   "$INSPECTOR" -P $PORT
X   if [ $? -ne 0 ]; then
X      echof "## $ENTRY0001: $ENTRY0037: $PORT"
X      exit 1
X   fi
Xfi
X
X# ---Installation Directory---
X# Perform necessary checks on the installation directory entered by the user
Xif [ $dflag -eq 0 ]; then
X   wflag=0
X   while [ $wflag -eq 0 ]; do 
X      # Prompt user for installation directory
X      if [ $upgrade -eq 0 ]; then
X         echof "$ENTRY0016 [$ENTRY0008: $INSTALLDIR]:"
X         $echo "-> ${nnl}"
X      else
X         echof "$ENTRY0017 [$ENTRY0008: $INSTALLDIR]:"
X         $echo "-> ${nnl}"
X      fi
X      read dir
X      echof ""
X
X      # Assign default answer to $dir if nothing was entered
X      if [ "x$dir" = "x" ]; then
X         dir=$INSTALLDIR
X      fi
X
X      # Verify that $dir is not already a file
X      if [ -r "$dir" -o -w "$dir" -o -x "$dir" ] && [ ! -d "$dir" ]; then
X         if [ $upgrade -eq 0 ]; then
X            echof "$ENTRY0018: $dir"
X         else
X            echof "$ENTRY0019: $dir"
X         fi
X         echof ""
X      # Check if $dir does not exist
X      elif [ ! -d "$dir" ]; then
X         if [ $upgrade -eq 0 ]; then
X            echof "$ENTRY0020: $dir"
X            echof ""
X            wflag2=0
X            while [ $wflag2 -eq 0 ]; do
X               # Prompt user regarding creation of $dir
X               echof "$ENTRY0021 [$ENTRY0008: 1]"
X               echof "   1. $ENTRY0022"
X               echof "   2. $ENTRY0023"
X               $echo "-> ${nnl}"
X               read ans
X               case $ans in
X                  ""|1) mkdir "$dir"
X                        if [ $? -gt 0 ]; then
X                           echof "## $ENTRY0001: $ENTRY0024: $dir"
X                           exit 1
X                        fi
X                        INSTALLDIR=$dir
X                        wflag2=1
X                        wflag=1
X                        ;;
X                     2) wflag2=1
X                        ;;
X                     *) echof "$ENTRY0010"
X                        ;;
X               esac
X               echof ""
X            done
X         else
X            echof "$ENTRY0020: $dir"
X            echof ""
X         fi
X      elif [ ! -w "$dir" ]; then
X         echof "$ENTRY0025"
X         echof ""
X      else
X         if [ $upgrade -eq 0 ]; then
X            wflag2=0
X            echof "$ENTRY0026"
X            while [ $wflag2 -eq 0 ]; do
X               echof "$ENTRY0027 [$ENTRY0008: 2]"
X               echof "   1. $ENTRY0022"
X               echof "   2. $ENTRY0023"
X               $echo "-> ${nnl}"
X               read ans
X               case $ans in
X                     1) wflag2=1
X                        INSTALLDIR=$dir
X                        wflag=1
X                        ;;
X                  ""|2) wflag2=1
X                        ;;
X                     *) echof "$ENTRY0010"
X                        ;;
X               esac
X               echof ""
X            done
X         else
X            if [ ! -f "$dir/bin/urchin" ]; then
X               echof "$ENTRY0028"
X               echof ""
X            else
X               INSTALLDIR=$dir
X               wflag=1
X            fi
X         fi
X      fi
X   done
Xfi
X
X# Verify this is an upgrade and not a downgrade
Xif [ $upgrade -eq 1 ]; then
X   # Check the version number to make sure this is an upgrade and not a downgrade.
X   OLDVERSION=0
X   if [ -x "$INSTALLDIR/bin/urchin" ]; then
X      OLDVERSION=`"$INSTALLDIR/bin/urchin" -v | cut -d ":" -f 2 | cut -d " " -f 3 | cut -c 1,2,3,4`
X   fi
X   if [ $NEWVERSION -lt $OLDVERSION ]; then
X      echof "## $ENTRY0001: $ENTRY0038"
X      echof "$ENTRY0039: $OLDVERSION"
X      echof "$ENTRY0040: $NEWVERSION"
X      exit 1
X   fi
Xfi
X
X# Determine the locations of the data and var directories from urchin.conf
XINSTALLDATADIR="$INSTALLDIR/data"
XINSTALLVARDIR="$INSTALLDIR/var"
Xif [ $upgrade -eq 1 ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0088"
X   fi
X   if [ -f "$INSTALLDIR/etc/urchin.conf" ]; then
X      DATADIR=`grep "^[ \t]*dataDirectory:" "$INSTALLDIR/etc/urchin.conf" | cut -d : -f 2 | sed -e 's/^[ \t]*//'`
X      VARDIR=`grep "^[ \t]*varDirectory:" "$INSTALLDIR/etc/urchin.conf" | cut -d : -f 2 | sed -e 's/^[ \t]*//'`
X   fi
X   if [ x$DATADIR != x ]; then
X      LETTER1=`echo "$DATADIR" | cut -c 1`
X      if [ x$LETTER1 = x/ ]; then
X         INSTALLDATADIR="$DATADIR"
X      else
X         INSTALLDATADIR="$INSTALLDIR/$DATADIR"
X      fi
X   fi
X   if [ x$VARDIR != x ]; then
X      LETTER1=`echo "$VARDIR" | cut -c 1`
X      if [ x$LETTER1 = x/ ]; then
X         INSTALLVARDIR="$VARDIR"
X      else
X         INSTALLVARDIR="$INSTALLDIR/$VARDIR"
X      fi
X   fi
X
X   # Verify that the data directory is a directory and is writable
X   if [ -r "$INSTALLDATADIR" -o -w "$INSTALLDATADIR" -o -x "$INSTALLDATADIR" ] && [ ! -d "$INSTALLDATADIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0018: $INSTALLDATADIR"
X      echof "## $ENTRY0089"
X      exit 1
X   elif [ ! -d "$INSTALLDATADIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0020: $INSTALLDATADIR"
X      echof "## $ENTRY0089"
X      exit 1
X   elif [ ! -w "$INSTALLDATADIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0025: $INSTALLDATADIR"
X      echof "## $ENTRY0089"
X      exit 1
X   fi
X
X   # Verify that the var directory is a directory and is writable
X   if [ -r "$INSTALLVARDIR" -o -w "$INSTALLVARDIR" -o -x "$INSTALLVARDIR" ] && [ ! -d "$INSTALLVARDIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0018: $INSTALLVARDIR"
X      echof "## $ENTRY0089"
X      exit 1
X   elif [ ! -d "$INSTALLVARDIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0020: $INSTALLVARDIR"
X      echof "## $ENTRY0089"
X      exit 1
X   elif [ ! -w "$INSTALLVARDIR" ]; then
X      echof "## $ENTRY0001: $ENTRY0025: $INSTALLVARDIR"
X      echof "## $ENTRY0089"
X      exit 1
X   fi
X
X   if [ $qflag -eq 0 ]; then
X      echof ""
X   fi
Xfi
X
X# Shutdown the webserver and scheduler if they are running
Xif [ -f "$INSTALLVARDIR/httpd.pid" ] || [ -f "$INSTALLVARDIR/urchind.pid" ] || [ -f "$INSTALLVARDIR/urchinwebd.pid" ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0041"
X      if [ -f "$INSTALLDIR/bin/wrapper" ]; then
X         cd "$INSTALLDIR/bin"
X         ./wrapper -disable
X         cd "$CURRENTDIR"
X      else
X         "$INSTALLDIR/bin/urchinctl" stop
X      fi
X      echof ""
X   else
X      if [ -f "$INSTALLDIR/bin/wrapper" ]; then
X         cd "$INSTALLDIR/bin"
X         ./wrapper -disable > /dev/null 2>&1
X         cd "$CURRENTDIR"
X      else
X         "$INSTALLDIR/bin/urchinctl" stop > /dev/null 2>&1
X      fi
X   fi
Xfi
X
X# Verify the port is available if this is an upgrade and the port was a command line option.
Xif [ $upgrade -eq 1 ] && [ $pflag -eq 1 ]; then
X   "$INSPECTOR" -P $PORT
X   if [ $? -ne 0 ]; then
X      echof "## $ENTRY0001: $ENTRY0037: $PORT"
X      exit 1
X   fi
Xfi
X
X# ---Webserver Configuration---
X# Prompt user for the webserver port
Xif [ $pflag -eq 0 ]; then
X   wflag=0
X   while [ $wflag -eq 0 ]; do
X      if [ $upgrade -eq 0 ]; then
X         echof "$ENTRY0042 [$ENTRY0008: $PORT]"
X         $echo "-> ${nnl}"
X      else
X         port=0
X         if [ -r "$INSTALLVARDIR/urchinwebd.conf" ]; then
X            port=`grep "^Port" "$INSTALLVARDIR/urchinwebd.conf" | cut -d " " -f 2`
X         elif [ -r "$INSTALLDIR/etc/httpd.conf" ]; then
X            port=`grep "^Port" "$INSTALLDIR/etc/httpd.conf" | cut -d " " -f 2`
X         fi
X         if [ $port -ne 0 ]; then
X            PORT=$port
X         fi
X         echof "$ENTRY0042 [$ENTRY0008: $PORT]"
X         $echo "-> ${nnl}"
X      fi
X      read portin
X      echof ""
X      if [ x$portin = x ]; then
X         portin=$PORT
X      fi
X      if [ $MYLOGIN != root ] && [ $portin -lt 1024 ]; then
X         echof "$ENTRY0036"
X         echof ""
X      else
X         # Verify the port is available
X         "$INSPECTOR" -P $portin
X         if [ $? -ne 0 ]; then
X            echof "$ENTRY0037"
X            echof ""
X         else
X            PORT=$portin
X            wflag=1
X         fi
X      fi
X   done
Xfi
X
X# Determine and verify the user
Xif [ $uflag -eq 0 ]; then
X   # If we're root, we can choose which user to run the webserver as
X   if [ $MYLOGIN = root ]; then
X      wflag=0
X      while [ $wflag -eq 0 ]; do
X         if [ $upgrade -eq 0 ]; then
X            echof "$ENTRY0043 [$ENTRY0008: $WUSER]"
X            $echo "-> ${nnl}"
X         else
X            if [ -r "$INSTALLVARDIR/urchinwebd.conf" ]; then
X               user=`grep "^User" "$INSTALLVARDIR/urchinwebd.conf" | cut -d " " -f 2`
X            elif [ -r "$INSTALLDIR/etc/httpd.conf" ]; then
X               user=`grep "^User" "$INSTALLDIR/etc/httpd.conf" | cut -d " " -f 2`
X            fi
X            if [ x$user != x ]; then
X               WUSER=$user
X            fi
X            echof "$ENTRY0043 [$ENTRY0008: $WUSER]"
X            $echo "-> ${nnl}"
X         fi
X         read userin
X         echof ""
X         if [ x$userin = x ]; then
X            userin=$WUSER
X         fi
X         if [ $userin = root ]; then
X            echof "$ENTRY0034"
X            echof ""
X         else
X            id $userin > /dev/null 2>&1
X            if [ $? -ne 0 ]; then
X               echof "$ENTRY0032"
X               echof ""
X            else
X               WUSER=$userin
X               wflag=1
X            fi
X         fi
X      done
X   fi
Xfi
X
X# Determine and verify the group
Xif [ $gflag -eq 0 ]; then
X   # If we're root, we can choose which group to run the webserver as
X   if [ $MYLOGIN = root ]; then
X      wflag=0
X      while [ $wflag -eq 0 ]; do
X         if [ $OS = SunOS ]; then
X            if [ -f /usr/xpg4/bin/id ]; then
X               WGROUP=`/usr/xpg4/bin/id -gn $WUSER`
X            fi 
X         else
X            WGROUP=`id -gn $WUSER`
X         fi
X         if [ x$WGROUP = x ]; then
X            WGROUP=`groups $WUSER | awk '{print $1}'`
X         fi
X         if [ $upgrade -eq 0 ]; then
X            echof "$ENTRY0044 [$ENTRY0008: $WGROUP]"
X            $echo "-> ${nnl}"
X         else
X            if [ -r "$INSTALLVARDIR/urchinwebd.conf" ]; then
X               group=`grep "^Group" "$INSTALLVARDIR/urchinwebd.conf" | cut -d " " -f 2`
X            elif [ -r "$INSTALLDIR/etc/httpd.conf" ]; then
X               group=`grep "^Group" "$INSTALLDIR/etc/httpd.conf" | cut -d " " -f 2`
X            fi
X            if [ x$group != x ]; then
X               WGROUP=$group
X            fi
X            echof "$ENTRY0044 [$ENTRY0008: $WGROUP]"
X            $echo "-> ${nnl}"
X         fi
X         read groupin
X         echof ""
X         if [ x$groupin = x ]; then
X            groupin=$WGROUP
X         fi
X         touch "$INSTALLDIR/.urchin$$"
X         chgrp $groupin "$INSTALLDIR/.urchin$$" > /dev/null 2>&1
X         if [ $? != 0 ]; then
X            echof "$ENTRY0029"
X            echof ""
X         else
X            WGROUP=$groupin
X            wflag=1
X         fi
X         rm "$INSTALLDIR/.urchin$$"
X      done
X   fi
Xfi
X
X# Verify the user wishes to start the webserver and scheduler
Xif [ $sflag -eq 0 ]; then
X   wflag=0
X   while [ $wflag -eq 0 ]; do
X      echof "$ENTRY0045 [$ENTRY0008: 1]"
X      echof "   1. $ENTRY0022"
X      echof "   2. $ENTRY0023"
X      $echo "-> ${nnl}"
X      read ans
X      case $ans in
X         ""|1) startservers=1
X               wflag=1
X               ;;
X            2) startservers=0
X               wflag=1
X               ;;
X            *) echof "$ENTRY0010"
X               ;;
X      esac
X      echof ""
X   done
Xfi
X
X# Print summary information for installation
Xif [ $qflag -eq 0 ]; then
X   echof "------------------------------------------------------------------------"
X   echof "-- $ENTRY0046"
X   if [ $upgrade -eq 0 ]; then
X      echof "-- $ENTRY0047 $MAJORVERSION.$MINORVERSION"
X   else
X      echof "-- $ENTRY0048 $MAJORVERSION.$MINORVERSION"
X   fi
X   echof "------------------------------------------------------------------------"
X   echof ""
X   echof "$ENTRY0049: $INSTALLDIR"
X   echof "$ENTRY0050: $PORT"
X   echof "$ENTRY0051: $WUSER"
X   echof "$ENTRY0052: $WGROUP"
X   if [ $startservers -eq 1 ]; then
X      echof "$ENTRY0053: $ENTRY0022"
X   else
X      echof "$ENTRY0053: $ENTRY0023"
X   fi
X   echof ""
Xfi
X
X# Prompt user to continue or exit
Xif [ $qflag -eq 0 ]; then
X   wflag=0
X   while [ $wflag -eq 0 ]; do
X      echof "$ENTRY0055 [$ENTRY0008: 1]"
X      echof "   1. $ENTRY0059"
X      echof "   2. $ENTRY0086"
X      $echo "-> ${nnl}"
X      read ans
X      case $ans in
X         ""|1) wflag=1
X               ;;
X            2) if [ $upgrade -eq 1 ]; then
X                  echof "$ENTRY0087"
X                  if [ -f "$INSTALLDIR/bin/urchinctl" ]; then
X                     "$INSTALLDIR/bin/urchinctl" start
X                  elif [ -f "$INSTALLDIR/bin/wrapper" ]; then
X                     cd "$INSTALLDIR/bin"
X                     ./wrapper -enable
X                     cd "$CURRENTDIR"
X                  fi
X               fi
X               exit 0
X               ;;
X            *) echof "$ENTRY0010"
X               ;;
X      esac
X   done
X   echof ""
Xfi
X
X# Backup configuration databases and files
Xif [ $upgrade -eq 1 ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0056"
X      "$INSTALLDIR/util/uconf-export" -f "$INSTALLDIR/util/conf.backup.$NOW"
X      echof ""
X   else
X      "$INSTALLDIR/util/uconf-export" -f "$INSTALLDIR/util/conf.backup.$NOW" > /dev/null 2>&1
X   fi
X   SESSIONCONF="$INSTALLDIR/etc/session.conf"
X   URCHINCONF="$INSTALLDIR/etc/urchin.conf"
X   HTTPDCONF="$INSTALLDIR/etc/httpd.conf"
X   URCHINWEBDCONF="$INSTALLVARDIR/urchinwebd.conf.template"
X   if [ -f "$SESSIONCONF" ]; then
X      mv "$SESSIONCONF" "$SESSIONCONF.sav$NOW"
X   fi
X   if [ -f "$URCHINCONF" ]; then
X      mv "$URCHINCONF" "$URCHINCONF.sav$NOW"
X   fi
X   if [ -f "$HTTPDCONF" ]; then
X      mv "$HTTPDCONF" "$HTTPDCONF.sav$NOW"
X   fi
X   if [ -f "$URCHINWEBDCONF" ]; then
X      mv "$URCHINWEBDCONF" "$URCHINWEBDCONF.sav$NOW"
X   fi
Xfi
X
X# Uncompress and extract files into the installation directory
Xif [ $upgrade -eq 0 ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0058"
X      echof ""
X   fi
X   "$GUNZIP" -c "$DIST" | (cd "$INSTALLDIR"; tar xf -)
Xelse
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0062"
X      echof ""
X   fi
X   if [ ! -d "$INSTALLERDIR/tmp.$NOW.$$" ]; then
X      mkdir "$INSTALLERDIR/tmp.$NOW.$$"
X      if [ $? -gt 0 ]; then
X         echof "## $ENTRY0001: $ENTRY0024: $INSTALLERDIR/tmp.$NOW.$$"
X         exit 1
X      fi
X   fi
X   "$GUNZIP" -c "$DIST" | (cd "$INSTALLDIR"; tar xf - bin doc etc htdocs lib util)
X   "$GUNZIP" -c "$DIST" | (cd "$INSTALLERDIR/tmp.$NOW.$$"; tar xf - data var)
X   cd "$INSTALLERDIR/tmp.$NOW.$$/data"
X   tar cf - cache conf geodata history logs reports session | (cd "$INSTALLERDIR"; cd "$INSTALLDATADIR"; tar xf -)
X   cd "$INSTALLERDIR/tmp.$NOW.$$/var"
X   tar cf - * | (cd "$INSTALLERDIR"; cd "$INSTALLVARDIR"; tar xf -)
X   cd "$INSTALLERDIR"
X   /bin/rm -rf "$INSTALLERDIR/tmp.$NOW.$$"
Xfi
X
X# Create webserver configuration template and startup/shutdown script
Xif [ $qflag -eq 0 ]; then
X   echof "$ENTRY0060"
X   echof ""
Xfi
Xsed -e "s^XXXUSERXXX^${WUSER}^" -e "s^XXXGROUPXXX^${WGROUP}^" "$INSTALLVARDIR/urchinwebd_unix.conf.template" > "$INSTALLVARDIR/urchinwebd.conf.template"
Xrm -f "$INSTALLVARDIR/urchinwebd_unix.conf.template"
Xsed -e "s^XXXINSTALLDIRXXX^${INSTALLDIR}^" "$INSTALLDIR/util/urchin_daemons.template" > "$INSTALLDIR/util/urchin_daemons"
X
X# Save distributed configuration files with .dist extension
Xif [ -f "$SESSIONCONF" ]; then
X   cp "$SESSIONCONF" "$SESSIONCONF.dist"
Xfi
Xif [ -f "$URCHINCONF" ]; then
X   cp "$URCHINCONF" "$URCHINCONF.dist"
Xfi
Xif [ -f "$URCHINWEBDCONF" ]; then
X   cp "$URCHINWEBDCONF" "$URCHINWEBDCONF.dist"
Xfi
X
X# Copy saved configuration files back into position
Xif [ $upgrade -eq 1 ]; then
X   if [ -f "$SESSIONCONF.sav$NOW" ] && [ $OLDVERSION -ge "5000" ]; then
X      cp "$SESSIONCONF.sav$NOW" "$SESSIONCONF"
X   fi
X   if [ -f "$URCHINCONF.sav$NOW" ]; then
X      cp "$URCHINCONF.sav$NOW" "$URCHINCONF"
X   fi
X   if [ -f "$URCHINWEBDCONF.sav$NOW" ]; then
X      sed -e "s/^User[ \t].*/User ${WUSER}/" -e "s/^Group[ \t].*/Group ${WGROUP}/" "$URCHINWEBDCONF.sav$NOW" > "$URCHINWEBDCONF"
X   fi
Xfi
X
X# Warn users if configuration files differ from distributed files
Xif [ $upgrade -eq 1 ]; then
X   if [ -f "$SESSIONCONF" ] && [ -f "$SESSIONCONF.dist" ]; then
X      `diff "$SESSIONCONF" "$SESSIONCONF.dist" > /dev/null 2>&1` 
X      if [ $? -ne 0 ]; then
X         echof "## $ENTRY0090: $ENTRY0057: $SESSIONCONF"
X         echof ""
X      fi
X   fi
X   if [ -f "$URCHINCONF" ] && [ -f "$URCHINCONF.dist" ]; then
X      `diff "$URCHINCONF" "$URCHINCONF.dist" > /dev/null 2>&1` 
X      if [ $? -ne 0 ]; then
X         echof "## $ENTRY0090: $ENTRY0057: $URCHINCONF"
X         echof ""
X      fi
X   fi
X   if [ -f "$URCHINWEBDCONF" ] && [ -f "$URCHINWEBDCONF.dist" ]; then
X      `diff "$URCHINWEBDCONF" "$URCHINWEBDCONF.dist" > /dev/null 2>&1` 
X      if [ $? -ne 0 ]; then
X         echof "## $ENTRY0090: $ENTRY0057: $URCHINWEBDCONF"
X         echof ""
X      fi
X   fi
Xfi
X
X# Move the domain databases into place if they don't exist
Xif [ ! -f "$INSTALLDATADIR/geodata/domain.unf" ] || [ ! -f "$INSTALLDATADIR/geodata/domain.unh" ] || [ ! -f "$INSTALLDATADIR/geodata/domain.uni" ] || [ ! -f "$INSTALLDATADIR/geodata/domain.uns" ]; then
X   mv "$INSTALLDATADIR/geodata/.domain.unf" "$INSTALLDATADIR/geodata/domain.unf"
X   mv "$INSTALLDATADIR/geodata/.domain.unh" "$INSTALLDATADIR/geodata/domain.unh"
X   mv "$INSTALLDATADIR/geodata/.domain.uni" "$INSTALLDATADIR/geodata/domain.uni"
X   mv "$INSTALLDATADIR/geodata/.domain.uns" "$INSTALLDATADIR/geodata/domain.uns"
Xelse
X   rm "$INSTALLDATADIR/geodata/.domain.unf"
X   rm "$INSTALLDATADIR/geodata/.domain.unh"
X   rm "$INSTALLDATADIR/geodata/.domain.uni"
X   rm "$INSTALLDATADIR/geodata/.domain.uns"
Xfi
Xif [ ! -f "$INSTALLDATADIR/geodata/domain.local" ]; then
X   mv "$INSTALLDATADIR/geodata/.domain.local" "$INSTALLDATADIR/geodata/domain.local"
Xelse
X   rm "$INSTALLDATADIR/geodata/.domain.local"
Xfi
X
X# Remove outdated files (for upgrade only)
Xif [ $upgrade -eq 1 ]; then
X   # For upgrade from 4.006 to 4.100+
X   rm -f "$INSTALLDIR/bin/httpd"
X   rm -f "$INSTALLDIR/bin/httpdctl.sh"
X   rm -f "$INSTALLDIR/bin/urchindctl.sh"
X   rm -f "$INSTALLDIR/bin/wrapper"
X   rm -f "$INSTALLDIR/etc/httpd.conf"
X   rm -f "$INSTALLDIR/etc/httpd.conf.template"
X   rm -f "$INSTALLDIR/etc/httpd.conf.template_unix"
X   # For upgrade from 4.002 to 4.003+
X   rm -f "$INSTALLDIR/htdocs/ujs/calender.js"
X   # For upgrade from 4.101 to 4.102+
X   rm -f "$INSTALLDIR/util/setup_conf.sh"
X   # For upgrade from 4.102+ to 5.000
X   rm -rf "$INSTALLDIR/lib/languages"
X   rm -rf "$INSTALLDIR/lib/templates"
X   rm -rf "$INSTALLDIR/lib/ugroups"
X   rm -rf "$INSTALLDIR/lib/views"
Xfi
X
X# Initialize or update the configuration databases
Xif [ $upgrade -eq 0 ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0061"
X      echof ""
X      "$INSTALLDIR/util/uconf-import" -r -f "$INSTALLDIR/util/initialdb.config"
X      echof ""
X   else
X      "$INSTALLDIR/util/uconf-import" -r -f "$INSTALLDIR/util/initialdb.config" > /dev/null 2>&1
X   fi
Xelse
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0063"
X      echof ""
X      "$INSTALLDIR/util/uconf-import" -f "$INSTALLDIR/util/initialdb.config"
X      echof ""
X   else
X      "$INSTALLDIR/util/uconf-import" -f "$INSTALLDIR/util/initialdb.config" > /dev/null 2>&1
X   fi
Xfi
X
X# Update __domaindb task with day/time for download
XSETDATE=`"$INSTALLDIR/util/uconf-driver" table=task name=__domaindb action=get_parameter parameter=ct_setdate`
Xif [ "x$SETDATE" != "x1" ]; then
X   DAY=`date +%d`
X   if [ $DAY -eq 1 ]; then
X      DAY=28
X   else
X      DAY=`expr $DAY - 1`
X   fi
X   if [ $DAY -lt 1 ] || [ $DAY -gt 28 ]; then
X      DAY=1
X   fi
X   HOUR=`date +%H`
X   if [ $HOUR -lt 0 ] || [ $HOUR -gt 23 ]; then
X      HOUR=0
X   fi
X   MIN=`date +%M`
X   if [ $MIN -lt 0 ] || [ $MIN -gt 59 ]; then
X      MIN=0
X   fi
X   "$INSTALLDIR/util/uconf-driver" action=set_parameter cs_dom=$DAY table=task name=__domaindb > /dev/null 2>&1
X   "$INSTALLDIR/util/uconf-driver" action=set_parameter cs_hour=$HOUR table=task name=__domaindb > /dev/null 2>&1
X   "$INSTALLDIR/util/uconf-driver" action=set_parameter cs_minute=$MIN table=task name=__domaindb > /dev/null 2>&1
X   "$INSTALLDIR/util/uconf-driver" action=set_parameter ct_setdate=1 table=task name=__domaindb > /dev/null 2>&1
Xfi
X
X# Set the user and group on the installed files.
X# Only change owner if installer is run as root
Xif [ $qflag -eq 0 ]; then
X   echof "$ENTRY0064"
X   if [ $MYLOGIN = root ]; then
X      chown -R $WUSER "$INSTALLDIR"
X      chown -R $WUSER "$INSTALLDATADIR"
X   fi
X   chgrp -R $WGROUP "$INSTALLDIR"
X   chgrp -R $WGROUP "$INSTALLDATADIR"
X   # Use the installed inspector in repair mode to set the permissions of the files
X   "$INSTALLDIR/util/inspector" -R
X   if [ $? -ne 0 ]; then
X      echof ""
X      echof "## $ENTRY0001: $ENTRY0067"
X   fi
X   echof ""
Xelse
X   if [ $MYLOGIN = root ]; then
X      chown -R $WUSER "$INSTALLDIR"
X      chown -R $WUSER "$INSTALLDATADIR"
X   fi
X   chgrp -R $WGROUP "$INSTALLDIR"
X   chgrp -R $WGROUP "$INSTALLDATADIR"
X   # Use the installed inspector in repair mode to set the permissions of the files
X   "$INSTALLDIR/util/inspector" -R > /dev/null 2>&1
X   if [ $? -ne 0 ]; then
X      echof "## $ENTRY0001: $ENTRY0067"
X   fi
Xfi
X
X# Start the Urchin webserver and scheduler daemon
Xif [ $startservers -eq 1 ]; then
X   if [ $qflag -eq 0 ]; then
X      echof "$ENTRY0065"
X      "$INSTALLDIR/bin/urchinctl" -p $PORT start
X      echof ""
X   else
X      "$INSTALLDIR/bin/urchinctl" -p $PORT start > /dev/null 2>&1
X   fi
Xelse
X   "$INSTALLDIR/bin/urchinctl" -p $PORT status > /dev/null 2>&1
Xfi
X
X# Administrative announcements
Xif [ $qflag -eq 0 ]; then
X   echof "------------------------------------------------------------------------"
X   echof "-- $ENTRY0066"
X   echof "------------------------------------------------------------------------"
X   echof ""
X   if [ $startservers -eq 1 ]; then
X      echof "$ENTRY0068"
X   else
X      echof "$ENTRY0069"
X   fi
X   echof ""
X   echof "   http://${HOST}:${PORT}/"
X   echof ""
X   echof "$ENTRY0071"
X   echof ""
X   echof "$ENTRY0070"
Xfi
END-of-urchin5/files/install.sh
echo x - urchin5/Makefile
sed 's/^X//' >urchin5/Makefile << 'END-of-urchin5/Makefile'
X# New ports collection makefile for:	urchin5
X# Date created:				September 8, 2003
X# Whom:					Urchin Software
X#
X# $FreeBSD: ports/www/urchin5/Makefile $
X#
X
XPORTNAME=	urchin
XPORTVERSION=	5.101
XCATEGORIES=	www
XMASTER_SITES=	ftp://ftp.urchin.com/pub/urchin5/
XDISTNAME=	urchin5101_freebsd4x
X
XMAINTAINER=	freebsd@urchin.com
XCOMMENT=	The most powerful web traffic analysis program available
X
XONLY_FOR_ARCHS=	i386
XLICENSE=	commercial
XRESTRICTED=	"Commercial software, also comes bundled with Apache-SSL"
XNO_BUILD=	YES
XNO_CDROM=	"Our installer must be run for proper permissions to be set"
XNO_PACKAGE=	"Our installer must be run for proper permissions to be set"
X
X# Feel free to change this to the user you want Urchin 5 to
X# run as and the files to be owned by.  It's *strongly* advised
X# to make this a non-privileged user.  The port can be changed later
X# if desired.
XUSER=		nobody
XGROUP=		nobody
XPORT=		9999
XINSTALLDIR=	${PREFIX}/urchin
XQUIET=		-q
XSTART_SERVERS=	yes
X
Xdo-configure:
X	${CP} ${FILESDIR}/install.sh ./work
X
Xdo-install:
X	@if test -f ${INSTALLDIR}/data/conf/uconf.uni; then \
X		${ECHO_CMD} "The Urchin configuration files already exist,"; \
X		${ECHO_CMD} "so I will attempt to do an upgrade instead of a new installation."; \
X		${ECHO_CMD} ; \
X	 	cd ./work; \
X		${SH} ./install.sh ${QUIET} -d ${INSTALLDIR} -p ${PORT} -u ${USER} -g ${GROUP} -s ${START_SERVERS} -m; \
X	else \
X	 	cd ./work; \
X		${SH} ./install.sh ${QUIET} -d ${INSTALLDIR} -p ${PORT} -u ${USER} -g ${GROUP} -s ${START_SERVERS} -n; \
X	fi
X
Xpost-install:
X	${INSTALL_DATA} ${INSTALLDIR}/util/urchin_daemons ${PREFIX}/etc/rc.d/urchin5_daemons.sh-dist
X	@if [ ! -f ${PREFIX}/etc/rc.d/urchin5_daemons.sh ]; then \
X		${ECHO} "Installing ${PREFIX}/etc/rc.d/urchin5_daemons.sh startup file."; \
X		${INSTALL_SCRIPT} ${INSTALLDIR}/util/urchin_daemons ${PREFIX}/etc/rc.d/urchin5_daemons.sh; \
X	fi
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "Thank you for installing Urchin 5!"
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "Be sure to read the license agreement in ${INSTALLDIR}/doc/license.txt"
X	@${ECHO_MSG} ""
X
X.include <bsd.port.mk>
END-of-urchin5/Makefile
echo x - urchin5/distinfo
sed 's/^X//' >urchin5/distinfo << 'END-of-urchin5/distinfo'
XMD5 (urchin5101_freebsd4x.tar.gz) = 39e554595c6f404dd98c18759e557eda
END-of-urchin5/distinfo
echo x - urchin5/pkg-descr
sed 's/^X//' >urchin5/pkg-descr << 'END-of-urchin5/pkg-descr'
XUrchin is a web analytics software product that, in basic terms, reads log
Xfiles and produces usage reports.  Urchin uses Adobe's SVG graphics
Xtechnology to generate gorgeous, quick-rendering, interactive graphs that
Xcan be easily pasted into common Office applications.  Urchin achieves a
Xhigh level of accuracy and captures a wealth of visitor parameters via the
XUrchin Tracking Module (UTM2), a client-side data collection component that
Xtransparently sends additional data back to the server and into the log
Xfile.  The UTM2 uses a first-party cookie to overcome the effects of caches,
Xproxies, and IP-recycling to provide the most accurate and complete
Xreporting available from ANY analytics solution.
X
XWWW:	http://www.urchin.com
END-of-urchin5/pkg-descr
echo x - urchin5/pkg-plist
sed 's/^X//' >urchin5/pkg-plist << 'END-of-urchin5/pkg-plist'
X@unexec %D/urchin/bin/urchinctl stop > /dev/null 2>&1 || true
Xurchin/bin/admin
Xurchin/bin/auth
Xurchin/bin/rollup.cgi
Xurchin/bin/urchin
Xurchin/bin/urchin.cgi
Xurchin/bin/urchinctl
Xurchin/bin/urchind
Xurchin/bin/urchinwebd
Xurchin/doc/install.txt
Xurchin/doc/license.txt
Xurchin/doc/README
Xurchin/doc/ReleaseNotes
Xurchin/etc/mime.types
Xurchin/htdocs/ucss/uch.css
Xurchin/htdocs/ucss/uformat.css
Xurchin/htdocs/ucss/uja.css
Xurchin/htdocs/ucss/uko.css
Xurchin/htdocs/ucss/usvg.css
Xurchin/htdocs/ucss/uwest.css
Xurchin/htdocs/.report.conf
Xurchin/htdocs/favicon.ico
Xurchin/htdocs/robots.txt
Xurchin/htdocs/uicons/default/ee/images/bottom.gif
Xurchin/htdocs/uicons/default/ee/images/brushback.gif
Xurchin/htdocs/uicons/default/ee/images/left.gif
Xurchin/htdocs/uicons/default/ee/images/leftbutton.gif
Xurchin/htdocs/uicons/default/ee/images/lowleft.gif
Xurchin/htdocs/uicons/default/ee/images/lowright.gif
Xurchin/htdocs/uicons/default/ee/images/right.gif
Xurchin/htdocs/uicons/default/ee/images/rightbutton.gif
Xurchin/htdocs/uicons/default/ee/images/top.gif
Xurchin/htdocs/uicons/default/ee/index.html
Xurchin/htdocs/uicons/default/ee/slides/slide1.gif
Xurchin/htdocs/uicons/default/ee/slides/slide10.gif
Xurchin/htdocs/uicons/default/ee/slides/slide11.gif
Xurchin/htdocs/uicons/default/ee/slides/slide12.gif
Xurchin/htdocs/uicons/default/ee/slides/slide13.gif
Xurchin/htdocs/uicons/default/ee/slides/slide14.gif
Xurchin/htdocs/uicons/default/ee/slides/slide15.gif
Xurchin/htdocs/uicons/default/ee/slides/slide16.gif
Xurchin/htdocs/uicons/default/ee/slides/slide17.gif
Xurchin/htdocs/uicons/default/ee/slides/slide18.gif
Xurchin/htdocs/uicons/default/ee/slides/slide19.gif
Xurchin/htdocs/uicons/default/ee/slides/slide2.gif
Xurchin/htdocs/uicons/default/ee/slides/slide20.gif
Xurchin/htdocs/uicons/default/ee/slides/slide21.gif
Xurchin/htdocs/uicons/default/ee/slides/slide22.gif
Xurchin/htdocs/uicons/default/ee/slides/slide23.gif
Xurchin/htdocs/uicons/default/ee/slides/slide24.gif
Xurchin/htdocs/uicons/default/ee/slides/slide25.gif
Xurchin/htdocs/uicons/default/ee/slides/slide3.gif
Xurchin/htdocs/uicons/default/ee/slides/slide4.gif
Xurchin/htdocs/uicons/default/ee/slides/slide5.gif
Xurchin/htdocs/uicons/default/ee/slides/slide6.gif
Xurchin/htdocs/uicons/default/ee/slides/slide7.gif
Xurchin/htdocs/uicons/default/ee/slides/slide8.gif
Xurchin/htdocs/uicons/default/ee/slides/slide9.gif
Xurchin/htdocs/uicons/default/about.gif
Xurchin/htdocs/uicons/default/about3.gif
Xurchin/htdocs/uicons/default/add.gif
Xurchin/htdocs/uicons/default/add1.gif
Xurchin/htdocs/uicons/default/aff.gif
Xurchin/htdocs/uicons/default/alert.gif
Xurchin/htdocs/uicons/default/arrow.gif
Xurchin/htdocs/uicons/default/arrow_l.gif
Xurchin/htdocs/uicons/default/arrow_open.gif
Xurchin/htdocs/uicons/default/arrow_r.gif
Xurchin/htdocs/uicons/default/bg_admin.gif
Xurchin/htdocs/uicons/default/bg_report.gif
Xurchin/htdocs/uicons/default/bgstriped.gif
Xurchin/htdocs/uicons/default/bigtab.gif
Xurchin/htdocs/uicons/default/bigtab2.gif
Xurchin/htdocs/uicons/default/blue.gif
Xurchin/htdocs/uicons/default/blue_arrow.gif
Xurchin/htdocs/uicons/default/blue_book.gif
Xurchin/htdocs/uicons/default/bottom_shadow.gif
Xurchin/htdocs/uicons/default/brushed_aluminum.gif
Xurchin/htdocs/uicons/default/cal.gif
Xurchin/htdocs/uicons/default/bullet_red.gif
Xurchin/htdocs/uicons/default/bullet_green.gif
Xurchin/htdocs/uicons/default/button_left.gif
Xurchin/htdocs/uicons/default/button_right.gif
Xurchin/htdocs/uicons/default/calendar_back.gif
Xurchin/htdocs/uicons/default/calendar_back2.gif
Xurchin/htdocs/uicons/default/calendar_back3.gif
Xurchin/htdocs/uicons/default/calendar_back4.gif
Xurchin/htdocs/uicons/default/calendar_back5.gif
Xurchin/htdocs/uicons/default/check.gif
Xurchin/htdocs/uicons/default/click_from.gif
Xurchin/htdocs/uicons/default/click_to.gif
Xurchin/htdocs/uicons/default/dcorner_tleft.gif
Xurchin/htdocs/uicons/default/dcorner_tright.gif
Xurchin/htdocs/uicons/default/delete.gif
Xurchin/htdocs/uicons/default/delete1.gif
Xurchin/htdocs/uicons/default/dir.gif
Xurchin/htdocs/uicons/default/dot.gif
Xurchin/htdocs/uicons/default/dot2.gif
Xurchin/htdocs/uicons/default/dots.gif
Xurchin/htdocs/uicons/default/down.gif
Xurchin/htdocs/uicons/default/duplicate.gif
Xurchin/htdocs/uicons/default/duplicate1.gif
Xurchin/htdocs/uicons/default/edit.gif
Xurchin/htdocs/uicons/default/edit1.gif
Xurchin/htdocs/uicons/default/embossed_urchin.gif
Xurchin/htdocs/uicons/default/embossed_urchin2.gif
Xurchin/htdocs/uicons/default/error.gif
Xurchin/htdocs/uicons/default/export.gif
Xurchin/htdocs/uicons/default/file.gif
Xurchin/htdocs/uicons/default/filter.gif
Xurchin/htdocs/uicons/default/fin_active.gif
Xurchin/htdocs/uicons/default/fin_inactive.gif
Xurchin/htdocs/uicons/default/fout_active.gif
Xurchin/htdocs/uicons/default/fout_inactive.gif
Xurchin/htdocs/uicons/default/glossary.gif
Xurchin/htdocs/uicons/default/gochinese.gif
Xurchin/htdocs/uicons/default/goenglish.gif
Xurchin/htdocs/uicons/default/gofrench.gif
Xurchin/htdocs/uicons/default/gogerman.gif
Xurchin/htdocs/uicons/default/goitalian.gif
Xurchin/htdocs/uicons/default/gojapanese.gif
Xurchin/htdocs/uicons/default/gokorean.gif
Xurchin/htdocs/uicons/default/goportuguese.gif
Xurchin/htdocs/uicons/default/gospanish.gif
Xurchin/htdocs/uicons/default/goswedish.gif
Xurchin/htdocs/uicons/default/graph_bar.gif
Xurchin/htdocs/uicons/default/graph_bar1.gif
Xurchin/htdocs/uicons/default/graph_bar2.gif
Xurchin/htdocs/uicons/default/graph_barline.gif
Xurchin/htdocs/uicons/default/graph_line.gif
Xurchin/htdocs/uicons/default/graph_line1.gif
Xurchin/htdocs/uicons/default/graph_line2.gif
Xurchin/htdocs/uicons/default/graph_pie.gif
Xurchin/htdocs/uicons/default/graph_pie1.gif
Xurchin/htdocs/uicons/default/graph_pie2.gif
Xurchin/htdocs/uicons/default/graph_sbar1.gif
Xurchin/htdocs/uicons/default/graph_sbar2.gif
Xurchin/htdocs/uicons/default/green.gif
Xurchin/htdocs/uicons/default/green_arrow.gif
Xurchin/htdocs/uicons/default/grid2.gif
Xurchin/htdocs/uicons/default/group.gif
Xurchin/htdocs/uicons/default/harrow.gif
Xurchin/htdocs/uicons/default/log.gif
Xurchin/htdocs/uicons/default/hbar.gif
Xurchin/htdocs/uicons/default/hbar2.gif
Xurchin/htdocs/uicons/default/hbar3.gif
Xurchin/htdocs/uicons/default/hbar4.gif
Xurchin/htdocs/uicons/default/hbarg.gif
Xurchin/htdocs/uicons/default/hbarg2.gif
Xurchin/htdocs/uicons/default/hbaro.gif
Xurchin/htdocs/uicons/default/hbaro2.gif
Xurchin/htdocs/uicons/default/help.gif
Xurchin/htdocs/uicons/default/help2.gif
Xurchin/htdocs/uicons/default/highlight.gif
Xurchin/htdocs/uicons/default/highlight1.gif
Xurchin/htdocs/uicons/default/highlight2.gif
Xurchin/htdocs/uicons/default/icon_add.gif
Xurchin/htdocs/uicons/default/icon_add2.gif
Xurchin/htdocs/uicons/default/icon_config.gif
Xurchin/htdocs/uicons/default/icon_config2.gif
Xurchin/htdocs/uicons/default/icon_delete.gif
Xurchin/htdocs/uicons/default/icon_delete2.gif
Xurchin/htdocs/uicons/default/icon_edit.gif
Xurchin/htdocs/uicons/default/icon_edit2.gif
Xurchin/htdocs/uicons/default/icon_import.gif
Xurchin/htdocs/uicons/default/tod.gif
Xurchin/htdocs/uicons/default/ind10.gif
Xurchin/htdocs/uicons/default/icon_import2.gif
Xurchin/htdocs/uicons/default/icon_prefs.gif
Xurchin/htdocs/uicons/default/icon_prefs2.gif
Xurchin/htdocs/uicons/default/icon_view.gif
Xurchin/htdocs/uicons/default/icon_view2.gif
Xurchin/htdocs/uicons/default/icon_vreport.gif
Xurchin/htdocs/uicons/default/icon_vreport2.gif
Xurchin/htdocs/uicons/default/ind11.gif
Xurchin/htdocs/uicons/default/ind15.gif
Xurchin/htdocs/uicons/default/ind16.gif
Xurchin/htdocs/uicons/default/ind17.gif
Xurchin/htdocs/uicons/default/ind18.gif
Xurchin/htdocs/uicons/default/ind19.gif
Xurchin/htdocs/uicons/default/ind20.gif
Xurchin/htdocs/uicons/default/ind3.gif
Xurchin/htdocs/uicons/default/ind9.gif
Xurchin/htdocs/uicons/default/info.gif
Xurchin/htdocs/uicons/default/info_button.gif
Xurchin/htdocs/uicons/default/lbigtab.gif
Xurchin/htdocs/uicons/default/lbigtab2.gif
Xurchin/htdocs/uicons/default/left_arrow.gif
Xurchin/htdocs/uicons/default/lscale.gif
Xurchin/htdocs/uicons/default/minirun.gif
Xurchin/htdocs/uicons/default/left_grey_arrow.gif
Xurchin/htdocs/uicons/default/log_out2.gif
Xurchin/htdocs/uicons/default/minirun1.gif
Xurchin/htdocs/uicons/default/minus.gif
Xurchin/htdocs/uicons/default/nav_back_b.gif
Xurchin/htdocs/uicons/default/nav_back_l.gif
Xurchin/htdocs/uicons/default/nav_back_l2.gif
Xurchin/htdocs/uicons/default/nav_back_line.gif
Xurchin/htdocs/uicons/default/nav_back_t.gif
Xurchin/htdocs/uicons/default/nav_corner.gif
Xurchin/htdocs/uicons/default/nav_corner_bl.gif
Xurchin/htdocs/uicons/default/nav_corner_br.gif
Xurchin/htdocs/uicons/default/nav_corner_tl.gif
Xurchin/htdocs/uicons/default/nav_corner_tr.gif
Xurchin/htdocs/uicons/default/nav_tab_corner.gif
Xurchin/htdocs/uicons/default/orange.gif
Xurchin/htdocs/uicons/default/page.gif
Xurchin/htdocs/uicons/default/panel_bottom.gif
Xurchin/htdocs/uicons/default/panel_left.gif
Xurchin/htdocs/uicons/default/up.gif
Xurchin/htdocs/uicons/default/plus.gif
Xurchin/htdocs/uicons/default/panel_right.gif
Xurchin/htdocs/uicons/default/panel_top.gif
Xurchin/htdocs/uicons/default/plate_left.gif
Xurchin/htdocs/uicons/default/plate_middle.gif
Xurchin/htdocs/uicons/default/plate_right.gif
Xurchin/htdocs/uicons/default/printer.gif
Xurchin/htdocs/uicons/default/printer2.gif
Xurchin/htdocs/uicons/default/question.gif
Xurchin/htdocs/uicons/default/rbigtab.gif
Xurchin/htdocs/uicons/default/rcorner_bleft.gif
Xurchin/htdocs/uicons/default/rcorner_bright.gif
Xurchin/htdocs/uicons/default/rcorner_tleft.gif
Xurchin/htdocs/uicons/default/rcorner_tleft2.gif
Xurchin/htdocs/uicons/default/rcorner_tleft_w.gif
Xurchin/htdocs/uicons/default/rcorner_tright.gif
Xurchin/htdocs/uicons/default/rcorner_tright2.gif
Xurchin/htdocs/uicons/default/red_arrow.gif
Xurchin/htdocs/uicons/default/report.gif
Xurchin/htdocs/uicons/default/report_icons.gif
Xurchin/htdocs/uicons/default/right_arrow.gif
Xurchin/htdocs/uicons/default/right_grey_arrow.gif
Xurchin/htdocs/uicons/default/round_button.gif
Xurchin/htdocs/uicons/default/rscale.gif
Xurchin/htdocs/uicons/default/rtab.gif
Xurchin/htdocs/uicons/default/rtab_back.gif
Xurchin/htdocs/uicons/default/rtop_back.gif
Xurchin/htdocs/uicons/default/runnow.gif
Xurchin/htdocs/uicons/default/scale2.gif
Xurchin/htdocs/uicons/default/scale3.gif
Xurchin/htdocs/uicons/default/scale4.gif
Xurchin/htdocs/uicons/default/scalex.gif
Xurchin/htdocs/uicons/default/scalex2.gif
Xurchin/htdocs/uicons/default/sortarrow.gif
Xurchin/htdocs/uicons/default/sortarrow2.gif
Xurchin/htdocs/uicons/default/sortarrow3.gif
Xurchin/htdocs/uicons/default/stop_button.gif
Xurchin/htdocs/uicons/default/submitchinese.gif
Xurchin/htdocs/uicons/default/submitenglish.gif
Xurchin/htdocs/uicons/default/submitfrench.gif
Xurchin/htdocs/uicons/default/submitgerman.gif
Xurchin/htdocs/uicons/default/submititalian.gif
Xurchin/htdocs/uicons/default/submitjapanese.gif
Xurchin/htdocs/uicons/default/submitkorean.gif
Xurchin/htdocs/uicons/default/submitportuguese.gif
Xurchin/htdocs/uicons/default/submitspanish.gif
Xurchin/htdocs/uicons/default/submitswedish.gif
Xurchin/htdocs/uicons/default/svg_urchin.gif
Xurchin/htdocs/uicons/default/tab_off_left.gif
Xurchin/htdocs/uicons/default/tab_off_right.gif
Xurchin/htdocs/uicons/default/tab_on_left.gif
Xurchin/htdocs/uicons/default/tab_on_right.gif
Xurchin/htdocs/uicons/default/tabside1.gif
Xurchin/htdocs/uicons/default/tabside2.gif
Xurchin/htdocs/uicons/default/taskbar.gif
Xurchin/htdocs/uicons/default/tspace.gif
Xurchin/htdocs/uicons/default/u5_base.gif
Xurchin/htdocs/uicons/default/u5_camp.gif
Xurchin/htdocs/uicons/default/u5_ecom.gif
Xurchin/htdocs/uicons/default/u5_lang.gif
Xurchin/htdocs/uicons/default/u5_load.gif
Xurchin/htdocs/uicons/default/u5_pack.gif
Xurchin/htdocs/uicons/default/updir.gif
Xurchin/htdocs/uicons/default/urchin5.gif
Xurchin/htdocs/uicons/default/urchin_login.gif
Xurchin/htdocs/uicons/default/urchin_wizard_a.gif
Xurchin/htdocs/uicons/default/urchin_wizard_b.gif
Xurchin/htdocs/uicons/default/urchinlogo.gif
Xurchin/htdocs/uicons/default/urchinlogo2.gif
Xurchin/htdocs/uicons/default/urchinlogo3.gif
Xurchin/htdocs/uicons/default/user.gif
Xurchin/htdocs/uicons/default/vbar2.gif
Xurchin/htdocs/uicons/default/vbar3.gif
Xurchin/htdocs/uicons/default/vbar4.gif
Xurchin/htdocs/uicons/default/view.gif
Xurchin/htdocs/uicons/default/viewr.gif
Xurchin/htdocs/uicons/default/viewr1.gif
Xurchin/htdocs/uicons/default/week_arrow.gif
Xurchin/htdocs/uicons/default/whelp.gif
Xurchin/htdocs/uicons/default/whelp1.gif
Xurchin/htdocs/uicons/default/wiz_tab.gif
Xurchin/htdocs/uicons/default/wiz_urchin.gif
Xurchin/htdocs/uicons/default/www2.gif
Xurchin/htdocs/uicons/default/xcomma.gif
Xurchin/htdocs/uicons/default/xexcel.gif
Xurchin/htdocs/uicons/default/xhelp.gif
Xurchin/htdocs/uicons/default/xind10.gif
Xurchin/htdocs/uicons/default/xind16.gif
Xurchin/htdocs/uicons/default/xind17.gif
Xurchin/htdocs/uicons/default/xind18.gif
Xurchin/htdocs/uicons/default/xind9.gif
Xurchin/htdocs/uicons/default/xsep.gif
Xurchin/htdocs/uicons/default/xtab.gif
Xurchin/htdocs/uicons/default/xword.gif
Xurchin/htdocs/ujs/admin.js
Xurchin/htdocs/ujs/calendar.js
Xurchin/htdocs/ujs/general.js
Xurchin/htdocs/ujs/svgcheck.js
Xurchin/htdocs/ujs/svgcheck.vbs
Xurchin/htdocs/ujs/ugraph.js
Xurchin/htdocs/ujs/urchin.js
Xurchin/htdocs/usvg/ugraph.svg
Xurchin/htdocs/report.cgi
Xurchin/htdocs/session.cgi
Xurchin/lib/admin/languages/en.db
Xurchin/lib/admin/languages/en.txt
Xurchin/lib/admin/languages/fr.txt
Xurchin/lib/admin/languages/ge.txt
Xurchin/lib/admin/languages/ja.txt
Xurchin/lib/admin/languages/sp.txt
Xurchin/lib/admin/languages/fr.db
Xurchin/lib/admin/languages/ge.db
Xurchin/lib/admin/languages/ja.db
Xurchin/lib/admin/languages/sp.db
Xurchin/lib/admin/templates/form_about.tpl
Xurchin/lib/admin/templates/form_access1.tpl
Xurchin/lib/admin/templates/form_access2.tpl
Xurchin/lib/admin/templates/form_access3.tpl
Xurchin/lib/admin/templates/form_access4.tpl
Xurchin/lib/admin/templates/form_account.tpl
Xurchin/lib/admin/templates/form_aff1.tpl
Xurchin/lib/admin/templates/form_aff2.tpl
Xurchin/lib/admin/templates/form_auto1.tpl
Xurchin/lib/admin/templates/form_auto2.tpl
Xurchin/lib/admin/templates/form_browser.tpl
Xurchin/lib/admin/templates/form_dbrowser.tpl
Xurchin/lib/admin/templates/form_filter1.tpl
Xurchin/lib/admin/templates/form_filter2.tpl
Xurchin/lib/admin/templates/form_filter3.tpl
Xurchin/lib/admin/templates/form_filter4.tpl
Xurchin/lib/admin/templates/form_group1.tpl
Xurchin/lib/admin/templates/form_group2.tpl
Xurchin/lib/admin/templates/form_group3.tpl
Xurchin/lib/admin/templates/form_group4.tpl
Xurchin/lib/admin/templates/form_history.tpl
Xurchin/lib/admin/templates/form_import.tpl
Xurchin/lib/admin/templates/form_license.tpl
Xurchin/lib/admin/templates/form_license2.tpl
Xurchin/lib/admin/templates/form_list.tpl
Xurchin/lib/admin/templates/form_list2.tpl
Xurchin/lib/admin/templates/form_log1.tpl
Xurchin/lib/admin/templates/form_log2.tpl
Xurchin/lib/admin/templates/form_log3.tpl
Xurchin/lib/admin/templates/form_log4.tpl
Xurchin/lib/admin/templates/form_log5.tpl
Xurchin/lib/admin/templates/form_log6.tpl
Xurchin/lib/admin/templates/form_machine2.tpl
Xurchin/lib/admin/templates/form_machine3.tpl
Xurchin/lib/admin/templates/form_prefs.tpl
Xurchin/lib/admin/templates/form_profile1.tpl
Xurchin/lib/admin/templates/form_profile2.tpl
Xurchin/lib/admin/templates/form_profile3.tpl
Xurchin/lib/admin/templates/form_profile4.tpl
Xurchin/lib/admin/templates/form_profile5.tpl
Xurchin/lib/admin/templates/form_profile6.tpl
Xurchin/lib/admin/templates/form_profile7.tpl
Xurchin/lib/admin/templates/form_profile8.tpl
Xurchin/lib/admin/templates/form_rbrowser.tpl
Xurchin/lib/admin/templates/form_rs.tpl
Xurchin/lib/admin/templates/form_scheduler.tpl
Xurchin/lib/admin/templates/form_slist.tpl
Xurchin/lib/admin/templates/form_ubrowser.tpl
Xurchin/lib/admin/templates/form_user1.tpl
Xurchin/lib/admin/templates/form_user2.tpl
Xurchin/lib/admin/templates/form_user3.tpl
Xurchin/lib/admin/templates/form_user4.tpl
Xurchin/lib/admin/templates/form_user5.tpl
Xurchin/lib/admin/templates/form_vbrowser.tpl
Xurchin/lib/admin/templates/form_viewreports.tpl
Xurchin/lib/admin/templates/history_frame1.tpl
Xurchin/lib/admin/templates/history_frame2.tpl
Xurchin/lib/admin/templates/history_framep.tpl
Xurchin/lib/admin/templates/include_access_tab.tpl
Xurchin/lib/admin/templates/include_aff_tab.tpl
Xurchin/lib/admin/templates/include_auto_tab.tpl
Xurchin/lib/admin/templates/include_ffooter.tpl
Xurchin/lib/admin/templates/include_fheader.tpl
Xurchin/lib/admin/templates/include_filter_tab.tpl
Xurchin/lib/admin/templates/include_footer.tpl
Xurchin/lib/admin/templates/include_gfooter.tpl
Xurchin/lib/admin/templates/include_gheader.tpl
Xurchin/lib/admin/templates/include_group_tab.tpl
Xurchin/lib/admin/templates/include_header.tpl
Xurchin/lib/admin/templates/include_lfooter.tpl
Xurchin/lib/admin/templates/include_lheader.tpl
Xurchin/lib/admin/templates/include_log_tab.tpl
Xurchin/lib/admin/templates/include_machine_tab.tpl
Xurchin/lib/admin/templates/include_profile_tab.tpl
Xurchin/lib/admin/templates/include_simple_header.tpl
Xurchin/lib/admin/templates/include_user_tab.tpl
Xurchin/lib/admin/templates/include_wfooter.tpl
Xurchin/lib/admin/templates/include_wheader.tpl
Xurchin/lib/admin/templates/include_wsfooter.tpl
Xurchin/lib/admin/templates/include_wsheader.tpl
Xurchin/lib/admin/templates/main_comps.tpl
Xurchin/lib/admin/templates/main_config.tpl
Xurchin/lib/admin/templates/main_framed.tpl
Xurchin/lib/admin/templates/main_license.tpl
Xurchin/lib/admin/templates/main_popup.tpl
Xurchin/lib/admin/templates/main_simple.tpl
Xurchin/lib/admin/templates/main_task.tpl
Xurchin/lib/admin/templates/main_wizard.tpl
Xurchin/lib/admin/templates/task_frame1.tpl
Xurchin/lib/admin/templates/task_frame2.tpl
Xurchin/lib/admin/templates/task_frame3.tpl
Xurchin/lib/admin/templates/task_frame4.tpl
Xurchin/lib/admin/templates/task_frame5.tpl
Xurchin/lib/admin/templates/task_frame6.tpl
Xurchin/lib/admin/templates/task_framep.tpl
Xurchin/lib/admin/templates/wizard_aff1.tpl
Xurchin/lib/admin/templates/wizard_aff2.tpl
Xurchin/lib/admin/templates/wizard_filter1.tpl
Xurchin/lib/admin/templates/wizard_filter11.tpl
Xurchin/lib/admin/templates/wizard_filter12.tpl
Xurchin/lib/admin/templates/wizard_filter2.tpl
Xurchin/lib/admin/templates/wizard_filter3.tpl
Xurchin/lib/admin/templates/wizard_group1.tpl
Xurchin/lib/admin/templates/wizard_group2.tpl
Xurchin/lib/admin/templates/wizard_log1.tpl
Xurchin/lib/admin/templates/wizard_log11.tpl
Xurchin/lib/admin/templates/wizard_log12.tpl
Xurchin/lib/admin/templates/wizard_log2.tpl
Xurchin/lib/admin/templates/wizard_log3.tpl
Xurchin/lib/admin/templates/wizard_log4.tpl
Xurchin/lib/admin/templates/wizard_log5.tpl
Xurchin/lib/admin/templates/wizard_profile1.tpl
Xurchin/lib/admin/templates/wizard_profile2.tpl
Xurchin/lib/admin/templates/wizard_profile3.tpl
Xurchin/lib/admin/templates/wizard_profile4.tpl
Xurchin/lib/admin/templates/wizard_profiled1.tpl
Xurchin/lib/admin/templates/wizard_profiled2.tpl
Xurchin/lib/admin/templates/wizard_settings1.tpl
Xurchin/lib/admin/templates/wizard_settings2.tpl
Xurchin/lib/admin/templates/wizard_settings3.tpl
Xurchin/lib/admin/templates/wizard_settingsw.tpl
Xurchin/lib/admin/templates/wizard_user1.tpl
Xurchin/lib/admin/templates/wizard_user2.tpl
Xurchin/lib/admin/templates/wizard_user3.tpl
Xurchin/lib/admin/views/action.vw
Xurchin/lib/admin/views/action_s1.vw
Xurchin/lib/admin/views/action_s2.vw
Xurchin/lib/admin/views/nav.vw
Xurchin/lib/admin/views/nav_s1.vw
Xurchin/lib/admin/views/nav_s2.vw
Xurchin/lib/admin/views/view.vw
Xurchin/lib/admin/views/view_s1.vw
Xurchin/lib/admin/views/view_s2.vw
Xurchin/lib/custom/cobrands/cobrand_admin.tpl.sample
Xurchin/lib/custom/cobrands/cobrand_report.tpl.sample
Xurchin/lib/custom/languages/en.txt.sample
Xurchin/lib/custom/logformats/custom.lf.sample
Xurchin/lib/custom/logformats/fieldlist.txt.sample
Xurchin/lib/custom/profiletypes/E-Commerce_Website/All_Reports.rs.sample
Xurchin/lib/custom/profiletypes/Standard_Website/All_Reports.rs.sample
Xurchin/lib/reporting/languages/en.db
Xurchin/lib/reporting/languages/en.txt
Xurchin/lib/reporting/languages/fr.txt
Xurchin/lib/reporting/languages/ge.txt
Xurchin/lib/reporting/languages/ja.txt
Xurchin/lib/reporting/languages/sp.txt
Xurchin/lib/reporting/languages/fr.db
Xurchin/lib/reporting/languages/ge.db
Xurchin/lib/reporting/languages/ja.db
Xurchin/lib/reporting/languages/sp.db
Xurchin/lib/reporting/logformats/auto.lf
Xurchin/lib/reporting/logformats/elf.lf
Xurchin/lib/reporting/logformats/elf2.lf
Xurchin/lib/reporting/logformats/fieldlist.txt
Xurchin/lib/reporting/logformats/ncsa.lf
Xurchin/lib/reporting/logformats/netscape.lf
Xurchin/lib/reporting/logformats/w3c.lf
Xurchin/lib/reporting/profiletypes/rollup.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/default.config
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/Basic_All.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/Basic_IT.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/Basic_Lite.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/UTM-Enabled_All.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/UTM-Enabled_Nopaths.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/UTM-Enabled_Webdesign.rs
Xurchin/lib/reporting/profiletypes/E-Commerce_Website/datamap.dm
Xurchin/lib/reporting/profiletypes/Standard_Website/default.config
Xurchin/lib/reporting/profiletypes/Standard_Website/Basic_All.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/Basic_IT.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/Basic_Lite.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/UTM-Enabled_All.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/UTM-Enabled_Nopaths.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/UTM-Enabled_Webdesign.rs
Xurchin/lib/reporting/profiletypes/Standard_Website/datamap.dm
Xurchin/lib/reporting/templates/ERROR_SVG.svg
Xurchin/lib/reporting/templates/graph_standard.tpl
Xurchin/lib/reporting/templates/graph_standard2.tpl
Xurchin/lib/reporting/templates/include_footer.tpl
Xurchin/lib/reporting/templates/include_footer_s.tpl
Xurchin/lib/reporting/templates/include_header.tpl
Xurchin/lib/reporting/templates/include_header_s.tpl
Xurchin/lib/reporting/templates/include_selectreports.tpl
Xurchin/lib/reporting/templates/main_blank.tpl
Xurchin/lib/reporting/templates/main_comps.tpl
Xurchin/lib/reporting/templates/main_popup.tpl
Xurchin/lib/reporting/templates/main_report.tpl
Xurchin/lib/reporting/templates/main_simple.tpl
Xurchin/lib/reporting/templates/report_clicktree.tpl
Xurchin/lib/reporting/templates/report_graph.tpl
Xurchin/lib/reporting/templates/report_graph2.tpl
Xurchin/lib/reporting/templates/report_summary.tpl
Xurchin/lib/reporting/templates/report_text.tpl
Xurchin/lib/reporting/templates/svg.tpl
Xurchin/lib/reporting/templates/report_topdate.tpl
Xurchin/lib/reporting/templates/report_topten.tpl
Xurchin/lib/reporting/templates/svg2.tpl
Xurchin/lib/reporting/templates/view_about.tpl
Xurchin/lib/reporting/templates/view_export.tpl
Xurchin/lib/reporting/templates/view_print.tpl
Xurchin/lib/reporting/templates/xe_report_clicktree.tpl
Xurchin/lib/reporting/templates/xe_report_graph.tpl
Xurchin/lib/reporting/templates/xe_report_graph2.tpl
Xurchin/lib/reporting/templates/xe_report_summary.tpl
Xurchin/lib/reporting/templates/xe_report_topdate.tpl
Xurchin/lib/reporting/templates/xe_report_topten.tpl
Xurchin/lib/reporting/templates/xw_report_clicktree.tpl
Xurchin/lib/reporting/templates/xw_report_graph.tpl
Xurchin/lib/reporting/templates/xw_report_graph2.tpl
Xurchin/lib/reporting/templates/xw_report_summary.tpl
Xurchin/lib/reporting/templates/xw_report_topdate.tpl
Xurchin/lib/reporting/templates/xw_report_topten.tpl
Xurchin/lib/session/languages/en.db
Xurchin/lib/session/languages/en.txt
Xurchin/lib/session/languages/ja.db
Xurchin/lib/session/languages/ja.txt
Xurchin/lib/session/templates/comps.tpl
Xurchin/lib/session/templates/template.tpl
Xurchin/util/utm/__utm.gif
Xurchin/util/utm/__utm.js
Xurchin/util/geo-update
Xurchin/util/initialdb.config
Xurchin/util/inspector
Xurchin/util/u3importer
Xurchin/util/uconf-driver
Xurchin/util/uconf-export
Xurchin/util/uconf-import
Xurchin/util/uconf-schedule
Xurchin/util/udb-sanitizer
Xurchin/util/urchin_daemons.template
Xurchin/util/urchin_daemons
Xurchin/util/unzip
Xurchin/util/zip
Xurchin/var/manifest.txt
Xurchin/var/server.crt.sample
Xurchin/var/server.key.sample
Xurchin/var/urchinwebd.conf
Xurchin/var/urchinwebd.conf.template
X@dirrm urchin/bin
X@unexec rm -rf %D/urchin/data/cache 2>/dev/null
X@unexec rmdir %D/urchin/data/history 2>/dev/null || true
X@unexec rmdir %D/urchin/data/logs 2>/dev/null || true
X@unexec rmdir %D/urchin/data/reports 2>/dev/null || true
X@unexec rmdir %D/urchin/data/session 2>/dev/null || true
X@dirrm urchin/doc
X@dirrm urchin/htdocs/ucss
X@dirrm urchin/htdocs/uicons/default/ee/images
X@dirrm urchin/htdocs/uicons/default/ee/slides
X@dirrm urchin/htdocs/uicons/default/ee
X@dirrm urchin/htdocs/uicons/default
X@dirrm urchin/htdocs/uicons
X@dirrm urchin/htdocs/ujs
X@dirrm urchin/htdocs/usvg
X@dirrm urchin/htdocs
X@dirrm urchin/lib/admin/languages
X@dirrm urchin/lib/admin/templates
X@dirrm urchin/lib/admin/views
X@dirrm urchin/lib/admin
X@unexec rmdir %D/urchin/lib/custom/cobrands 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom/languages 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom/logformats 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom/profiletypes/E-Commerce_Website 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom/profiletypes/Standard_Website 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom/profiletypes 2>/dev/null || true
X@unexec rmdir %D/urchin/lib/custom 2>/dev/null || true
X@dirrm urchin/lib/reporting/languages
X@dirrm urchin/lib/reporting/logformats
X@dirrm urchin/lib/reporting/profiletypes/E-Commerce_Website
X@dirrm urchin/lib/reporting/profiletypes/Standard_Website
X@dirrm urchin/lib/reporting/profiletypes
X@dirrm urchin/lib/reporting/templates
X@dirrm urchin/lib/reporting
X@dirrm urchin/lib/session/languages
X@dirrm urchin/lib/session/templates
X@dirrm urchin/lib/session
X@unexec rmdir %D/urchin/lib 2>/dev/null || true
X@dirrm urchin/util/utm
X@unexec rmdir %D/urchin/util 2>/dev/null || true
END-of-urchin5/pkg-plist
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200310281911.h9SJBgW9084764>