libdpkg: Fix varbuf memory leak in pkg_source_version()
[dpkg.git] / man / deb-prerm.pod
blob135acb3f266c3f20185b0a3cdcd7a4e2dae9a0eb
1 # dpkg manual page - deb-prerm(5)
3 # Copyright © 2016 Guillem Jover <guillem@debian.org>
5 # This is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
10 # This is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
18 =encoding utf8
20 =head1 NAME
22 deb-prerm - package pre-removal maintainer script
24 =head1 SYNOPSIS
26 B<DEBIAN/prerm>
28 =head1 DESCRIPTION
30 A package can perform several pre-removal actions via maintainer
31 scripts, by including an executable I<prerm> file in its control
32 archive (i.e. I<DEBIAN/prerm> during package creation).
34 The script can be called in the following ways:
36 =over
38 =item I<prerm> B<remove>
40 Before the package is removed.
42 =item I<old-prerm> B<upgrade> I<new-version>
44 Before an upgrade.
46 =item I<new-prerm> B<failed-upgrade> I<old-version> I<new-version>
48 If the above B<upgrade> fails.
50 The I<new-version> is passed only since dpkg 1.18.5.
52 =item I<prerm> B<deconfigure> B<in-favour> I<new-package> I<new-version>
54 =item S<    >[ B<removing> I<old-package> I<old-version> ]
56 Before package is deconfigured while dependency is replaced due to conflict.
58 =item I<prerm> B<remove> B<in-favour> I<new-package> I<new-version>
60 Before the package is replaced due to conflict.
62 =back
64 =head1 SEE ALSO
66 B<dpkg>(1).