Provided by: dpkg-repack_1.37_all bug


       dpkg-repack - put an unpacked .deb file back together


       dpkg-repack [--root=dir] [--arch=architecture] [--generate] packagename [packagename ...]


       dpkg-repack creates a .deb file out of a Debian package that has already been installed on
       your system.

       If any changes have been made to the package while it was unpacked (ie, conffiles files in
       /etc  modified),  the new package will inherit the changes. (There are exceptions to this,
       including changes to configuration files that are not conffiles, including  those  managed
       by ucf.)

       This  utility  can  make  it  easy  to  copy  packages from one computer to another, or to
       recreate packages that are installed on your system, but no longer available elsewhere.

       Note: dpkg-repack will place the created package in the current directory.


              Take package from filesystem rooted on <dir>. This is useful if, for  example,  you
              have  another  computer  nfs  mounted  on  /mnt,  then  you  can use --root=/mnt to
              reassemble packages from that computer.

              Make the package be for a different architecture.  dpkg-repack cannot  tell  if  an
              installed  package is architecture all or is specific to the system's architecture,
              so  by  default  it  uses  dpkg  --print-architecture  to   determine   the   build
              architecture.  If you know the package is architecture all, you can use this option
              to force dpkg-repack to use the right architecture.

              Generate a temporary directory suitable for building a package  from,  but  do  not
              actually create the package. This is useful if you want to move files around in the
              package before building it. The package can be built from this temporary  directory
              by running "dpkg --build", passing it the generated directory.

              The name of the package to attempt to repack. Multiple packages can be listed.


       This  program accesses the dpkg database directly in places, querying for data that cannot
       be gotten via dpkg.

       There is a tricky situation that can occur if you dpkg-repack a package that has  modified
       conffiles. The modified conffiles are packed up. Now if you install the package, dpkg does
       not realize that the conffiles in it are modified. So  if  you  later  upgrade  to  a  new
       version  of  the  package,  dpkg  will  believe  that the old (repacked) package has older
       conffiles than the new version, and will silently replace the conffiles with those in  the
       package you are upgrading to.

       While  dpkg-repack  can  be run under fakeroot and will work most of the time, fakeroot -u
       must be used if any of the files to be repacked are owned by non-root users. Otherwise the
       package  will have them owned by root.  dpkg-repack will warn if you run it under fakeroot
       without the -u flag.


       Joey Hess <>