Provided by: debdelta_0.65_amd64 bug

NAME

       debdeltas - compute deltas between Debian packages

SYNOPSIS

       debdeltas [OPTION]... ARGS ...

DESCRIPTION

       debdeltas computes deltas between the old and new versions of Debian packages.

       The explanation of what a delta is is in debdelta(1).

COMMAND ARGUMENTS

       In  all  of  the  following,  ARGS  can  be,  a Debian binary file (usually, a file ending in .deb), or a
       directory containing such files, or a  Packages file (that is, an index  file  such  as  those  found  in
       Debian mirrors - even the zipped ones - see apt-ftparchive(1) ).  We will call cmdline all such args that
       are not related to an option.

       As a first step, debdeltas builds an internal list of Debian packages.  To this end, it parses all   ARGS
       of  the options --alt  , --old , and those ARGS given as non-option arguments (the aforementioned cmdline
       args). If the argument is a Debian package, debdeltas  adds  it  to  the  list;  if  the  argument  is  a
       directory,  debdeltas  scans  it for Debian packages to be added to the list; if the argument is Packages
       files, debdeltas parses it and adds all Debian packages to the list.

       Then debdeltas groups all found Debian packages by name and architecture.

       For each group, the newest cmdline version is isolated, and then  deltas  are  computed  from  all  --old
       versions to that version.

       These    deltas   are   stored   in   many   delta   files   with   appropriate   names   of   the   form
       name_oldversion_newversion_architecture.debdelta ; the location of the delta files is  specified  by  the
       "--dir" option.

       Note that the location of files in a Packages index is specified relative to the base of the mirror, e.g.
       Filename: pool/main/x/xxx/xxx_3_i386.deb For this reason, any Packages argument  must  presented  with  a
       long path (that contains at least the dists directory).

       Note also that the same directory or index can be provided many times, as --old, as --alt, and as cmdline
       argument.

       Note also that debdeltas will skip all packages that are smaller than 10KB.

MAIN OPTIONS

       --dir DIR
              force saving of deltas in this DIR (otherwise they go in the dir of the newer deb_file).

       --alt ARGS
              this is parsed as the non-option command line, but the found packages are never considered  for  a
              delta.   They  are  considered though when --clean-deltas is used, to decide if to delete a delta;
              and are useful to find debs that are deleted from indexes and moved elsewhere. Multiple --alt  can
              be specified.

       --old ARGS
              this  is parsed as the non-option command line, and the found packages are considered as the older
              versions.  Multiple --old can be specified.  Moreover, when scanning a Packages index, it  is  not
              an  error  if files do not exist, as long as they have been moved in a --alt directory. Note that,
              if no --old is specified, then no deltas will be generated.

       --forensicdir DIR
              write  hashes  files;  these  are  to  be  compared  with  those  produced   by   debdelta-upgrade
              --forensic=...  when a delta fails

The double slash

       If  a  directory path is provided as argument to --dir, and it ends in // , then this triggers a specific
       behaviour related to files found in Packages indexes (as presented in the commandline). If a package in a
       index  is  stored in pool/main/x/xxx/xxx_3_i386.deb , and --dir is /tmp/foobar// , then the delta will be
       saved in /tmp/foobar/pool/main/x/xxx/xxx_2_3_i386.debdelta.  The same is true for --alt (and is useful to
       find old versions of a package).

OTHER OPTIONS

       --signing-key  KEY
              key used to sign the deltas (using GnuPG)

       -n N   how many deltas to produce at maximum for each unique package/arch (default unlimited)

       --clean-deltas
              delete deltas that upgrade to packages versions that are not found in the cmdline ARGS, and are at
              least two days old (according to mtime).

       --no-md5
              do not include MD5 info in debdelta.

       --needsold
              create a patch that can only be used if the old .deb is available.

       --delta-algo ALGO
              use a specific backend for computing binary diffs; possible values are: xdelta xdelta-bzip xdelta3
              bsdiff

       -M Mb  maximum memory  to use (for 'bsdiff' or 'xdelta').

       --test check that the patch does apply.

       -v     verbose (can be added multiple times).

       -d     print traceback on errors; save useful info in temporary files in case that a backend crashes.

              (If  '-d'  is added multiple times, it also adds to the patches other extra debugging checks: only
              for advanced bug tracking).

       -k     keep temporary files (use for debugging).

       --gpg-home
              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.

       --disable-feature FEATURE
              disable an internal feature. See the documentation in README.features.

       --no-act
              Just list the deltas that would be created.

SECURITY

       See debdelta(1)

EXIT STATUS

       See debdelta(1)

EXAMPLES

       debdeltas  --dir  /tmp/ --old ~/mydebs ~/mydebs will generate all deltas to upgrade from the old versions
       in ~/mydebs to the newest version in ~/mydebs , and store the deltas in /tmp/

       debdeltas      --dir      /tmp//      --old       /mirror/debian/dists/lenny/main/binary-i386/Packages.gz
       /mirror/debian/dists/squeeze/main/binary-i386/Packages.gz  will  generate all deltas to upgrade main/i386
       from lenny to squeeze, and store the deltas in a pool structure under /tmp/

       See     also     the      example      scripts      /usr/share/debdelta/debmirror-delta-security      and
       /usr/share/debdelta/debmirror-deltas

REPORTING BUGS

       Report bugs to <mennucc1@debian.org>.

AUTHORS

       Debdelta was written and is copyright © 2006-09 Andrea Mennucci.
       This man page was written by Jegou Pierre-yves  <pierreyves.jeg@voila.fr>.

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.

SEE ALSO

       debpatch(1), debdelta(1), /usr/share/doc/debdelta/README.