fix for progress bar (don't fake slowdown)
[webpac] / INSTALL
diff --git a/INSTALL b/INSTALL
index 874bb99..7da6934 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,23 +1,44 @@
-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.
 
 
 Feel free to contact me via e-mail to dpavlin@rot13.org if those instructions
 don't work for you.
 
-1. You will need PostgreSQL (for now)
+1. You will need RDBMS (relational database management system) for index
+   files. PostgreSQL and SQLite are tested and supported.
 
    Using any other database is quite easy, and involves editing of
 
    Using any other database is quite easy, and involves editing of
-   dbi_* parameters in isis2xml.conf [global] section (which you want
+   dbi_* parameters in global.conf [global] section (which you want
    to do anyway to specify user and password to connect to database).
 
    to do anyway to specify user and password to connect to database).
 
-   Then, create database:
+   If you use PostgreSQL, you have to first create database:
 
    $ createdb webpac
    CREATE DATABASE
 
 
    $ createdb webpac
    CREATE DATABASE
 
+   If using SQLite, just specify file which SQLite will use (in global.conf)
+   like this:
+
+   dbi_dbd=SQLite
+   dbi_dsn=dbname=/data/webpac/index.sqlite
+
    Tables for index(es) will be created automatically on first run. If you
    change data for index often, you might want to drop and re-create database
    to erase tables for indexes which are removed.
 
    Tables for index(es) will be created automatically on first run. If 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
 2. Use CPAN shell to install modules used:
 
    $ sudo cpan
@@ -29,20 +50,77 @@ don't work for you.
                                to get this one from
                                http://savannah.nongnu.org/projects/unac/
        Config::IniFiles
                                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
        CGI::Application
-       HTML::Pager
        HTML::Template
        HTML::FillInForm
        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.
 
 
    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
 
    If you plan to use M$ Excel files for import (type=excel), you will need:
 
        Spreadsheet::ParseExcel
 
+   If you plan to use import from MARC files you will also need
+
+       MARC::Record
+
+
+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::Record
+
+3. You will need also IsisDB module if you are using ISIS as an import format.
+   Currenlty, this module is available only from development site
+
+       http://svn.rot13.org/
+
+   but, it should be available also through CPAN (meaning that it's stable and
+   tested). So, just try to install IsisDB using cpan first.
+
+   WebPAC doesn't use OpenIsis anymore.
+
+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).