debdelta-upgrade - Downloads all deltas that may be used to ’apt-get
upgrade’, and apply them.
debdelta-upgrade [OPTION]... [PACKAGE] ...
This program is designed to download changes (deltas) that may be used
to apt-get upgrade all listed packages, and apply them. If no package
is listed in the command line, then it will apply to all upgradable
packages. See debdelta(1) for more details on the delta files.
directory where to save results. (default:
/var/cache/apt/archives for root, /tmp/archive for non-root
policy to decide which debs to download, it is a comma separated
list of (abbreviations of)
source = there is no /etc/debdelta/sources.conf line
big = the delta is too big
error = the delta fails to apply
unavailable = all other cases
after = continue downloading debs after patching has ended
default is s,b,e
-v verbose (can be added multiple times).
-d print full traceback on Python errors; save useful info in
temporary files in case that a delta fails.
-k keep temporary files (use for debugging).
accept unsigned deltas.
specify a different home for GnuPG, default for root is
/etc/debdelta/gnupg while for other users is unset. See
--homedir in gpg(1) for details.
When invoked as root, apt-get update && debdelta-upgrade && apt-get
upgrade will download delta files, recreate the needed Debian packages,
and then upgrade your Debian host. When only slow Internet connection
is available, the above procedure may be significantly faster than
"apt-get update && apt-get upgrade". (Use -v to see how much faster.)
The package manager cupt uses deltas as well when upgrading.
A Debian package that is recreated using debdelta-upgrade is byte-by-
byte identical to the original one; when "apt-get upgrade" is
subsequently invoked, the cryptographic archive authentication support
(see apt-secure (8) ) will guarantee that it can be trusted to be
installed. Moreover, the delta files themselves are cryptograhically
protected using GnuPG, MD5 and SHA1 (using the same method as dpkg-
sig(1) ), and debdelta-upgrade will refuse to apply corrupted or
unsigned deltas (but, see option -A ).
DOWNLOAD AND PROXIES
debdelta-upgrade downloads deltas in two passes: in the first pass, it
downloads the first kB of each delta, to extract the delta parameters
and to examine them. If the delta does not exist, it checks if the
debdelta-too-big timestamp file exists, and then it examines the
--deb-policy to decide if to download the deb instead. In the second
pass, it downloads (the rest of) the deltas and queues them in a
For plain direct http downloads, debdelta-upgrade uses the Python
library ’httplib’ directly; in particular, it uses keep-alive features,
and this speeds up a lot the first pass.
If variables such as http_proxy are set in the environment, then
instead debdelta-upgrade will use the ’urllib2’ module: this though
slows down sensibly the first pass above (since ’urllib2’ opens a
different connection for each download); moreover ’urllib2’ seems to be
buggy in some places (for example, it transforms http response "401"
into "404" , and "302" into "200") so the output explanation printed by
debdelta-upgrade in case of download error may be wrong; and the
--deb-policy big is currently disabled (until the author understands
Report bugs to <firstname.lastname@example.org>.
Debdelta was written and is copyright © 2006-09 Andrea Mennucci.
This man page was written by Jegou Pierre-yves
This is free software. You may redistribute copies of it under the
terms of the GNU Library General Public License
<http://www.gnu.org/licenses/lgpl-2.0.html>. There is NO WARRANTY, to
the extent permitted by law.
debdelta(1), apt-get(8), /usr/share/doc/debdelta/README.upgrade,