1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189
|
.TH DEBDELTA-UPGRADE "1" "aug 2009" "debdelta-upgrade" "User Commands"
.SH NAME
debdelta-upgrade \- Downloads all deltas that may be used to 'apt-get
upgrade', and apply them.
.SH SYNOPSIS
.B debdelta-upgrade
[\fIOPTION\fR]... [\fIPACKAGE\fR] ...
.SH DESCRIPTION
This program is designed to download changes (deltas) that may be used to
.B 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
.BR debdelta (1)
for more details on the delta files.
.SH OPTIONS
.TP
\fB\-\-dir \fIDIR
directory where to save results.
(default: /var/cache/apt/archives for root,
/tmp/archive for non-root users)
.TP
\fB\-\-format \fIFORMAT
format of recreated debs. FORMAT=deb is the usual,
FORMAT=unzipped means that the data.tar part is not compressed,
(and this may save some time)
.TP
\fB\-\-deb\-policy \fIPOLICY
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 in the client
tiny = the new package is small (the server ignores such packages)
fail = the server failed to create the delta
queued = the delta is queued to be made in the server
unavailable = all other cases
after = continue downloading debs after patching has ended
default is s,b,e,t,f
.TP
\fB\-v
verbose (can be added multiple times).
.TP
\fB\-d
print full traceback on Python errors; save useful info in temporary files
in case that a delta fails.
.TP
\fB\-k
keep temporary files (use for debugging).
.TP
\fB \-A \--accept-unsigned
accept unsigned deltas.
.TP
\fB \-\-gpg-home
specify a different home for GnuPG,
default for root is
.I /etc/debdelta/gnupg
while for other users is unset. See
.I --homedir
in
.BR gpg(1)
for details.
.TP
\fB \-\-forensic \fIMETHOD
if a delta fails, report logs so that the problem may be addressed.
Method may be
do
just prepare logs and say where they are (default)
mutt
send logs by email using mutt
icedove
send logs by email using icedove (as root!)
http
send by http (currently not working)
.TP
\fB\-\-timeout \fISECONDS
adjust timeout for connections, default is 15 seconds
.SH EXAMPLES
When invoked as root,
.I 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
.I cupt
uses deltas as well when upgrading.
.SH SECURITY
A Debian package that is recreated using
.I debdelta-upgrade
is byte-by-byte
identical to the original one; when "apt-get upgrade"
is subsequently invoked, the cryptographic
archive authentication support (see
.I 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
.BR dpkg-sig (1)
), and
.I debdelta-upgrade
will refuse to apply corrupted or unsigned deltas (but, see option
.B -A
).
.SH DOWNLOAD AND PROXIES
.I 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
.I debdelta-too-big
.I debdelta-queued
.I debdelta-failed
), and then it examines the
.I \-\-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,
.I 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
.I http_proxy
are set in the environment, then instead
.I 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
.I debdelta-upgrade
in case of download error may be wrong; and most of the opetions for
.I \-\-deb\-policy
are currently disabled (until the author understands 'urllib2'
better).
.SH EXIT STATUS
See
.BR debdelta (1)
.SH "REPORTING BUGS"
Report bugs to <mennucc1@debian.org>.
.SH "SIZES"
In the program printout kB = 1024 bytes and MB = 1024^2 bytes .
.SH AUTHORS
Debdelta was written and is copyright \(co 2006-09 Andrea Mennucci.
.br
This man page was written by Jegou Pierre-yves <pierreyves.jeg@voila.fr>.
.SH COPYING
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.
.SH "SEE ALSO"
.BR debdelta (1),
.BR apt-get (8),
.BR /usr/share/doc/debdelta/README.upgrade ,
.BR /usr/share/doc/debdelta/README .
|