]> git.deb.at Git - deb/packages.git/blob - INSTALL
Packages::Dispatcher: Refine the Last-Modified logic
[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 debian/control.
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, use the backport on backports.org, or install the 0.9.9-1 deb
19    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 (don't touch %TOPDIR% and %SITE%, as you will 
23    specify it later):
24    - ./config.sh.sed.in
25      (especially : admin_email, and localdir and/or ftproot if you have local caches)
26    - ./templates/config.tmpl
27      (especially : packages_homepage)
28    - ./templates/config/*
29      (especially if you have your own repositories)
30    - ./conf/apache.conf.sed.in
31 6) run `./bin/setup-site <topdir> <site>'
32    (e.g. `./bin/setup-site /org/packages.debian.org packages.debian.org')
33 7) create a cache directory for the compiled templates, it needs to be writable by
34    apache (i.e. on default etch by www-data). Default location is
35    <topdir>/cache. So
36    chown www-data <topdir>/cache
37    chmod 2770 <topdir>/cache
38 7) Include ./conf/apache.conf in apache's configuration, e.g. by symlinking it from
39    /etc/apache2/sites-available/ and then using a2ensite
40 8) Run ./bin/daily
41    (this takes a while, especially the first time, as it downloads a lot of data,
42    [at the time of this writing approx. 900 MB], creates databases, pre-builds heavy
43    pages, etc.)
44 9) Set up ./bin/daily to be run regulary. In ./conf/crontab you can find an example crontab
45    to do this. Actually preferable is to trigger the script by archive updates, but you
46    will know best if and how to implement that in your setup.