dpkg-split
dpkg-split(t)             dpkg utilities            dpkg-split(t)



NAME
       dpkg-split - Debian package archive split/join tool

SYNOPSIS
       dpkg-split -s|--split complete-archive [prefix]
       dpkg-split -j|--join part part ...
       dpkg-split -I|--info part part ...
       dpkg-split -a|--auto -o complete-output part
       dpkg-split -l|--listq
       dpkg-split -d|--discard [package package ...]

DESCRIPTION
       dpkg-split splits Debian binary package files into smaller
       parts and reassembles them again, to support  the  storage
       of  large  package  files  on  small  media such as floppy
       disks.

       It can be operated manually using the --split, --join  and
       --info options.

       It  also  has  an automatic mode, invoked using the --auto
       option, where it maintains a queue of parts seen  but  not
       yet reassembled and reassembles a package file when it has
       seen all of its parts.  The --listq and --discard  options
       allow the management of the queue.

       All  splitting,  joining  and  queueing operations produce
       informative messages on standard output; these may  safely
       be ignored.

ACTION OPTIONS
       --split, -s
              Splits  a single Debian binary package into several
              parts.

              The parts are named prefix.NofM.deb where N is  the
              part number, starting at 1, and M is the total num-
              ber of parts (both in decimal).

              If no prefix is supplied then the  complete-archive
              filename  is  taken,  including directory, with any
              trailing .deb removed.

       --join, -j
              Joins  the  parts  of  a  package  file   together,
              reassembling  the original file as it was before it
              was split.

              The part files given as arguments must be  all  the
              parts  of  exactly  the  same original binary file.
              Each part must occur exactly once in  the  argument
              list,  though the parts to not need to be listed in
              order.

              The parts must of course all  have  been  generated
              with  the  same  part size specified at split time,
              which means that they must usually have been gener-
              ated  by the same invocation of dpkg-split --split.

              The parts' filenames are not  significant  for  the
              reassembly process.

              By  default  the output file is called package-ver-
              sion.deb.


       --info, -I
              Prints information,  in  a  human-readable  format,
              about  the part file(e) specified.  Arguments which
              are not binary package parts produce a message say-
              ing so instead (but still on standard output).

       --auto, -a
              Automatically  queue parts and reassemble a package
              if possible.

              The part specified is examined, and  compared  with
              other  parts  of  the  same package (if any) in the
              queue of packages file parts.

              If all parts of the package file of which part is a
              part  are available then the package is reassembled
              and written to complete-output  (which  should  not
              usually  already  exist,  though  this  is  not  an
              error).

              If not then the part is copied into the  queue  and
              complete-output is not created.

              If  part  is  not  a split binary package part then
              dpkg-split will exit with status 1; if  some  other
              trouble occurs then it will exit with status 2.

              The  --output  or  -o  option must be supplied when
              using --auto.  (If  this  were  not  mandatory  the
              calling  program would not know what output file to
              expect.)

       --listq, -l
              Lists the contents of the queue of packages  to  be
              reassembled.

              For  each  package  file  of which parts are in the
              queue the output gives the name of the package, the
              parts  in  the queue, and the total number of bytes
              stored in the queue.

       --discard, -d
              This discards parts from the queue of those waiting
              for the remaining parts of their packages.

              If  no  package  is  specified  then  the  queue is
              cleared completely; if any are specified then  only
              parts of the relevant package(e) are deleted.

       --help, -h
              Prints dpkg-split's usage message, giving a summary
              of its options and their uses.

       --version
              Prints dpkg-split's version number.

       --licence
              Prints  information  about  dpkg-split's  copyright
              licensing  and  lack  of  warranty.   (The American
              spelling --license is also supported.)

OTHER OPTIONS
       --depotdir directory
              Specifies an alternative directory for the queue of
              parts  awaiting  automatic reassembly.  The default
              is /var/lib/dpkg.

       --partsize|-S kbytes
              Specifies the maximum part size when splitting,  in
              kilobytes (1024 bytes).  The default is 450Kb.

       --output|-O complete-output
              Specifies the output file name for a reassembly.

              This  overrides the default for a manual reassembly
              (--join) and is mandatory for an  automatic  queue-
              or-reassemble (--auto).

       --npquiet, -Q
              When doing automatic queue-or-reassembly dpkg-split
              usually prints a message if it is given a part that
              is  not  a  binary  package part.  This option sup-
              presses this message, to  allow  programs  such  as
              dpkg  to  cope with both split and unsplit packages
              without producing spurious messages.

       --msdos
              Forces the output filenames generated by --split to
              be msdos-compatible.

              This  mangles  the  prefix  -  either  the  default
              derived from the input filename or the one supplied
              as  an argument: alphanumerics are lowercased, plus
              signs are replaced by x's and all other  characters
              are discarded.

              The  result  is then truncated as much as is neces-
              sary, and filenames of the form prefixNofM.deb  are
              generated.

EXIT STATUS
       An  exit  status  of 0 indicates that the requested split,
       merge, or other command succeeded.  --info commands  count
       as  successful  even  if  the files are not binary package
       parts.

       An exit status of 1 occurs only with --auto and  indicates
       that the part file was not a binary package part.

       An  exit  status of 2 indicates some kind of trouble, such
       as a system call failure, a file that looked like a  pack-
       age  part  file  but  was corrupted, a usage error or some
       other problem.

BUGS
       dpkg-split uses some rather  out-of-date  conventions  for
       the the filenames of Debian packages.

       Full  details  of the packages in the queue are impossible
       to get without digging into the queue directory  yourself.

       There  is no easy way to test whether a file that may be a
       binary package part is one.

       The architecture is not represented  in  the  part  files'
       header,  only  in the control information of the contained
       binary package file, and it is not present  in  the  file-
       names generated.

FILES
       /var/lib/dpkg/parts
              The default queue directory for part files awaiting
              automatic reassembly.

              The filenames used in this directory are in a  for-
              mat  internal  to dpkg-split and are unlikely to be
              useful to other programs, and in any case the file-
              name format should not be relied upon.

SEE ALSO
       deb(b), deb-control(l), dpkg-deb(b), dpkg(g)

AUTHOR
       dpkg-split  and  this manpage were written by Ian Jackson.
       They are Copyright (C) 1995-1996 by him and released under
       the GNU General Public Licence; there is NO WARRANTY.  See
       /usr/share/dpkg/copyright      and      /usr/share/common-
       licenses/GPL for details.



Debian Project            23rd June 1996            dpkg-split(t)