4 o Please be careful: dak sends out lots of emails and if not
5 configured properly will happily send them to lots of people who
6 probably didn't want those emails.
8 o Don't use the debian dak.conf, apt.conf, cron.* etc. as starting
9 points for your own configuration files, they're highly Debian
10 specific. Start from scratch and refer to the security.debian.org
11 config files (-security) as they're a better example for a private
14 What do all these scripts do?
15 =============================
17 Generic and generally useful
18 ----------------------------
22 * dak process-unchecked - processes queue/unchecked
23 * dak process-accepted - move files from queue/accepted into the pool (and database)
24 * dak process-new - allows ftp administrator to processes queue/new and queue/byhand
26 o To generate indices files:
28 * dak dominate - removes obsolete packages from suites
29 * dak generate-filelist - generates file lists for apt-ftparchive
30 * dak generate-releases - generates Release
34 * dak clean-suites - to remove obsolete files from the pool
35 * dak clean-queues - to remove obsolete/stray files from the queue
36 * dak rm - to remove package(s) from suite(s)
37 * dak override - to change individual override entries
39 o Information display:
41 * dak ls - shows information about package(s)
42 * dak queue-report - shows information about package(s) in queue/
43 * dak override - can show you individual override entries
44 * dak graph - creates some pretty graphs of queue sizes over time
46 Generic and useful, but only for those with existing archives
47 -------------------------------------------------------------
49 o dak poolize - migrates packages from legacy locations to the pool
50 o dak init-archive - initializes a projectb database from an exisiting archive
52 Generic but not overly useful (in normal use)
53 ---------------------------------------------
55 o dak dot-dak-decode - dumps info in .dak files
56 o dak import-users-from-passwd - sync PostgreSQL users with system users
57 o dak cruft-report - check for obsolete or duplicated packages
58 o dak init-dirs - directory creation in the initial setup of an archive
59 o dak check-archive - various sanity checks of the database and archive
60 o dak control-overrides - manpiulates/list override entries
61 o dak control-suite - removes/adds/lists package(s) from/to/for a suite
62 o dak stats - produces various statistics
63 o dak find-null-maintainers - checks for users with no packages in the archive
68 To generate less-used indices files:
70 o dak make-maintainers - generates Maintainers file used by, e.g. debbugs
71 o dak make-overrides - generates override.<foo> files
73 Mostly Debian(.org) specific
74 ----------------------------
76 o dak security-install - wrapper for Debian security team
77 o dak import-ldap-fingerprints - syncs fingerprint and uid information with a debian.org LDAP DB
79 Very Incomplete or otherwise not generally useful
80 -------------------------------------------------
82 o dak init-db - currently only initializes a DB from a dak.conf config file
83 o dak compare-suites - looks for version descrepancies that shouldn't exist in many
85 o dak check-overrides - override cruft checker that doesn't work well with New Incoming
87 Scripts invoked by other scripts
88 --------------------------------
90 o dak examine-package - invoked by 'dak process-new' to "check" NEW packages
91 o dak symlink-dists - invoked by 'dak poolize' to determine packages still in legacy locations
96 [Very incomplete - FIXME]
98 o Write your own dak.conf and apt.conf files. dak looks for those
99 config files in /etc/dak/. /etc/dak/dak.conf can define
100 alternative configuration files with Config::host::DakConfig and
101 Config::host::AptConfig (where "host" is the fully qualified domain
102 name of your machine).
103 o Create a PostgreSQL database on the host given in dak.conf's DB::Host
104 with the name specified in DB::Name.
105 o Run 'dak init-dirs': this will create all directories which are specified in
106 dak.conf and apt.conf.
107 o If you have an existing archive:
108 * Run 'dak init-archive'
110 * Create the table structure. init_pool.sql contains all SQL statements
111 which are needed for this. After changing all occurences of "projectb"
112 to the name of your database (as defined in DB::Name) you can run:
113 psql <DB::Name> < init_pool.sql
114 * Create the following groups in postgres: ftpmaster ftpteam ftptrainee
115 * Run 'dak update-db' to upgrade the database schema.
116 * Run 'dak init-db': it will populate your database with the values from
117 dak.conf and apt.conf.
118 * Run 'psql <DB::Name> < add_constraints.sql'.
119 o Copy all templates from the "templates" directory to to the directory
120 specified in Dir::Templates, and adapt them to your distribution.