gzip stores a timestamp by default in its header.

This prevents build to be reproducible and capture an uninteresting details.

Packages known to be affected:

Detection

Example debbindiff output.

file will display the timestamp if there's one.

Work-around

strip-nondeterminism will take care of normalizing gzip'ed files.

Solution

Pass -n or --no-name option to gzip.

Example patch

Quoting the manpage:

The environment variable GZIP can hold a set of default options for gzip.

It can be used for applications like tar.

Prevention

Lintian tag: package-contains-timestamped-gzip

Ideally, we would set it as a default environment variable at the dpkg-buildpackage level. Unfortunately, this was experimented previously with CFLAGS (and the likes) similarily exported and this made many maintainers grumpy. *sigh*