Packages::Search: ignore empty keywords after stemming
[deb/packages.git] / INSTALL
1 INSTALL
2 =======
3
4 This should give you an idea about the basic steps. It is probably very rough
5 around the edges, feel free to ask for clarifications so we can improve it.
6
7 This guide assumes you are working on a Debian etch system. If that is not the
8 case, you might have to adjust some of the steps.
9
10 1) Install git (package git-core). You will get a much more pleasant user
11    experience if you use a version from backports.org or a self-compiled one
12    instead of etch's version.
13 2) Download the code from git://source.djpig.de/git/packages.git
14    (Something like `git clone git://source.djpig.de/git/packages.git')
15 3) Install the needed dependencies. A list can be found in cron.d/050checkinst.
16    One dependency can't be fulfilled directly from etch and is therefor not listed
17    there: the Search::Xapian perl module. You can either compile that yourself against
18    libxapian from etch, backport all of xapian and libsearch-xapian-perl from
19    lenny, or install the 0.9.9-1 deb from snapshots.debian.net.
20 4) Install apache2 (apache2-mpm-worker) and mod_perl (libapache2-mod-perl2)
21 5) Adjust the configuration to your needs. You should at least edit the following
22    files before starting to test:
23    - ./config.sh.sed.in
24    - ./templates/config.tmpl
25    - ./templates/config/*
26    - ./conf/apache.conf.sed.in
27 6) run `./bin/setup-site <topdir> <site>'
28    (e.g. `./bin/setup-site /org/packages.debian.org packages.debian.org')
29 7) create a cache directory for the compiled templates, it needs to be writable by
30    apache (i.e. on default etch by www-data). Default location is
31    <topdir>/cache
32 7) Include ./conf/apache.conf in apache's configuration, e.g. by symlinking it from
33    /etc/apache2/sites-available/ and then using a2ensite
34 8) Run ./bin/daily
35 9) Setup ./bin/daily to be run regulary. In ./conf/crontab you can find an example crontab
36    to do this. Actually preferable is to trigger the script by archive updates, but you
37    will know best if and how to implement that in your setup.