bug fix when transfering fields with multiple values (e.g. checkboxes) to
[webpac] / INSTALL
diff --git a/INSTALL b/INSTALL
index ee16460..5bbdaa5 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
-beta-beta-beta INSTALL INSTRUCTIONS
+INSTALL INSTRUCTIONS
 
 Feel free to contact me via e-mail to dpavlin@rot13.org if those instructions
 don't work for you.
@@ -25,6 +25,20 @@ don't work for you.
    change data for index often, you might want to drop and re-create database
    to erase tables for indexes which are removed.
 
+   SQLite can be quite faster than PostgreSQL (for reference see SQLite
+   site: http://www.hwaci.com/sw/sqlite/speed.html). Since WebPAC doesn't
+   use advanced database facilities of PostgreSQL you would probably be
+   better off with SQLite if you don't have PostgreSQL already installed.
+
+   If you are using SQLite, there is no need to specify dbi_user or dbi_pass.
+   So, just leave them like this:
+
+   dbi_user=""
+   dbi_passwd=""
+
+   If you specify dbi_user and than try to index using different user,
+   you won't be able to write into database.
+
 2. Use CPAN shell to install modules used:
 
    $ sudo cpan
@@ -36,20 +50,19 @@ don't work for you.
                                to get this one from
                                http://savannah.nongnu.org/projects/unac/
        Config::IniFiles
-       DBD::Pg                 or some other DBD driver, you can also
-                               use the one which came with distribution
-                               (e.g. libdbd-pg-perl on Debian)
+       DBD::Pg                 or some other DBD driver like DBD::SQLite
        CGI::Application
-       HTML::Pager
        HTML::Template
        HTML::FillInForm
-       SWISH
-       SWISH::Fork             and of course, swish-e executable
-                               (e.g. swish-e package on Debian)
+       SWISH::API
        XML::Simple
+       Text::Iconv
+       TDB_File
+       HTML::Entities          (part of HTML::Parser)
 
    CPAN shell will also download some more modules to satisfy dependencies.
 
+
    If you plan to use M$ Excel files for import (type=excel), you will need:
 
        Spreadsheet::ParseExcel
@@ -58,26 +71,84 @@ don't work for you.
 
        MARC
 
+
+2.1 Installation on Debian GNU/Linux
+
+   You will need following packages to get started:
+
+       perl
+       swish-e
+
+   and all additional packages which are dependencies.
+
+   You also don't have to install all CPAN modules manually. Just use
+   following Debian packages:
+
+       libtext-unaccent-perl
+       libconfig-inifiles-perl
+       libdbd-pg-perl          or some other DBD driver
+       libdbd-sqlite-perl      like DBD::SQLite
+       libhtml-template-perl
+       libxml-simple-perl
+       libtext-iconv-perl
+       tdb-dev                 (for TDB_File module later)
+       libhtml-parser-perl
+
+   and install following packages by hand from CPAN
+   because they are not part of Debian distribution:
+
+       CGI::Application
+       HTML::FillInForm
+       SWISH::API
+
+   and optionally some of those modules:
+
+       Spreadsheet::ParseExcel
+       MARC
+
+   For compilation of OpenIsis in next step, you will also need following
+   packages:
+
+       make
+       gcc
+       libc-dev
+
 3. You will need OpenIsis if you are using ISIS as an import format.
-   Currently, WebPac uses OpenIsis 0.9.0 which *HAVE TO BE PATCHED*
+   Currently, WebPAC uses OpenIsis 0.9.0 which *HAVE TO BE PATCHED*
    with special patch so that perl module OpenIsis.pm have close call
    (because there is hard-limit of 32 ISIS files in OpenIsis.pm, and that
    is too low for our use).
 
-   Get OpenIsis from:
+   You can do that yourself, or if you did checkout of our subversion repository
+   you will already have latest OpenIsis in webpac/openisis/ directory.
+
+   If you want to do it yourself, first get OpenIsis from:
        http://openisis.org/Doc/GetIt
 
-   Get patch for close from:
+   Then get patch for close from:
        http://www.rot13.org/~dpavlin/projects/openisis-0.9.0-perl_close.diff
 
-   Unpack OpenIsis archive and apply patch -p0 to source tree. Type make, and
-   than:
+   Unpack OpenIsis archive and apply patch -p0 to source tree.
+
+   Eater way, now you got OpenIsis 0.9.0 with close support for perl. So,
+   first compile C parts:
 
+       make
+
+   And then compile perl module and install it:
+
+       make perl
        cd perl
-       perl Makefile.PL
-       make
        sudo make install
 
-4. edit global.conf and all2xml.conf to suit your needs. Comments inside
+   Since you need development tools on target machine to compile OpenIsis,
+   you might want to compile it on another machine and just copy perl module.
+
+4. Edit global.conf and all2xml.conf to suit your needs. Comments inside
    those files should help get you started.
 
+5. All perl code will use locale to do sorting. That also include indexes
+   which, while being RDBMS-based, also use perl sorting (because each
+   entry has ordinal number created by perl). So, be sure that LC_COLLATE
+   environment variable is configured for your locale (which also has to
+   be enabled, check dpkg-reconfigure locales if you are using Debian).