README ====== This README provides an overview over the source code. For installation instructions see INSTALL. Request ------- What code gets executed for a request and in which order? Perl modules referenced can be found under lib/ HTTP request | | Apache rewrites -- serves static files (conf/apache.conf.sed.in) (generated by cron script, | or installed from static) | CGI/mod_perl wrapper (cgi-bin/dispatcher.pl) | | Request parsing (Packages::Dispatcher) | | Execute Action (Packages::Do*::do_*, uses data from files/) | | generate Output (Packages::Template, uses templates under templates//) Cron ---- ./bin/daily executes scripts from cron.d/ with run-parts: (these are mostly just wrappers for scripts from bin/) 010git -- pull changes from git 050checkinst -- check if all needed packages are installed 100syncarchive -- retrieve data from main Debian archive 100syncarchive_amd64 -- retrieve data from sarge amd64 archive 100syncarchive_backports -- retrieve data from backports.org 100syncarchive_debports -- retrieve data from debian-ports.org (kfreebsd-*, armel) 100syncarchive_installer -- retrieve d-i data 100syncarchive_m68k -- retrieve data for etch-m68k 100syncarchive_maintainers -- retrieve maintainer index 100syncarchive_volatile -- retrieve data from volatile.d.o 110debtags -- retrieve debtags vocabular 120synctrans -- retrieve DDTP translations 200process_archive -- convert all retrieved data to databases (see BACKEND) 300maintainerdb -- create data for @packages.d.o aliases 400changelogs_map -- create changelogs map (for changelog: shortcut) 500update_mo -- update .pot and .po files and generate .gmo 600index_pages -- create static index pages /, /, and allpackages 600prepare_newpkg -- prepare data for newpkg sites 700install_static -- install data from static/ to www/ After that ./bin/daily runs ./bin/extract_changelogs to update the changelogs in www/changelogs. logs can be found in files/logs/{cron,changelogs,git}.log