File: debdelta-upgrade.1

package info (click to toggle)
debdelta 0.67
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 1,016 kB
  • sloc: python: 6,466; perl: 1,398; sh: 965; xml: 727; ansic: 215; makefile: 121; awk: 21
file content (189 lines) | stat: -rw-r--r-- 5,304 bytes parent folder | download | duplicates (3)
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 .