# --
# INSTALL description of OTRS
# Copyright (C) 2001-2003 Martin Edenhofer <martin+code@otrs.org>
# --
# $Id: INSTALL,v 1.25 2003/01/05 14:34:11 martin Exp $
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see 
# the enclosed file COPYING for license information (GPL). If you 
# did not receive this file, see http://www.gnu.org/licenses/gpl.txt.
# --

Software requirements?
======================

  On all Perl-Platforms! You need:
    * min. Perl5
    * Database (e. g. MySQL, PostgreSQL)
    * Webpserver (mod_perl isn't required but "very nice" to have)
    * some CPAN-Module (DBI, DBD::mysql, Digest::MD5) and for stats (GD, 
      GD::Text, GD::Graph, GD::Graph::lines, GD::Text::Align)

Installation:
=============

This few steps describe an OTRS installation incl. webserver and database 
settings. The OTRS user is "otrs" and the home (root) directory is /opt/otrs
(of cause you can choose an other directory or/and OTRS user). 

1. Install CPAN Modules (if needed):
   ---------------------------------
   a) Install the RPMs if your distributions provides RPMs for
      the CPAN modules. 

   b) Install the modules via CPAN (http://www.cpan.org/)
      perl -MCPAN -e shell;
      ...
      install Digest::MD5
      ...

      and maybe the GD stuff (stats support, not required!)
      ...
      install GD
      install GD::Text
      install GD::Graph
      install GD::Graph::lines
      install GD::Text::Align
      ...

   Check if all needed modules are installed:
   ------------------------------------------
      $shell:~> perl -cw /opt/otrs/bin/cgi-bin/index.pl 
      /opt/otrs/bin/cgi-bin/index.pl syntax OK
      $shell:~> perl -cw /opt/otrs/bin/PostMaster.pl 
      /opt/otrs/bin/PostMaster.pl syntax OK
      $shell:~>

    If you get "syntax OK" it seems to be Ok. Go ahead.

2. Create user: 
   ------------
    Add user:
    ---------
    $shell: useradd -d /opt/otrs/ -c 'OTRS user' otrs

    Add user to webserver group (if the webserver is not running with OTRS user):
    -----------------------------------------------------------------------------
    $shell: usermod -G nogroup otrs

    (SuSE=nogroup, Red Hat=apache)

3. Install tar.gz:
   ---------------
   $shell: cd /opt/
   $shell: tar -xzvf otrs-xxxx-xx-xx.tar-gz
   $shell: chown -R /opt/otrs/* otrs

4. Demo config files:
   ------------------  
    There are several OTRS demo config files in $OTRS_HOME/Kernel/*.dist
    and $OTRS_HOME/Kernel/Config/*.dist. Make copies of all demo config files:
  
      cp Kernel/Config.pm.dist Kernel/Config.pm
 
      cd Kernel/Config/
      for foo in *.dist; do cp $foo `basename $foo .dist`; done

    Or if you are installing OTRS an a Windows system:

      copy Kernel/Config.pm.dist Kernel/Config.pm
 
      cd Kernel/Config/
      copy *.dist *.

5. Webserver:
   ----------
   [follow README.webserver] 

6. Database setup:
   ---------------
   If you use MySQL, you can use the Web-Installer (http://yourhost/otrs/installer.pl).
   Else follow README.database --> "DB - Setup Example".

7. Config file ($HOME/Kernel/Config.pm):
   -------------------------------------
   If you used the Web-Installer, you can skip this point. If not,
   set some Kernel::Config ($HOME/Kernel/Config.pm) Options (FQDN, SystemID, TicketHook, 
   Home, ...)

8. File Permissions:
   -----------------
   Set the file permissions with 
   "$HOME/bin/SetPermissions.sh <OTRS_HOME> <OTRS_USER> <WEBSERVER_USER> [OTRS_GROUP] [WEB_GROUP]"
   e. g. 
     Webserver with OTRS user: "SetPermissions.sh /opt/otrs otrs otrs" 
     Webserver with wwwrun user (e. g. SuSE): "SetPermissions.sh /opt/otrs otrs wwwrun" 
     Webserver with apache user (e. g. Redhat): "SetPermissions.sh /opt/otrs otrs apache users apache"

9. First Login:
   ------------
   http://yourhost/otrs/index.pl
   User: root@localhost
   PW: root

   --> goto AdminArea and set some config settings (UserAdd, Queues, ...).

   Finished.

10. First Email:
   ------------
   use the procmailrc of the OTRS user --> ~otrs/.procmailrc or e. g. /opt/otrs/.procmailrc

   --> send emails to the otrs user (e. g. otrs@localhost)

   or pipe an email directly into $OTRS_HOME/bin/Postmaster.pl
    (e. g. 'cat /opt/otrs/doc/test-email-1.box | /opt/otrs/bin/PostMaster.pl').

11. Cronjobs for the OTRS user:
    ---------------------------
    There are several OTRS demo cronjobs in $OTRS_HOME/var/cron/*.dist. 
    Make copies of all of the demo cronjobs:
 
      cd var/cron
      for foo in *.dist; do cp $foo `basename $foo .dist`; done

    Or if you are installing OTRS an a Windows system:

      cd var/cron
      copy *.dist *.


    Use $OTRS_HOME/bin/Cron.sh {start|stop|restart} to start or stop this cronjobs
    from $OTRS_HOME/var/cron/* (.dist will be ignored). 

    >> Note: Install this cronjobs as OTRS user. <<


Remark: For installation questions ask otrs@otrs.org (http://lists.otrs.org/).

Have a lot of fun.

 Martin Edenhofer 

(January 2003 Frankfurt/Germany)

EOF
