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
|
The delta file is a compressed tarball, containing the following files:
type
Type of file this is a delta for ("tar", "gz", "bz2", or "xz").
version
The meaning depends on the "type" value.
sha256sum
hex-encoded sha256sum hash of the original tarball used to verify the
integrity of existing tarballs. Optional; if not present, the stored
tarball will be checked out, hashed, and that hash will be used
instead.
It also contains files depending on the "type" value.
For tar files, it contains:
version
Currently either "2" (or "2.0") (xdelta based) or "3" (xdelta3 based).
manifest
List of all files in the tarball, as output by `tar t`.
Used to order files correctly when rebuilding it.
delta
xdelta between the generated tarball and the original tarball.
wrapper
Encapsulated delta file for the .gz, .bz2 or .xz wrapper for the
tarball. Optional, if not present a pristine .gz won't be generated.
For gz files, wrapper contains:
version
Either "2.0" (no delta), "3.0" (xdelta based) or "4" (xdelta3 based).
params
Parameters to pass to zgz. ("-n 9", "-M", "--rsyncable")
timestamp
Timestamp of the original input file, in seconds from epoch.
filename
Filename of the original input file.
delta
xdelta between the generated gz file and the original gz file.
(Optional; needs version >= "3.0".)
For bzip2 files the wrapper contains:
version
Currently only "2.0".
params
Typically, only the compression level is needed (4th byte of the
compressed file), and its matching parameter stored: -N.
In some cases a -bN parameter is detected and stored.
program
Program used to compress. Almost every time, it is bzip2 (or another
implementation producing bit-identical results). pbzip2 might also be
detected, but several parameters might interfere (-r, -pN).
It may also be zgz (the params will include --old-bzip2 in this
case).
For xz files, the wrapper contains:
version
Currently only "2.0".
params
Typically, only the compression level is needed. May also contain
integrity check type, block size, and/or pixz tarball mode. Also
multi-threading, which affects xz block header flags and block size.
program
Program used to compress. Almost every time, it is xz (or another
implementation producing bit-identical results). pixz may also be
used in a mode which differs from xz (e.g. due to -t or block header
padding differences).
|