These are basic installation instructions for COMAS. They were tested on a Debian/sarge machine, but would ideally be usefull for any Unix-like system. Please send any corrections or comments. COMAS requires Apache, mod_perl, PostgreSQL and some Perl modules. They should be already up and running before attempting a COMAS install. This instructions were tested with the following versions of software. The third column is the debian package name for each. Apache 1.3.29 apache PostgreSQL 7.3.4 postgresql Mod_perl 1.29.0.1 libapache-mod-perl In addition, the following perl modules are required Apache::Comas requires Apache::Request 1.1 libapache-request-perl Apache::Cookie 1.1 libapache-request-perl Apache::Session 1.54 libapache-session-perl Config::Simple 4.55 libconfig-simple-perl Comas::HTML requires Data::FormValidator 3.50 libdata-formvalidator-perl HTML::FromText 1.005 libhtml-fromtext-perl PDF::API2 0.3r77 libpdf-api2-perl Comas backend requires Date::Calc 5.3 libdate-calc-perl Date::Parse 1.1600 libtimedate-perl DBI 1.41 libdbi-perl DBD::Pg 1.32 libdbd-pg-perl The COMAS modules can be placed in a directory perl searches for modules, such as /usr/local/lib/site_perl in Debian. In that case copy the contents of the perl subcirectory in the COMAS source distribution. Alternatively, you can place the modules anywhere you like, and add their location to perl's @INC. To do that, create a file /etc/apache/startup.pl with at least the following content -- /etc/apache/startup.pl -- # Path to COMAS modules use lib qw(/path/to/comas/perl); #Return True 1; -- END -- The file needs to return 'true' upon import. Then add a PerlRequire /etc/apache/startup.pl to your httpd.conf before any other use of mod_perl. We create the file /etc/apache/conf.d/comas_httpd.conf, which will be read by the apache httpd.conf. Its contetns could be placed in the main apache config file, but we split it for modularity. -- /etc/apache/conf.d/comas_httpd.conf -- SetHandler perl-script PerlHandler Apache::Comas PerlSetVar comas_config_file /path/to/your/comas.conf PerlSetVar comas_instance instance_name -- END -- and copy examples/conf/comas.conf from the COMAS source distribution to your chosen path. Change the section name at the begining to whatever you put as comas_instance, and adjust the database paswords to your liking. Now, we need to create the database. Connect to postgres as a superuser. Create two database users named 'comas' and 'comas_adm'. They don't need to create databases or users. Set a password for them. CREATE USER comas WITH NOCREATEDB NOCREATEUSER PASSWORD 'password1'; CREATE USER comas_adm WITH NOCREATEDB NOCREATEUSER PASSWORD 'password2'; The comas_adm user will have power to change the database arbitrarily. The other user will be more restricted. You need to use these names, as they are wired into the schema.sql and function.sql scripts. Create a database. For simplicity we name it comas. Set it to be owned by comas_adm. Set a proper character encoding. In our case 'latin1'. CREATE DATABASE comas WITH OWNER comas_adm ENCODING 'latin1'; From a terminal run the createlang script to create the plpgsql language in this database. Alternatively create it on template1 *before* creating the comas database. Give proper access to this users in pg_hba.conf. Don't use trust or ident authentication. Trust authentication is too weak. Ident doesn't work, because comas will always connect as the user apache runs as. Reload postgres' configuration (/etc/init.d/postgresql reload or send a HUP to the postmaster process) Connect to the comas database as the comas_adm user. Execute the schema.sql and functions.sql scripts in the sql subdir. Insert appropiate starting data. Use sample_data.sql as a guide. At a minimum insert values into the config table as described by that file. Insert also a row with name 'prop_files_path' and value a path in your server where to store the material sent by the authors of the proposals. This directory should have write permissions for the user under which the Web server runs (typically www-data, www, apache or something like that). Beware the rest of the data in the file, some rows are not in sync with the database. The room table, for example. ***FIXME: This last paragraph means we have to fix it ;-) Reload apache's config. Any change to the comas.conf file requires an apache config reload. Point your browser to http://your.server.address/comas and enjoy! $Id: Install.txt,v 1.6 2004/06/01 00:12:59 gwolf Exp $