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.
7 This guide assumes you are working on a Debian lenny system. If that is not the
8 case, you might have to adjust some of the steps.
10 1) Install git (package git-core). You will get a much more pleasant user
11 experience if you use a version from backports.debian.org or a self-compiled
12 one instead of lenny's version.
13 2) Download the code from git://git.debian.org/git/webwml/packages.git
14 (Something like `git clone git://git.debian.org/git/webwml/packages.git')
15 3) Install the needed dependencies. A list can be found in debian/control.
16 4) Install apache2 (apache2-mpm-worker), mod_perl (libapache2-mod-perl2) and
17 Apache2::Reload (libapache2-reload-perl)
18 5) Adjust the configuration to your needs. You should at least edit the
19 following files before starting to test (don't touch %TOPDIR% and %SITE%, as
20 you will specify it later):
22 (especially : admin_email, and localdir and/or ftproot if you have local
24 - ./templates/config.tmpl
25 (especially : packages_homepage)
26 - ./templates/config/*
27 (especially if you have your own repositories)
28 - ./conf/apache.conf.sed.in
29 6) run `./bin/setup-site <topdir> <site>'
30 (e.g. `./bin/setup-site /srv/packages.debian.org packages.debian.org')
31 7) create a cache directory for the compiled templates, it needs to be writable
32 by apache (i.e. on default lenny by www-data). Default location is
34 chown www-data <topdir>/cache
35 chmod 2770 <topdir>/cache
36 8) Include ./conf/apache.conf in apache's configuration, e.g. by symlinking it
37 from /etc/apache2/sites-available/ and then using a2ensite
38 9) Enable at least the following apache modules: `a2enmod expires rewrite'
40 (this takes a while, especially the first time, as it downloads a lot of
41 data, [at the time of this writing approx. 900 MB], creates databases,
42 pre-builds heavy pages, etc.)
43 11) Set up ./bin/daily to be run regulary. In ./conf/crontab you can find an
44 example crontab to do this. Actually preferable is to trigger the script by
45 archive updates, but you will know best if and how to implement that in your