Re: [PATCH] supply '-n' to gzip to produce identical tarballs
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Apr 10, 2011, 07:38 UTC
- Message-ID
- <m362qm4kvu.fsf@localhost.localdomain>
- In-Reply-To
- <1302415936-7362-1-git-send-email-frase@frase.id.au>
Fraser Tweedale <frase@frase.id.au> writes:
Show 13 quoted lines
> Subject: [PATCH] supply '-n' to gzip to produce identical tarballs
>
> Without the '-n' ('--no-name') argument, gzip includes timestamp in
> output which results in different files. Important systems like FreeBSD
> ports and perhaps many others hash/checksum downloaded files to ensure
> integrity. For projects that do not release official archives, gitweb's
> snapshot feature would be an excellent stand-in but for the fact that the
> files it produces are not identical.
>
> Supply '-n' to gzip to exclude timestamp from output and produce idential
> output every time.
>
> Signed-off-by: Fraser Tweedale <frase@frase.id.au>Very good description, except subject line should denote which subsystem this commit affects, i.e.:
gitweb: supply '-n' to gzip to produce identical tarballs
Hmmm... gzip in gitweb's 'snapshot' action gets data compressed from standard input, not from filesystem. Isn't -n / --no-name no-op then? Just asking...
Show 14 quoted lines
> --- > gitweb/gitweb.perl | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl > index 46186ab..2ab08da 100755 > --- a/gitweb/gitweb.perl > +++ b/gitweb/gitweb.perl > @@ -186,7 +186,7 @@ our %known_snapshot_formats = ( > 'type' => 'application/x-gzip', > 'suffix' => '.tar.gz', > 'format' => 'tar', > - 'compressor' => ['gzip']}, > + 'compressor' => ['gzip', '-n']},
Perhaps it would be more clear to use
+ 'compressor' => ['gzip', '--no-name']},
Show 6 quoted lines
>
> 'tbz2' => {
> 'display' => 'tar.bz2',
> --
> 1.7.4.3
> -- Jakub Narebski Poland ShadeHawk on #git