[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dpkg-source reproducibility



Hello,

over all the years I had assumed the -x and -b operations of dpkg-source
are inverse, and the other way around as well. In other words, I
expected to rely on the following:

    Running "dpkg-source -x" on a .dsc, and then "dpkg-source -b" on
    the unpacked tree re-creates the initial .dsc file.

Having a bitwise identical result was certainly nice to have, but I
consider it sufficient if the resulting .dsc, unpacked as well, results
in a file tree with identical file list and content¹.


Now I came across a (native) package that fails that rule - after
running "dpkg-source -b", the top-level .gitignore file was missing.
While I could work around this, it felt wrong. Therefore I'd like to
understand whether the above approach is not the right one, the source
package has been created in an interesting way (alternative
implementations of "dpkg-source -b"?), whether this is acceptable, and
how to sanely deal with it.

And I wouldn't care if that hadn't been an impediment when preparing a
NMU for that package since debdiff showed the top-level .gitignore was
removed. Something that certainly should not happen in a NMU.

    Christoph

¹ File permissions is another story.

Attachment: signature.asc
Description: PGP signature


Reply to: