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
45 Generic and useful, but only for those with existing archives
46 -------------------------------------------------------------
48 o dak poolize - migrates packages from legacy locations to the pool
49 o dak init-archive - initializes a projectb database from an exisiting archive
51 Generic but not overly useful (in normal use)
52 ---------------------------------------------
54 o dak dot-dak-decode - dumps info in .dak files
55 o dak import-users-from-passwd - sync PostgreSQL users with system users
56 o dak cruft-report - check for obsolete or duplicated packages
57 o dak init-dirs - directory creation in the initial setup of an archive
58 o dak check-archive - various sanity checks of the database and archive
59 o dak control-overrides - manpiulates/list override entries
60 o dak control-suite - removes/adds/lists package(s) from/to/for a suite
61 o dak stats - produces various statistics
62 o dak find-null-maintainers - checks for users with no packages in the archive
67 To generate less-used indices files:
69 o dak make-maintainers - generates Maintainers file used by, e.g. debbugs
70 o dak make-overrides - generates override.<foo> files
72 Mostly Debian(.org) specific
73 ----------------------------
75 o dak security-install - wrapper for Debian security team
76 o dak clean-proposed-updates - removes obsolete .changes files from proposed-updates
77 o dak check-proposed-updates - basic dependency checking for proposed-updates
78 o dak reject-proposed-updates - manually reject packages from proposed-updates
79 o dak import-ldap-fingerprints - syncs fingerprint and uid information with a debian.org LDAP DB
81 Very Incomplete or otherwise not generally useful
82 -------------------------------------------------
84 o dak init-db - currently only initializes a DB from a dak.conf config file
85 o dak compare-suites - looks for version descrepancies that shouldn't exist in many
87 o dak check-overrides - override cruft checker that doesn't work well with New Incoming
89 Scripts invoked by other scripts
90 --------------------------------
92 o dak examine-package - invoked by 'dak process-new' to "check" NEW packages
93 o dak symlink-dists - invoked by 'dak poolize' to determine packages still in legacy locations
98 [Very incomplete - FIXME]
100 o Write your own dak.conf and apt.conf files. dak looks for those
101 config files in /etc/dak/. /etc/dak/dak.conf can define
102 alternative configuration files with Config::host::DakConfig and
103 Config::host::AptConfig (where "host" is the fully qualified domain
104 name of your machine).
105 o Create a PostgreSQL database on the host given in dak.conf's DB::Host
106 with the name specified in DB::Name.
107 o Run 'dak init-dirs': this will create all directories which are specified in
108 dak.conf and apt.conf.
109 o If you have an existing archive:
110 * Run 'dak init-archive'
112 * Create the table structure. init_pool.sql contains all SQL statements
113 which are needed for this. After changing all occurences of "projectb"
114 to the name of your database (as defined in DB::Name) you can run:
115 psql <DB::Name> < init_pool.sql
116 * Create the following groups in postgres: ftpmaster ftpteam ftptrainee
117 * Run 'dak update-db' to upgrade the database schema.
118 * Run 'dak init-db': it will populate your database with the values from
119 dak.conf and apt.conf.
120 * Run 'psql <DB::Name> < add_constraints.sql'.
121 o Copy all templates from the "templates" directory to to the directory
122 specified in Dir::Templates, and adapt them to your distribution.