Binary diffs for deb files
Matt Zimmerman
mdz at ubuntu.com
Wed May 3 01:38:55 BST 2006
On Wed, May 03, 2006 at 01:24:29AM +0100, James Hall wrote:
> On Tue, 2006-05-02 at 17:16 -0700, Matt Zimmerman wrote:
> > On Wed, May 03, 2006 at 01:13:05AM +0100, James Hall wrote:
> > > On Tue, 2006-05-02 at 17:04 -0700, Matt Zimmerman wrote:
> > > > Where are you getting the correct timestamps for the new versions of
> > > > control.tar and data.tar? Does bsdiff/bspatch preserve those for you?
> > >
> > > control.tar.gz and data.tar.gz have their timestamp preserved when
> > > decompressed and bsdiff/bspatch simply leaves it alone.
> >
> > The timestamps won't be the same for different versions of the .deb.
>
> Ahh, I see what you mean. The timestamps inside the deb are preserved,
> and the checksum is the same, so that's half the battle.
>
> I made a signature for the original deb, and it verified against the
> patched one, despite it having a different timestamp.
>
> How important is having the correct timestamp on the resulting file?
The timestamp on the resulting file is unimportant.
The deb contains two .tar.gz files, which have a timestamp embedded in the
gzip metadata. You have a binary patch from one set of uncompressed tars to
another. If you gunzip them, apply a binary patch, and then gzip them
again, the timestamp will not match the .deb from which you generated the
binary patch. I didn't see your script ensuring correct timestamps on the
.tar files.
Now I see that you're tarring the .tars and patching the lot, so that would
preserve the timestamps.
--
- mdz
More information about the ubuntu-devel
mailing list