From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: [PATCH] Add 12 rubygems. Date: Wed, 30 Dec 2015 18:26:26 +0100 Message-ID: <871ta3rgot.fsf@gnu.org> References: <56821E47.9010400@uq.edu.au> <56821F70.4010202@uq.edu.au> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56125) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aEKW9-0002n9-H5 for guix-devel@gnu.org; Wed, 30 Dec 2015 12:26:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aEKW5-00051F-GL for guix-devel@gnu.org; Wed, 30 Dec 2015 12:26:33 -0500 In-Reply-To: <56821F70.4010202@uq.edu.au> (Ben Woodcroft's message of "Tue, 29 Dec 2015 15:51:44 +1000") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ben Woodcroft Cc: "guix-devel@gnu.org" Ben Woodcroft skribis: > On 29/12/15 15:46, Ben Woodcroft wrote: >> >> Unfortunately none of these builds are reproducible because rubygems >> in Guix generally aren't. For one, this is because .gem files are >> archives whose contents are timestamped. > I should clarify. What I meant was the cache .gem files > > /gnu/store/ib83mg5zsyr5x2w0m3i1f84gdvdbp5x9-ruby-ascii85-1.0.2/lib/ruby/g= ems/2.2.0/cache$ > tar tvf Ascii85-1.0.2.gem |head > -r--r--r-- wheel/wheel 703 2015-12-27 22:44 metadata.gz > -r--r--r-- wheel/wheel 7436 2015-12-27 22:44 data.tar.gz > -r--r--r-- wheel/wheel 268 2015-12-27 22:44 checksums.yaml.gz We should arrange so that gems are created with a fixed timestamp and UID/GID, and a well-defined file ordering, as with: --mtime=3D@0 --sort=3Dname --owner=3Droot:0 --group=3Droot:0 We also need to make sure gzip is always run with -n/--no-name. That way, the gz files above will not include an additional timestamp. >From what I can see in , this is not addressed yet in other distros. HTH, Ludo=E2=80=99.