Installation

Installing & Using CRP

This page is formatted as a single page in case you want to print it out. This section deals with installing the software, not with the configuration of the package for a specific conference. Check out the Configuration section for that information.

  1. How do I get the software?
  2. What web software is needed?
  3. Installation
  4. Roadmap to the source

There is additional information at the end of this page on the "conference process" supported by this package.

How do I get the software?

It's easiest to use CVS to download the current version. See the directions under "installation".

What Web Software and Hardware Is Needed?

You need the following software; I'm specifying the versions used in the development of CRP. These versions come standard with an installation of Mandrake Linux 8.1. Any modifications or configurations to the individual packages are listed below:

  1. Apache (Server Version: Apache-AdvancedExtranetServer/1.3.14 (Linux-Mandrake/2mdk) mod_ssl/2.7.1 OpenSSL/0.9.5a PHP/4.0.3pl1 DAV/1.0.2 AuthSMB/0.3 ApacheJServ/1.1.2)
    1. Server must be configured to recognize PHP files(.php)
    2. DirectoryIndex should include "index.php" files
  2. PHP ( Version 4.0.3pl1 )
    1. You need to enable ASP tags (the <:...:> format). Modify e.g. /etc/httpd/conf/addon-modules/php.conf to contain the line:

      php_admin_flag asp_tags on

      (you could also change this in /etc/php.ini, but this is the way I did it because that's what I found on a FAQ).
    2. Increase the maximum size of uploaded files in /etc/php.ini. If you don't do this, you will only be able to upload files of about 2MB, which is the default size.

      upload_max_filesize = 12097152 ; 12 Meg default limit on file uploads
       
    3. Increase the automatic time-out in /etc/php.ini. If you don't do this, people will be "logged out" of their sessions after ~24 minutes. This is annoying when people are entering a review.

      session.gc_maxlifetime = 144000 ; after this number of seconds, stored
      ; data will be seen as 'garbage' and
      ; cleaned up by the gc process


       
  3. MySQL (v3.23)
    1. Increase the maximum packet size in e.g. /var/lib/mysql/my.cnf

      set-variable = max_allowed_packet=16M

You may also find it useful to install the "myphpadmin" package; this lets you administer MySQL databases without having to use the command line interfaces.

CRP was developed and deployed on a dual-processor Dell 2450 server with two 933Mhz Pentinum-III processors and 1GB of RAM; this is dramatic overkill, but it's what we had available.  To give you an idea of the resources needed, the ISCA2002 conference had ~190 papers submitted. Papers are stored in the MySQL database encoded in base64 (i.e. not very efficiently). The total database size in /var/lib/mysql was ~85MB. Dumps of the database are ~75MB. For a similar sized conference, a machine with 256MB would probably have enough RAM to keep the entire database and all index tables in memory.

Installation

You can check out the distribution from SourceForge using CVS or a released version (if one is available).

Using CVS:

cvs -d:pserver:anonymous@cvs.crp.sourceforge.net:/cvsroot/crp login
cvs -z3 -d:pserver:anonymous@cvs.crp.sourceforge.net:/cvsroot/crp co CRP

This will leave you with a directory "CRP", underneath with you should find directories "All", "Author", "PC", "Chair" and "Code" (there may be more directories).

Roadmap To The Source

The "Code" directory contains the majority of the common PHP code for the application. It also contains the default database schema and material for customizing the conference.