-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.
-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
- dbi_* parameters in all2xml.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).
- Then, create database:
+ If you use PostgreSQL, you have to first 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.
+ 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
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
+ GDBM_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
+ 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
+ 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).