Question about strip-nondeterminism in bsh

jathan jathanblackred at openmailbox.org
Wed Oct 11 17:24:04 UTC 2017


On 09/10/17 10:43, Chris Lamb wrote:
> Hi jathan,
> 
>> Thank you very much for your answer. Following your suggestion, I have
>> checked the source code of strip-nondeterminism in its versions 0.034-1
>> and 0.038-1  (https://sources.debian.net/ […]
> 
> Out of interest, why not check out the code from git instead of
> sources.debian.net?
> 
>> and because the contents related to timestamps in both versions, I think
>> timestamps it is already normalized by strip-nondeterminism
> 
> What, exactly, makes you say that tar archives are normalised by strip-
> nondeterminism? I don't really follow what you mean by "the contents
> related to timestamps in both versions".
> 
> 
> Regards,
> 
Hi Lamby. Perfect, I will check the GitHub code instead of Debian
Sources. I was thinking tar archives are normalised by
strip-nondeterminism based on the next contents:

https://raw.githubusercontent.com/ReproducibleBuilds/strip-nondeterminism/master/bin/strip-nondeterminism

B<strip-nondeterminism> is a tool to strip bits of nondeterministic
information, such as timestamps, from files.  It can be used as
a post-processing step to make a build reproducible, when the build
process itself cannot be made deterministic.

=item B<-T> I<seconds>, B<--timestamp> I<seconds>

Instead of stripping timestamps from files, set them to the given number
of seconds since January 1, 1970.

=item B<--clamp-timestamp>

Only replace timestamps if they are later than the time specified to
B<--timestamp>.  You can use this option to ensure that only timestamps
introduced as part of the build process are replaced.  NOT YET IMPLEMENTED
FOR ALL FILE FORMATS.

my $cmd = $0;
$cmd =~ s/.*\///;
my $usage
  = "Usage: $cmd [-v|--verbose] [-t|--type FILETYPE] [-T|--timestamp
SECONDS] [--clamp-timestamp] FILENAME\n";

my ($filetype, $timestamp, $clamp_timestamp, $want_help, $verbose,
$want_version);
my $getopt = Getopt::Long::Parser->new;
$getopt->configure(qw(no_ignore_case permute bundling));
$getopt->getoptions(
	'type|t=s', \$filetype,
	'timestamp|T=i', \$timestamp,
	'clamp-timestamp!', \$clamp_timestamp,
	'help|h', \$want_help,
	'verbose|v', \$verbose,
	'version|V', \$want_version
) or die $usage;

$File::StripNondeterminism::canonical_time = $timestamp;
$File::StripNondeterminism::clamp_time = $clamp_timestamp;

print "$cmd: Not using a canonical time\n"
  if not defined $timestamp and $verbose;
for my $filename (@ARGV) {
	die "$filename: Does not exist\n" unless -e $filename;
-- 
Por favor evita enviarme adjuntos en formato de word o powerpoint, si
quieres saber porque lee esto:
http://www.gnu.org/philosophy/no-word-attachments.es.html
¡Cámbiate a GNU/Linux! http://getgnulinux.org/es

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 878 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20171011/881fd7bb/attachment.sig>


More information about the Reproducible-builds mailing list