From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:5f26::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 6M0wIxSJoGUZDAAAkFu2QA (envelope-from ) for ; Fri, 12 Jan 2024 01:34:28 +0100 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id CP+1HxSJoGUlDQEAqHPOHw (envelope-from ) for ; Fri, 12 Jan 2024 01:34:28 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=wolfsden.cz header.s=mail header.b=goYG3JqZ; dkim=fail ("headers rsa verify failed") header.d=wolfsden.cz header.s=mail header.b=nJn5zCPB; dmarc=fail reason="SPF not aligned (relaxed)" header.from=wolfsden.cz (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1705019668; a=rsa-sha256; cv=none; b=n6mDj1PNcl0/rU0GrOH8RkR6wCFj7lcM1Fu2XekCm0JVLAI8Ccmekr9/X1CD1kEif9gpFQ pJW7j9JLNU6RuI5FjzqtEYlJISVBaxkf6gv9eGKxqsFUkf7NF4qwT1KYdwUljmO70Y1IAi ONvovcf3BKO7gdHbW+vM0ujvuo6681fFaITPHtUGqCEgAzIV/QrcdLpt6lsr9e89CtCpkj +lY7qrsXQD/jQzgq/pRmj25zpjI8RAYIbbHrU0G5sYZBsNLtij7tX5sVPLvJjghzIsmqeQ NY0SH7qCmpX1aZda6v58Wjjs6e6eqSB1U9fxBxbgxCL8vT4+88dJCNAU8BYMFQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=wolfsden.cz header.s=mail header.b=goYG3JqZ; dkim=fail ("headers rsa verify failed") header.d=wolfsden.cz header.s=mail header.b=nJn5zCPB; dmarc=fail reason="SPF not aligned (relaxed)" header.from=wolfsden.cz (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1705019668; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=ZxHBDwRKTnQeMcmwrYHyuP9ZZ5DMLtHnM+DlyO0gONA=; b=PQmboiFLMqUJhv/b76NJo9BtT8TaxbfJneGYtuCwEWE369G5LOz4fm4IX3jMyIuoKqaprS OF29tof70QM9yiBoIRiBC80klxDRPngiX5xe9icXmeoCnj9YhwuJecut1m/jgYo2UCDJYb FjMhyZwUthnMLbuoteyzXrWMExMmaG7hcISqtgTFhzvPzjMyoFwQqMDcwmgDdWOMoYQ8Xu /ZEdHRY/V8pfMQT3TA1mvkLG1L2W91qUuhkqnk54aA979yGGhx8X6DPDflURvodPnNZg8G orWYTVb8hxoiZWMaldXyddZEmfd1sfvrWX5htlO6DYPHAr0KgBRoB4qTwvgdXA== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 51C61176BE for ; Fri, 12 Jan 2024 01:34:28 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rO5Uz-000071-SR; Thu, 11 Jan 2024 19:34:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rO5Uy-00006n-0A for guix-patches@gnu.org; Thu, 11 Jan 2024 19:34:12 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rO5Ux-0004mq-Nx; Thu, 11 Jan 2024 19:34:11 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rO5Un-0001Qf-OT; Thu, 11 Jan 2024 19:34:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68394] [PATCH python-team] gnu: python: Make the build reproducible. Resent-From: Tomas Volf <~@wolfsden.cz> Original-Sender: "Debbugs-submit" Resent-CC: lars@6xq.net, marius@gnu.org, me@bonfacemunyoki.com, jgart@dismail.de, guix-patches@gnu.org Resent-Date: Fri, 12 Jan 2024 00:34:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68394 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68394@debbugs.gnu.org Cc: Tomas Volf <~@wolfsden.cz>, Lars-Dominik Braun , Marius Bakke , Munyoki Kilyungi , jgart X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Lars-Dominik Braun , Marius Bakke , Munyoki Kilyungi , jgart Received: via spool by submit@debbugs.gnu.org id=B.17050196335478 (code B ref -1); Fri, 12 Jan 2024 00:34:01 +0000 Received: (at submit) by debbugs.gnu.org; 12 Jan 2024 00:33:53 +0000 Received: from localhost ([127.0.0.1]:34362 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rO5Ue-0001QH-US for submit@debbugs.gnu.org; Thu, 11 Jan 2024 19:33:53 -0500 Received: from lists.gnu.org ([2001:470:142::17]:57612) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <~@wolfsden.cz>) id 1rO5Ub-0001Pz-82 for submit@debbugs.gnu.org; Thu, 11 Jan 2024 19:33:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <~@wolfsden.cz>) id 1rO5UX-00005n-Ut for guix-patches@gnu.org; Thu, 11 Jan 2024 19:33:45 -0500 Received: from wolfsden.cz ([37.205.8.62]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <~@wolfsden.cz>) id 1rO5UV-0004XH-HE for guix-patches@gnu.org; Thu, 11 Jan 2024 19:33:45 -0500 Received: by wolfsden.cz (Postfix, from userid 104) id 61C6624EEE9; Fri, 12 Jan 2024 00:33:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1705019620; bh=DiwVstw38yyACwBMKivmYsVcdoQwkA1Je97ABAhB1+Q=; h=From:To:Cc:Subject:Date; b=goYG3JqZxgcyICad5Fgst8DTMkgC7Dj4Ve2hTy7/oK1CtH66BAOECA4GFXUB+0Uj2 8tKD2AMEQIRkFdNXnuuHTI9/4qLtBQHgzcKZh3/eo0jz0nd1ULOrBslVRSf3HPP3Zj /cSyrKBzZRsUpsPAZz4ECrzI23Or2XW1DVr0K9gyT8Aad5Png7Vx2zXidSPCxy0jnW JW3dS40FtwPFk0DX9J9eFp6HLIB9nw5PdLyCeFmdWyuoctl0BW2ZHpizw3xfUOMYF/ TXy7umiM6jw+Fd1qHktvMyG7qE1LcP4LqsFb6IiblwR/oy4wm5CTMqoU/tzNQTU0E6 Em/T+0sjEYnyJKt/VyVPdnlW9t9neBXs059Whzy593cWQmzIz8NOmWss0PNNIMFck7 atIAJFV666npXfwguvcNXrS3YZbFwZUzG+a8SnHXYD3GFPZHBK/B2Y2P+BaIcMemch 69eD+9jCC6yMM5plhcKMfaADqST7KePdlZ6XKPnklg8vSZmmlX1jb6KsrCEf2fxNmn VLFbtnuYokXZb5Enmwki5nf+m+J3x6jw9vvyKt1nFXKOB/C9cWZ8z6lckb93mwmLHN oKFO5QUwSgJnmSjqgo7MqiJ42UokCm+DGIYZvjrLe4gs1diVuDxn31QtFEkMafnwtH yqnavKt3Qfo8FcCiYKTFH7To= Received: from localhost (unknown [193.32.127.158]) by wolfsden.cz (Postfix) with ESMTPSA id AD397250E1A; Fri, 12 Jan 2024 00:33:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=wolfsden.cz; s=mail; t=1705019619; bh=DiwVstw38yyACwBMKivmYsVcdoQwkA1Je97ABAhB1+Q=; h=From:To:Cc:Subject:Date; b=nJn5zCPBCdFLzAj618nGfy5OmLA6h9vgyminTfcyOhwEox7WJ3A9JKJQIUBWDLtYo cqXlF7PR4+2da2nQlH2kYyVnvjTJPtImOTvbv7bM8MraFSvs1xnp7tZsIo7QvVsL4K HAH2uzg3QoGrf8j2YL+b/l0ejJZNKsUsO01hpa4PhK11gcTV7RjjEQtdwkg7wIcm6p HwXJ3Tf2mrLthgNDq6h3S7L4TnLRPs6P7AWrxF546d0X2aBQV00fI43T8yW4E2HASB 142830EGyztTj5pkfWg7daudgNitBCLK2udJHvCXoADypkcS8j68Z+GgZlI1V3JJJg txVKrahE14ZE4+NjsdUTW07O7JTEIjzMLpbjjVqTXhW4RYaW4oNWhFiFGADu+sYehD EBM+fkv8nGxDIw0nG1ExszSaBJYHxmlJx7LVvBRyMkXpS4mpb0pUvPqA8s0t167Chx lXxbGFDDbYHbq+eTwEqv4N7L0nalZOgnMUkl+tVZochHN8Cut1bEOcDeo8heME8Tzs peU8WRosrpT8Vs6jZ033qAqln49Ye5G9zIEr1c0aGAukTWDh/avfgWU0qCxgzM+ZrR fBwUD0nKmyEgf7/PaG+ItfVtDpV1KS7jhMjJ+TxVI/vnmGb+41pe7PSQ4+pSiV/tF5 2lnJQtRkze9yCP2OZqGb097g= From: Tomas Volf <~@wolfsden.cz> Date: Fri, 12 Jan 2024 01:33:16 +0100 Message-ID: X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=37.205.8.62; envelope-from=~@wolfsden.cz; helo=wolfsden.cz X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: 3.81 X-Spam-Score: 3.81 X-Migadu-Queue-Id: 51C61176BE X-Migadu-Scanner: mx13.migadu.com X-TUID: bRb6p0q9+9Cg While python build was reproducible on a single machine, once multiple file systems entered the picture, it was no longer true. My local builds on BTRFS differed from build on ext4 done in a virtual machine. The distutils library present in current python is sensitive to file system ordering. The solution is the same opensuse used, sorting the list of files. With this patch, build on my machine (BTRFS) and in a guix system vm (ext4) produce the same store item. More info: https://bugzilla.opensuse.org/show_bug.cgi?id=1049186 * gnu/packages/python.scm (python-3.10)[arguments]<#:phases>: Add 'patch-distutils phase. Change-Id: I0273dc0f8511a7acdcc2b462a26cc29a9756c801 --- gnu/packages/python.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 51d5f598d7..319a917b4b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -515,6 +515,19 @@ (define-public python-3.10 (substitute* "Makefile.pre.in" (("-j0") "-j1"))))) '()) + (add-after 'unpack 'patch-distutils + (lambda _ + ;; Ensure byte_compile produces the same output regardless + ;; filesystem ordering. For more information see: + ;; https://bugzilla.opensuse.org/show_bug.cgi?id=1049186 + (let* ((file "Lib/distutils/util.py") + (old-content (call-with-input-file file get-string-all))) + (substitute* file + (("^ for file in py_files:\n$") + " for file in sorted(py_files):\n")) + (if (string=? old-content + (call-with-input-file file get-string-all)) + (error "substitute did nothing, phase requires an update"))))) (add-after 'unpack 'remove-windows-binaries (lambda _ ;; Delete .exe from embedded .whl (zip) files base-commit: 5c0f77f4241c9beac0c82deae946bfdc70b49ff0 -- 2.41.0