| DEBDELTA-UPGRADE(1) | User Commands | DEBDELTA-UPGRADE(1) |
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.
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 cryptographically 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 ).
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 existence of flag timestamps in the remote server (such as debdelta-too-big debdelta-queued debdelta-failed ), 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 patching queue.
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 most of the opetions for --deb-policy are currently disabled (until the author understands 'urllib2' better).
See debdelta(1)
Report bugs to <mennucc1@debian.org>.
In the program printout kB = 1024 bytes and MB = 1024^2 bytes .
Debdelta was written and is copyright © 2006-09 Andrea
Mennucci.
This man page was written by Jegou Pierre-yves
<pierreyves.jeg@voila.fr>.
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, /usr/share/doc/debdelta/README.
| aug 2009 | debdelta-upgrade |