1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
welcome to the README file.
--------------------
setup instructions
--------------------
required software:
(for now) source-highlight
(for now) patchutils
python
python-cheetah
(eventually) python-pygments
python-debian
(optional) reprepro
something providing an httpd
first, you need a partial source archive, with the .dsc, diff.gz, Release,
and Sources.gz files available. there's a sample config in the subdir
./reprepro, if you don't have one handy. Using a devious little python
filter, it will fetch the dsc and diff.gz files from etch/lenny/sid without
fetching the rest of the debs/tarballs, which should keep the archive size
down a bit (though it should also work just fine on a normal archive too).
so, you have your source archive available, and installed somewhere.
next set up a web server, and configure it to serve up the "application" from
wherever, using standard Alias or VirtualHost/DocumentRoot stuff.
next, edit the main python script, gen-patch-info.py. there's a Conf
class which contains all the configuration stuff that you will need to
modify to get the script to run and generate pages as it should.
--------------------
overall design/scheme
--------------------
currently the plan is to generate static information based on the info
available in a standard source archive (thus hopefully eliminating the need for
some kind of complicated tracking infrastructure). The in-between stage
may involve a lightweight database (i.e. sqlite) for quick/efficient handling
of source package metadata, but in the current scheme it is all handled
on the fs directly or within classes. the database shouldn't be necessary
in the "final output", which is currently static. of course the right is
reserved for later additions that include dynamic content and/or
interaction (posting comments to a patch, fetching other data from external
sources)
the webpages are generated from cheetah based templates in ./templates. if the content is later dynamically generated the templates may still be useful.
|