1 <!-- -*- mode: sgml; mode: fold -*- -->
2 <!doctype refentry PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
4 <!ENTITY % dakent SYSTEM "dak.ent">
13 <refentrytitle>dak_rm</>
17 <!-- Man page title -->
20 <refpurpose>Utility to remove/add packages from suites</>
27 <arg><option><replaceable>options</replaceable></></arg>
28 <arg choice="plain"><replaceable>package</replaceable></arg>
29 <arg><option><replaceable>...</replaceable></option></arg>
33 <RefSect1><Title>Description</>
35 <command>dak rm</command> is the command line tool to add and remove package sets from suites with enforced logging, optional bug closing and override updates.
39 <RefSect1><Title>Options</>
42 <VarListEntry><term><option>-a/--architecture=<replaceable>architecture</replaceable></option></>
44 <Para>Restrict the packages being considered to the architecture(s) listed.</PARA>
48 <VarListEntry><term><option>-b/--binary</option></>
50 <Para>Only look at binary packages.</PARA>
54 <VarListEntry><term><option>-c/--component=<replaceable>component</replaceable></option></>
56 <Para>Restrict the packages being considered to those found in the component(s) listed. The default is <literal>main</literal>.</PARA>
60 <VarListEntry><term><option>-C/--carbon-copy=<replaceable>[ bug number | 'package' | email address ]</replaceable></option></>
62 <Para>Carbon copy the bug closing mail to the address(es) given. If the removal was not requested by the maintainer, this option should always be used to inform the maintainer of the package's removal. 3 types of address are accepted.</PARA>
65 <para>number - assumed to be a bug number, and expanded to nnnnn@bugs.debian.org.</para>
68 <para>'<literal>package</literal>' - carbon copy package@package.debian.org for each package given as an argument.</para>
71 <para>anything containing '@' - assumed to be an email address, and carbon copied as is.</para>
77 <VarListEntry><term><option>-d/--done=<replaceable>done</replaceable></option></>
79 <Para>Close the bug(s) listed on successful completion.</PARA>
83 <VarListEntry><term><option>-m/--reason=<replaceable>reason</replaceable></option></>
85 <Para>The reason for the removal or addition of the package(s). This is a required option; if not provided an editor will be spawned so the reason can be added there.</PARA>
89 <VarListEntry><term><option>-n/--no-action</option></>
91 <Para>Don't actually do anything; just show what would be done.</PARA>
95 <VarListEntry><term><option>-p/--partial</option></>
97 <Para>Partial removal of a package, so the package is not removed from the overrides. This option is implied by <option>-a/--architecture</option>.</PARA>
101 <VarListEntry><term><option>-R/--rdep-check</option></>
103 <Para>Check the reverse dependencies (and build-dependencies) of the packages that are to be removed and warn if anything will break.</PARA>
107 <VarListEntry><term><option>-s/--suite=<replaceable>suite</replaceable></option></>
109 <Para>Only add/remove the packages from the suite(s) listed. The default is <literal>unstable</literal></PARA>
113 <VarListEntry><term><option>-S/--source-only</option></>
115 <Para>Only look at source packages.</PARA>
123 <title>How packages are chosen</title>
124 <para>There are 3 methods for selecting packages.</para>
127 <para>Source + Binaries. (default)</para>
128 <para>In this mode <command>dak rm</command> will assume each of the package(s) passed as arguments are source packages and will also remove any binary packages built from these source packages.</para>
131 <para>Binary only.</para>
132 <para>Only binary packages are searched; source packages are ignored. This mode is chosen by use of the <option>-b/--binary</option> switch.</para>
133 <para>This should <emphasis>only</emphasis> be used for orphaned binary packages (i.e. those no longer built by source packages); otherwise, in any system (e.g. Debian) which has auto-building, pointless (and uninstallable) recompiles will be triggered.</para>
136 <para>Source only.</para>
137 <para>Only source packages are searched; binary packages are ignored. This mode is chosen by use of the <option>-S/--source</option> switch.</para>
143 <title>Configuration</title>
144 <para><command>dak rm</command> uses dak's configuration file. It follows the typical ISC configuration format as seen in ISC tools like bind 8 and dhcpd. Apart from being able to alter the defaults for command line options, the following configuration items are used:</para>
147 <term>Rm::MyEmailAddress</term>
149 <para>This is used as the From: line for bug closing mails as per the -d/--done command line switch. It, obviously, must be a RFC-822 valid email address.</para>
153 <term>Rm::LogFile</term>
155 <para>This is the (absolute) file name of the logfile that dak rm unconditionally writes too. This can not be empty or an invalid file.</para>
162 <title>Examples</title>
163 <para>The first example is of a source+binaries package removal.</para>
166 $ dak rm -d 68136 -m "Requested by tbm@; confirmed with maintainer. Superseded by libgmp2" gmp1
168 Will remove the following packages from unstable:
170 gmp1 | 1.3.2-8.2 | source, alpha, hppa, arm, i386, m68k, powerpc, sparc
171 gmp1-dev | 1.3.2-8.2 | alpha, hppa, arm, i386, m68k, powerpc, sparc
174 ------------------- Reason -------------------
175 Requested by tbm@; confirmed with maintainer. Superseded by libgmp2
176 ----------------------------------------------
183 <para>The second example is of a binary-only multi-package removal.</para>
186 $ dak rm -d 82562 -m "Requested by paul@; NBS." -b libgtkextra{5,9,10}
188 Will remove the following packages from unstable:
190 libgtkextra10 | 0.99.10-2 | alpha, i386, m68k, powerpc, sparc
191 libgtkextra5 | 0.99.5-1 | alpha, i386, m68k, powerpc, sparc
192 libgtkextra9 | 0.99.9-1 | alpha, i386, m68k, powerpc, sparc
194 Will also close bugs: 82562
196 ------------------- Reason -------------------
197 Requested by paul@; NBS.
198 ----------------------------------------------
207 <RefSect1><Title>Diagnostics</>
209 <command>dak rm</command> returns zero on normal operation, non-zero on error.