Debian Bug report logs -
#836075
libfile-stripnondeterminism-perl: hard-link is destroyed after normalization
Reported by: "AYANOKOUZI, Ryuunosuke" <i38w7i3@yahoo.co.jp>
Date: Tue, 30 Aug 2016 13:06:02 UTC
Severity: normal
Tags: patch
Found in version strip-nondeterminism/0.023-2
Fixed in version strip-nondeterminism/0.024-1
Done: Chris Lamb <lamby@debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, i38w7i3@yahoo.co.jp, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#836075; Package libfile-stripnondeterminism-perl.
(Tue, 30 Aug 2016 13:06:05 GMT) (full text, mbox, link).
Acknowledgement sent
to "AYANOKOUZI, Ryuunosuke" <i38w7i3@yahoo.co.jp>:
New Bug report received and forwarded. Copy sent to i38w7i3@yahoo.co.jp, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Tue, 30 Aug 2016 13:06:05 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Package: libfile-stripnondeterminism-perl
Version: 0.023-2
Severity: normal
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: toolchain
X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org
Dear maintainer,
Current file handlers is considering file mode, but other file attributes
(Ex. user ID, group ID, inode number, link counts, ...) are not considered.
It means that a file with same file name before and after normalization
could have different file attributes except for file mode.
This would cause some problem.
Suppose that we have a debian package which is packaged by "debhelper"
and that "debian/rule" execute "rdfind -makehardlinks true"
in "override_dh_auto_install" target to reduce package size
using hard-link of duplicated files in the package [1].
[1] https://wiki.debian.org/dedup.debian.net
"dh_strip_nondeterminism" target is executed
after "override_dh_auto_install" (hard-linking).
In the target, File::StripNondeterminism module
create new normalized file which has different inode number from target file
and rename() the normalized file to the target file it data has changed.
Because inode number has changed after rename().
hard-link status of files by "rdfind" could be changed [2].
This cause duplicated files in final package
in spite of "rdfind" invocation in "dh_strip_nondeterminism" target.
[2] hard-link status could be changed.
$ (umask 0006; convert xc:none /tmp/preserve_file_attributes.v1YRi3/ln_target.png)
$ ln /tmp/preserve_file_attributes.v1YRi3/ln_target.png /tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png
$ stat /tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png /tmp/preserve_file_attributes.v1YRi3/ln_target.png
File: ‘/tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png’
Size: 272 Blocks: 8 IO Block: 4096 regular file
Device: fe01h/65025d Inode: 498297 Links: 2
Access: (0660/-rw-rw----) Uid: ( 1000/********) Gid: ( 1000/********)
Access: 2016-08-30 21:53:27.562341916 +0900
Modify: 2016-08-30 21:53:27.558341948 +0900
Change: 2016-08-30 21:53:27.558341948 +0900
Birth: -
File: ‘/tmp/preserve_file_attributes.v1YRi3/ln_target.png’
Size: 272 Blocks: 8 IO Block: 4096 regular file
Device: fe01h/65025d Inode: 498297 Links: 2
Access: (0660/-rw-rw----) Uid: ( 1000/********) Gid: ( 1000/********)
Access: 2016-08-30 21:53:27.562341916 +0900
Modify: 2016-08-30 21:53:27.558341948 +0900
Change: 2016-08-30 21:53:27.558341948 +0900
Birth: -
$ perl -I lib/ bin/strip-nondeterminism /tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png
$ stat /tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png /tmp/preserve_file_attributes.v1YRi3/ln_target.png
File: ‘/tmp/preserve_file_attributes.v1YRi3/ln_hardlink.png’
Size: 155 Blocks: 8 IO Block: 4096 regular file
Device: fe01h/65025d Inode: 498310 Links: 1
Access: (0660/-rw-rw----) Uid: ( 1000/********) Gid: ( 1000/********)
Access: 2016-08-30 21:53:27.850341897 +0900
Modify: 2016-08-30 21:53:27.846341898 +0900
Change: 2016-08-30 21:53:27.846341898 +0900
Birth: -
File: ‘/tmp/preserve_file_attributes.v1YRi3/ln_target.png’
Size: 272 Blocks: 8 IO Block: 4096 regular file
Device: fe01h/65025d Inode: 498297 Links: 1
Access: (0660/-rw-rw----) Uid: ( 1000/********) Gid: ( 1000/********)
Access: 2016-08-30 21:53:27.850341897 +0900
Modify: 2016-08-30 21:53:27.558341948 +0900
Change: 2016-08-30 21:53:27.846341898 +0900
Birth: -
To fix this issue and
to preserve as much file attribute information of target file as possible,
I prepared a patch to "master" branch of official repository [3].
I would like someone to request review the patch and merge it to the branch.
[3] https://anonscm.debian.org/git/reproducible/strip-nondeterminism.git/log/?h=master
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.16.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Init: unable to detect
Versions of packages libfile-stripnondeterminism-perl depends on:
ii libarchive-zip-perl 1.59-1
ii perl 5.22.2-3
libfile-stripnondeterminism-perl recommends no packages.
libfile-stripnondeterminism-perl suggests no packages.
-- no debconf information
Sincerely yours,
Ryuunosuke Ayanokouzi
--
AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>
[0001-Preserve-file-attribute-information-of-target-file.patch (application/octet-stream, attachment)]
[Message part 3 (application/pgp-signature, inline)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#836075; Package libfile-stripnondeterminism-perl.
(Tue, 30 Aug 2016 14:24:03 GMT) (full text, mbox, link).
Acknowledgement sent
to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Tue, 30 Aug 2016 14:24:03 GMT) (full text, mbox, link).
Message #10 received at 836075@bugs.debian.org (full text, mbox, reply):
tags 836075 + pending
thanks
AYANOKOUZI, Ryuunosuke wrote:
> Current file handlers is considering file mode, but other file attributes
> (Ex. user ID, group ID, inode number, link counts, ...) are not considered.
[…]
> I would like someone to request review the patch and merge it to the branch.
Thanks so much; applied.
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby@debian.org / chris-lamb.co.uk
`-
Added tag(s) pending.
Request was from Chris Lamb <lamby@debian.org>
to control@bugs.debian.org.
(Tue, 30 Aug 2016 14:24:06 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#836075; Package libfile-stripnondeterminism-perl.
(Wed, 31 Aug 2016 07:39:32 GMT) (full text, mbox, link).
Acknowledgement sent
to "AYANOKOUZI, Ryuunosuke" <i38w7i3@yahoo.co.jp>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Wed, 31 Aug 2016 07:39:32 GMT) (full text, mbox, link).
Message #17 received at 836075@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Dear Chris,
At Tue, 30 Aug 2016 15:21:58 +0100,
Chris Lamb <lamby@debian.org> wrote:
>
> AYANOKOUZI, Ryuunosuke wrote:
>
> > Current file handlers is considering file mode, but other file attributes
> > (Ex. user ID, group ID, inode number, link counts, ...) are not considered.
>
> […]
>
> > I would like someone to request review the patch and merge it to the branch.
>
> Thanks so much; applied.
Thank you very much.
When would it be available on Sid?
Sincerely yours,
Ryuunosuke Ayanokouzi
--
AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>
[Message part 2 (application/pgp-signature, inline)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#836075; Package libfile-stripnondeterminism-perl.
(Wed, 31 Aug 2016 07:39:34 GMT) (full text, mbox, link).
Acknowledgement sent
to Chris Lamb <lamby@debian.org>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Wed, 31 Aug 2016 07:39:34 GMT) (full text, mbox, link).
Message #22 received at 836075@bugs.debian.org (full text, mbox, reply):
> When would it be available on Sid?
It's currently the only change pending for this release but I would
guess certainly no more than one week, almost certainly less.
Hope that helps.
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby@debian.org / chris-lamb.co.uk
`-
Information forwarded
to debian-bugs-dist@lists.debian.org, Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>:
Bug#836075; Package libfile-stripnondeterminism-perl.
(Wed, 31 Aug 2016 08:45:04 GMT) (full text, mbox, link).
Acknowledgement sent
to "AYANOKOUZI, Ryuunosuke" <i38w7i3@yahoo.co.jp>:
Extra info received and forwarded to list. Copy sent to Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>.
(Wed, 31 Aug 2016 08:45:04 GMT) (full text, mbox, link).
Message #27 received at 836075@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Dear Chris,
At Wed, 31 Aug 2016 08:36:51 +0100,
Chris Lamb <lamby@debian.org> wrote:
>
> > When would it be available on Sid?
>
> It's currently the only change pending for this release but I would
> guess certainly no more than one week, almost certainly less.
>
> Hope that helps.
OK, I understood.
Thank you for your swift action.
Sincerely yours,
Ryuunosuke Ayanokouzi
--
AYANOKOUZI, Ryuunosuke <i38w7i3@yahoo.co.jp>
[Message part 2 (application/pgp-signature, inline)]
Reply sent
to Chris Lamb <lamby@debian.org>:
You have taken responsibility.
(Sat, 03 Sep 2016 19:39:09 GMT) (full text, mbox, link).
Notification sent
to "AYANOKOUZI, Ryuunosuke" <i38w7i3@yahoo.co.jp>:
Bug acknowledged by developer.
(Sat, 03 Sep 2016 19:39:09 GMT) (full text, mbox, link).
Message #32 received at 836075-close@bugs.debian.org (full text, mbox, reply):
Source: strip-nondeterminism
Source-Version: 0.024-1
We believe that the bug you reported is fixed in the latest version of
strip-nondeterminism, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 836075@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Chris Lamb <lamby@debian.org> (supplier of updated strip-nondeterminism package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Sat, 03 Sep 2016 20:06:37 +0100
Source: strip-nondeterminism
Binary: libfile-stripnondeterminism-perl strip-nondeterminism dh-strip-nondeterminism
Architecture: source
Version: 0.024-1
Distribution: unstable
Urgency: medium
Maintainer: Reproducible builds folks <reproducible-builds@lists.alioth.debian.org>
Changed-By: Chris Lamb <lamby@debian.org>
Description:
dh-strip-nondeterminism - file non-deterministic information stripper — Debhelper add-on
libfile-stripnondeterminism-perl - file non-deterministic information stripper — Perl module
strip-nondeterminism - file non-deterministic information stripper — stand-alone tool
Closes: 836075
Changes:
strip-nondeterminism (0.024-1) unstable; urgency=medium
.
[ Chris Lamb ]
* Print test coverage report.
* jar.pm: Drop unnecessary subroutine prototypes.
* {ar,zip}.pm: Explicitly use oct(..) for integers with leading zeroes.
* {jar,png,zip}: Ensure subroutines end with return statement.
* zip.pm:
- Use block form of grep over expression form.
- zip.pm: Don't mix high and low-precedence booleans.
.
[ AYANOKOUZI, Ryuunosuke ]
* Preserve file attribute information of target file. (Closes: #836075)
Checksums-Sha1:
4f36013cbc9691a7b7ea2ee26d0ec3d92a1274b4 2350 strip-nondeterminism_0.024-1.dsc
5a12d3df8d9a6bb6a2b831f83bf03b63575fae09 149488 strip-nondeterminism_0.024.orig.tar.gz
9212be5c84d0fd63a8af4cd03880d5be8490b681 5548 strip-nondeterminism_0.024-1.debian.tar.xz
Checksums-Sha256:
2cb5cdfd57ae3db38b94263a8a76e9c8ebeb772df7bad2faa9aefbe28c468431 2350 strip-nondeterminism_0.024-1.dsc
773cdc73dca91ff1d824fd19c6813f302cd226d30717c0c39260b0a4b491eef3 149488 strip-nondeterminism_0.024.orig.tar.gz
4fdb4084f471458ed1fc232d18a17fc0b2021f22f642d570e9a4dbe80e581754 5548 strip-nondeterminism_0.024-1.debian.tar.xz
Files:
888189479dbbf7b74ac409868e3fbe20 2350 devel optional strip-nondeterminism_0.024-1.dsc
690a011d8920d9e395973539c1487f32 149488 devel optional strip-nondeterminism_0.024.orig.tar.gz
3d34e8e6e87fb7813995ea5c934af0b3 5548 devel optional strip-nondeterminism_0.024-1.debian.tar.xz
-----BEGIN PGP SIGNATURE-----
iQIcBAEBCAAGBQJXyx9eAAoJEB6VPifUMR5YfG4QAJQk+NwV6AooR6bWMZ7Rfhps
KxLInL0UftzTFSUknZaTvMxSCuzmzsMLu6SS806rLrA6pliluxiffFpe6Cqn+ic7
9C09UeuGICTTCPZpQOs+kFSSI7NRk4VSD+uG8dLDoKxdYXTMFL97uURj8wPVHKez
PkPKD1oQRdPP/6+8asPOfM2mt/BmYRKgMyveOZKaDt4OXU3l9H3mVf4DNgTrqqE8
8SXupBuINbIFI6YQysadwAEVmKtxQRZsdKIhwyNqrEyBiTFyH4i/q5L+WKnW1oD3
SAFolZdSH82CSKE3b7i81CQdPFAGuSDTxcrQM0KRWo80wH4NmhXk5LJV0DZrk6FY
UGIKqlZjN9m7qnvrEtw5stl6saygYRHtbFEGr8kWew6Dunn8hEkbbu4ixSaPkjXi
RCFSEs1E2QT7YK/PtlS0+8y92x1ZtgnB0ox9A2hZmhmUHBk6+zOOV4jcYiUlMKDz
JSlHnAD0ye8S+rR3YofcCEtR9h+WcIOzO8Gygeiri088sCDu85xIQuDvy+YKx4EJ
uBbjK9MrX0NBPkr/4fD+oPdsjeRAb3wvjx+WEIie9vEd21FY+UBquL2C5keJh2J0
4wMe2zjMTMS0G6jNVnYkBhHHfV7J8sxL4mELxTNLaelNDpjmhK5vlMirpWX51fW4
KTnAc+1jRSfYAWk1G4Lc
=+817
-----END PGP SIGNATURE-----
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 02 Oct 2016 07:31:12 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Wed May 17 14:02:43 2023;
Machine Name:
buxtehude
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.