Hi!

It seems this is a good part of what needs to be done:


diff --git a/Pristine/Tar/Delta/Tarball.pm b/Pristine/Tar/Delta/Tarball.pm
index 121b85e..e8b5ce0 100644
--- a/Pristine/Tar/Delta/Tarball.pm
+++ b/Pristine/Tar/Delta/Tarball.pm
@@ -26,7 +26,13 @@ sub write {
     }
   }
 
-  doit("tar", "czf", $deltafile, "-C", $tempdir, keys %$delta);
+  doit("tar", "--sort=name",
+              "--mtime=\@0",
+              "--owner=0",
+              "--group=0",
+              "--numeric-owner",
+              
"--pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime",
+              "-czf", $deltafile, "-C", $tempdir, sort keys %$delta);
 
   return $delta;
 }


With this patch applied, invoking `GZIP=-n pristine-tar gendelta foo.tar.gz`
does almost do the right thing, except the "wrapper" file contained
within the delta file (tarball.) That "wrapper" is compressed with
pristine-tar's internal "zgz" tool and unfortunately still embeds a
timestamp into the "wrapper" file (with actually is a .gz, but just
generated with this `zgz` tool.)

MfG, JBG

-- 

Attachment: signature.asc
Description: PGP signature

Reply via email to