GNU bug report logs - #70303
[PATCH 0/2] Use guile-final for grafting.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Efraim Flashner <efraim@HIDDEN>; Keywords: patch; dated Tue, 9 Apr 2024 10:05:02 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at 70303 <at> debbugs.gnu.org:


Received: (at 70303) by debbugs.gnu.org; 15 Apr 2024 20:29:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 15 16:29:16 2024
Received: from localhost ([127.0.0.1]:39434 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rwSx0-0005xq-Hx
	for submit <at> debbugs.gnu.org; Mon, 15 Apr 2024 16:29:16 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:34166)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1rwSwx-0005wY-Kv
 for 70303 <at> debbugs.gnu.org; Mon, 15 Apr 2024 16:29:12 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1rwSwf-000237-2S; Mon, 15 Apr 2024 16:28:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=Uo1GsaFBc/Lef6aWXeE6oZRjdl30gCxB12lP1If/uxY=; b=bo6WudJ42p9HXMo8rBGw
 gP7G+uY73sWnSNWDxWWAWC+WpDKwnJPZniq6wXh7O603YuL1LzdjDx/AiUM6h26c/cCfrrRyKwx85
 g1ERuXDaARlp61mhjSckdE9gYNjSAkE0e0i5hQW/9jvOEiVR4qZoxl74YDW9srAUQtXwzmepHrcsW
 OQBQkv17KPiKzSW04IyqYGQUkeElE4VceDXeOfQAlbSt8KlmD1OlKkYfL2N6ahMT/BYW9iu5P4+4k
 s6ULOQ6Eo2qqkoupsenpfwjg9yrEP3KfX0ulhRds1yILrNvgVsnES2leOdGKDe/bJIefSdtNKEQDn
 PBgRvzwHQchvEg==;
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Efraim Flashner <efraim@HIDDEN>
Subject: Re: [bug#70303] [PATCH 0/2] Use guile-final for grafting.
In-Reply-To: <cover.1712656502.git.efraim@HIDDEN> (Efraim Flashner's
 message of "Tue, 9 Apr 2024 13:03:58 +0300")
References: <cover.1712656502.git.efraim@HIDDEN>
Date: Mon, 15 Apr 2024 22:28:17 +0200
Message-ID: <87cyqqz7z2.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 70303
Cc: Ricardo Wurmus <rekado@HIDDEN>, Josselin Poiret <dev@HIDDEN>,
 Simon Tournier <zimon.toutoune@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>,
 Tobias Geerinckx-Rice <me@HIDDEN>, 70303 <at> debbugs.gnu.org,
 Christopher Baines <guix@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Howdy!

Efraim Flashner <efraim@HIDDEN> skribis:

> Over the years the grafting code has changed bit by bit, with various
> attempts to speed it up.  By switching the grafts to not use parallelism
> in rewriting the leaves we can finally switch the guile-for-grafts to be
> guile-final.  The segfault is still there if we perform the grafts in
> parallel, but I believe it is fast enough that it should be fine to do
> them sequentially.

Could you time the grafting derivation of, say, libreoffice or
ungoogled-chromium?

Typically I=E2=80=99d do it along these lines:

--8<---------------cut here---------------start------------->8---
$ guix build libreoffice
/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time guix build libreoffice --check
The following graft will be made:
   /gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-7.6.3.1.drv
applying 137 grafts for libreoffice-7.6.3.1 ...
grafting '/gnu/store/5flppg3h8y235di2ilr3sx878gfl82db-libreoffice-7.6.3.1' =
-> '/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1'...
successfully built /gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-=
7.6.3.1.drv
successfully built /gnu/store/wdjqpxm2kbdvq7qlrzyjxb244zn3s3bv-libreoffice-=
7.6.3.1.drv
/gnu/store/24is7ypdx6sm56mkclxdx4hyj7yg4smb-libreoffice-7.6.3.1

real    0m14.921s
user    0m7.588s
sys     0m0.389s
--8<---------------cut here---------------end--------------->8---

(That=E2=80=99s on my 4-core i7.)

It=E2=80=99s a bummer that the segfault is still there.  I remember week-lo=
ng
=E2=80=98rr=E2=80=99 debugging sessions in the past, where I did find a few=
 issues; I
should try again but uh=E2=80=A6

> There's probably room in replace-store-references in (guix build graft)
> for changes if we're not going to use guile-2.0 here anymore.

I believe =E2=80=98tests/grafts.scm=E2=80=99 may run some of this code unde=
r Guile 2.0
(using the =E2=80=98guile-bootstrap=E2=80=99 tarball provided for the tests=
).

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#70303; Package guix-patches. Full text available.

Message received at 70303 <at> debbugs.gnu.org:


Received: (at 70303) by debbugs.gnu.org; 9 Apr 2024 10:07:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 09 06:07:29 2024
Received: from localhost ([127.0.0.1]:48334 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ru8O0-0008FX-GR
	for submit <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:07:29 -0400
Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:61508)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <efraim.flashner@HIDDEN>) id 1ru8Nu-0008Dm-K5
 for 70303 <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:07:23 -0400
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-343c2f5b50fso3591137f8f.2
 for <70303 <at> debbugs.gnu.org>; Tue, 09 Apr 2024 03:07:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1712657229; x=1713262029; darn=debbugs.gnu.org;
 h=content-transfer-encoding:mime-version:references:in-reply-to
 :message-id:date:subject:cc:to:from:sender:from:to:cc:subject:date
 :message-id:reply-to;
 bh=t+PeYFE4Q3SHAojuyM0mZQr+09nvn9cStfNPy0LcHZM=;
 b=YBCifrybZWxm9f7o8W7b2e4Cu6wgFn6b3YSSBXJu8VeiKRv8SZYHrMkvybFe0HiA7i
 oVhnBo3pw0RuFMDuRMq+KTTyVkuqD8cKA17sNIXomu0vPualVh6K0Pzb4eNquAmexpf7
 Z6QrzczzTog8jlvVAlxU77NsaCxVPLUR6u0D0hf1o4ZjRVcBewUmQSYNXA/NOpMfvcCI
 vy1Qe6u1Zhi0rW67ps5vOa3PHwzXCrbR6065aE1QRP5CEcCZRpjMdD5lxE5sbV5sAnD3
 ULpojOLMXe5Yu8su6Rqa8pqjG03mgKewdvxU2BVbrDkzLmYyv3fXIzYPB9mdKU0T64zj
 /3tQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1712657229; x=1713262029;
 h=content-transfer-encoding:mime-version:references:in-reply-to
 :message-id:date:subject:cc:to:from:sender:x-gm-message-state:from
 :to:cc:subject:date:message-id:reply-to;
 bh=t+PeYFE4Q3SHAojuyM0mZQr+09nvn9cStfNPy0LcHZM=;
 b=Q5bvIDvWTU+bw46Fqqloe451CT+aZDLuPWPo74nXrLpc6JWObS3oS+S/TBBNT4prM8
 hXbypqciEiMARH/tKNw4Bwr2+Rr9LS0lZm5RQnj8ZFSvvEoZjLss3qCOv3qG44qb/aia
 yNQJV8nu9SPQHI5Ay3zs9lg6fi9jWahWFrfqgOt+2kJkkjv1wJv01cuvBENDz9IzhXZi
 D6iZ4VC9y954Hg3EE7syW8Boe0xMPQ71DoG2BCwGetlERarGyxVv05ZugViHfvdJ2Fl7
 PVWp6ahHqhB8+focuAyJN0ySJJwIRqpt3Xt36y+akAherZmEHchcmqPLHipOX8LNIdUy
 BF2g==
X-Gm-Message-State: AOJu0YxX2ipVVZXS5wOTjSeFVsjfg4rBVAAFtPnBZobj6XBdX5/1PHqj
 1IrbThVGmA4dUYWOE4VeRvoQ9LiwtPeOLnQmNMcAb2N1NXbbactnjl/+X/0QlHU=
X-Google-Smtp-Source: AGHT+IEHtRSN0/sjZZf5zIfnMiKEzkkqYotAkj9+xuoS1qaNzf3uxAS/azgVJXodRaPQHJ4USERPRA==
X-Received: by 2002:adf:e4c9:0:b0:341:9db8:6269 with SMTP id
 v9-20020adfe4c9000000b003419db86269mr8768871wrm.48.1712657228528; 
 Tue, 09 Apr 2024 03:07:08 -0700 (PDT)
Received: from localhost ([141.226.11.200]) by smtp.gmail.com with ESMTPSA id
 h2-20020adff182000000b00343e6bec771sm10715019wro.94.2024.04.09.03.07.07
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 09 Apr 2024 03:07:08 -0700 (PDT)
From: Efraim Flashner <efraim@HIDDEN>
To: 70303 <at> debbugs.gnu.org
Subject: [PATCH 2/2] graft: Perform grafts with guile-final.
Date: Tue,  9 Apr 2024 13:06:56 +0300
Message-ID: <bb20ba66301eaa5c5f0df59eddb42f7ad11f4a90.1712656502.git.efraim@HIDDEN>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1712656502.git.efraim@HIDDEN>
References: <cover.1712656502.git.efraim@HIDDEN>
MIME-Version: 1.0
X-Debbugs-Cc: Christopher Baines <guix@HIDDEN>, Josselin Poiret <dev@HIDDEN>, Ludovic Courtès <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Ricardo Wurmus <rekado@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.3 (/)
X-Debbugs-Envelope-To: 70303
Cc: Efraim Flashner <efraim@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

* guix/build/graft.scm (rewrite-directory): Rewrite store directories in
individual files sequentially.
(exit-on-exception): Remove procedure.
* guix/packages.scm (guile-for-grafts): Switch to guile-final.

Change-Id: I50f7b23a3ceff8bb1495dc1f4bc772746147d924
---
 guix/build/graft.scm | 24 ++++--------------------
 guix/packages.scm    |  6 ++----
 2 files changed, 6 insertions(+), 24 deletions(-)

diff --git a/guix/build/graft.scm b/guix/build/graft.scm
index c8c7e33ab2..7fc5ecba99 100644
--- a/guix/build/graft.scm
+++ b/guix/build/graft.scm
@@ -299,19 +299,6 @@ (define (rename-matching-files directory mapping)
                                (string-append (dirname file) "/" target))))
               matches)))
 
-(define (exit-on-exception proc)
-  "Return a procedure that wraps PROC so that 'primitive-exit' is called when
-an exception is caught."
-  (lambda (arg)
-    (catch #t
-      (lambda ()
-        (proc arg))
-      (lambda (key . args)
-        ;; Since ports are not thread-safe as of Guile 2.0, reopen stderr.
-        (let ((port (fdopen 2 "w0")))
-          (print-exception port #f key args)
-          (primitive-exit 1))))))
-
 (define* (rewrite-directory directory output mapping
                             #:optional (store (%store-directory)))
   "Copy DIRECTORY to OUTPUT, replacing strings according to MAPPING, a list of
@@ -383,13 +370,10 @@ (define* (rewrite-directory directory output mapping
         (else
          (error "unsupported file type" stat)))))
 
-  ;; Use 'exit-on-exception' to force an exit upon I/O errors, given that
-  ;; 'n-par-for-each' silently swallows exceptions.
-  ;; See <http://bugs.gnu.org/23581>.
-  (n-par-for-each (parallel-job-count)
-                  (exit-on-exception rewrite-leaf)
-                  (find-files directory (const #t)
-                              #:directories? #t))
+  ;; n-par-for-each can lead to segfaults in the grafting code.
+  (for-each rewrite-leaf
+            (find-files directory (const #t)
+                        #:directories? #t))
   (rename-matching-files output mapping))
 
 (define %graft-hooks
diff --git a/guix/packages.scm b/guix/packages.scm
index 930b1a3b0e..80642eb049 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -882,10 +882,8 @@ (define (default-guile)
 
 (define (guile-for-grafts)
   "Return the Guile package used to build grafting derivations."
-  ;; Guile 2.2 would not work due to <https://bugs.gnu.org/28211> when
-  ;; grafting packages.
-  (let ((distro (resolve-interface '(gnu packages guile))))
-    (module-ref distro 'guile-2.0)))
+  (let ((distro (resolve-interface '(gnu packages commencement))))
+    (module-ref distro 'guile-final)))
 
 (define* (default-guile-derivation #:optional (system (%current-system)))
   "Return the derivation for SYSTEM of the default Guile package used to run
-- 
Efraim Flashner   <efraim@HIDDEN>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted





Information forwarded to guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN, rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN, guix-patches@HIDDEN:
bug#70303; Package guix-patches. Full text available.

Message received at 70303 <at> debbugs.gnu.org:


Received: (at 70303) by debbugs.gnu.org; 9 Apr 2024 10:07:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 09 06:07:25 2024
Received: from localhost ([127.0.0.1]:48332 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ru8Nv-0008Ec-Cs
	for submit <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:07:25 -0400
Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]:51442)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <efraim.flashner@HIDDEN>) id 1ru8Nt-0008DV-2U
 for 70303 <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:07:22 -0400
Received: by mail-wm1-x32e.google.com with SMTP id
 5b1f17b1804b1-41663330f9dso13828255e9.2
 for <70303 <at> debbugs.gnu.org>; Tue, 09 Apr 2024 03:07:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1712657227; x=1713262027; darn=debbugs.gnu.org;
 h=content-transfer-encoding:mime-version:references:in-reply-to
 :message-id:date:subject:cc:to:from:sender:from:to:cc:subject:date
 :message-id:reply-to;
 bh=iYeo193M09XZw9GmqZfnDBoHwx8WW3qktRYAh8/kTlA=;
 b=EIzEJLy3V4FzxsTrVzf83vbzPJfQ8nvigxkwld97RYyRIWSuaVaVJ1bJBNGHhoIbUu
 8D0tAo3Umv95rBYzKrwgrEEeorE7y4VNxsQZn40eHw95RJ9yKPPkSD9eJ08YO51ELyMx
 LBQGohmUApEX1U7IrMY1fQ3y9h4wnvZkY1/WXlsUAnV9E1hiiWLuajFo4qz5RqgVwDJL
 /Ugw5244fZU+fbRe0asvbg1kAFCE+AS8N/YbutuHw0g+fBnhlVwRIEcihQcbKq8xH/G3
 H1/TLrwXUs4rqGdN7Ffthi9zmQi6kjuaE9Ji2xoEivHGqS9UKV/VmYAiJx6B4rb37Mt6
 u11A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1712657227; x=1713262027;
 h=content-transfer-encoding:mime-version:references:in-reply-to
 :message-id:date:subject:cc:to:from:sender:x-gm-message-state:from
 :to:cc:subject:date:message-id:reply-to;
 bh=iYeo193M09XZw9GmqZfnDBoHwx8WW3qktRYAh8/kTlA=;
 b=XRjalShi5eMcexfYDu5a4baRt1x8karYm7ElztuA55HGCejjmtFRhPY83KfZPTJyzV
 YJhhgbmNg/F6DZnikA137dQWtxnjMh35/FezCWI6cxoHJQUpTZlF72uxbHpb/MMKBzw0
 20SBcTQKiqwNYf9mFZ3byT3Ha+GSV/FewwwUMwPKCo7/UIwQFlA1nOXU2DC02vmxJNGs
 a/sJJsPuYVveSTl/TonIhyGuP1ePSulEtUH8v0Wm8qv0rElTcPPGNmtqr7H2sEV6AjYI
 5EKM6/QJa3Cr0UFkFDegg0AiZIe7GyNUSUbtsOKQ4T3iskihY/Vqx2iy9j6/7s/vvPk/
 6fGg==
X-Gm-Message-State: AOJu0YwX6PWF6iVCXgKrfsk4EaXEwRW58ih8aEjoqZ/7FBQlTlDULkEJ
 vNXuRH/DaX8taYOwhfJJVZOx5Yds78D8gvuvkkW92qDsBPsugx8dkLXjZhFzNHg=
X-Google-Smtp-Source: AGHT+IHpjKRnPV2eI7HZfpSjSVxhx8JJNlKn/40L+C49Pj8y13GT47OVs0yb7POmKnr6X18GoFFJLQ==
X-Received: by 2002:a05:600c:5253:b0:416:7396:6b14 with SMTP id
 fc19-20020a05600c525300b0041673966b14mr2980476wmb.5.1712657226717; 
 Tue, 09 Apr 2024 03:07:06 -0700 (PDT)
Received: from localhost ([141.226.11.200]) by smtp.gmail.com with ESMTPSA id
 o13-20020a5d58cd000000b00341b7d5054bsm11133842wrf.72.2024.04.09.03.07.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 09 Apr 2024 03:07:06 -0700 (PDT)
From: Efraim Flashner <efraim@HIDDEN>
To: 70303 <at> debbugs.gnu.org
Subject: [PATCH 1/2] graft: Remove work-around for old guile.
Date: Tue,  9 Apr 2024 13:06:55 +0300
Message-ID: <3d8f8f3135f69cc88a7d0575ce533d489239ede8.1712656502.git.efraim@HIDDEN>
X-Mailer: git-send-email 2.41.0
In-Reply-To: <cover.1712656502.git.efraim@HIDDEN>
References: <cover.1712656502.git.efraim@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.3 (/)
X-Debbugs-Envelope-To: 70303
Cc: Efraim Flashner <efraim@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

* guix/build/graft.scm (mkdir-p*): Remove function.
(rewrite-directory): Switch from mkdir-p* to mkdir-p.

Change-Id: Ib6a80648d271c19093c05af84acb967e069ccc19
---
 guix/build/graft.scm | 31 ++-----------------------------
 1 file changed, 2 insertions(+), 29 deletions(-)

diff --git a/guix/build/graft.scm b/guix/build/graft.scm
index 281dbaba6f..c8c7e33ab2 100644
--- a/guix/build/graft.scm
+++ b/guix/build/graft.scm
@@ -312,33 +312,6 @@ (define (exit-on-exception proc)
           (print-exception port #f key args)
           (primitive-exit 1))))))
 
-;; We need this as long as we support Guile < 2.0.13.
-(define* (mkdir-p* dir #:optional (mode #o755))
-  "This is a variant of 'mkdir-p' that works around
-<http://bugs.gnu.org/24659> by passing MODE explicitly in each 'mkdir' call."
-  (define absolute?
-    (string-prefix? "/" dir))
-
-  (define not-slash
-    (char-set-complement (char-set #\/)))
-
-  (let loop ((components (string-tokenize dir not-slash))
-             (root       (if absolute?
-                             ""
-                             ".")))
-    (match components
-      ((head tail ...)
-       (let ((path (string-append root "/" head)))
-         (catch 'system-error
-           (lambda ()
-             (mkdir path mode)
-             (loop tail path))
-           (lambda args
-             (if (= EEXIST (system-error-errno args))
-                 (loop tail path)
-                 (apply throw args))))))
-      (() #t))))
-
 (define* (rewrite-directory directory output mapping
                             #:optional (store (%store-directory)))
   "Copy DIRECTORY to OUTPUT, replacing strings according to MAPPING, a list of
@@ -387,7 +360,7 @@ (define* (rewrite-directory directory output mapping
   (define (rewrite-leaf file)
     (let ((stat (lstat file))
           (dest (destination file)))
-      (mkdir-p* (dirname dest))
+      (mkdir-p (dirname dest))
       (case (stat:type stat)
         ((symlink)
          (let ((target (readlink file)))
@@ -406,7 +379,7 @@ (define* (rewrite-directory directory output mapping
                                            store)
                  (chmod output (stat:perms stat)))))))
         ((directory)
-         (mkdir-p* dest))
+         (mkdir-p dest))
         (else
          (error "unsupported file type" stat)))))
 
-- 
Efraim Flashner   <efraim@HIDDEN>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted





Information forwarded to guix-patches@HIDDEN:
bug#70303; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 9 Apr 2024 10:04:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 09 06:04:41 2024
Received: from localhost ([127.0.0.1]:48315 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ru8LF-0007sx-Uz
	for submit <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:04:41 -0400
Received: from lists.gnu.org ([2001:470:142::17]:37340)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <efraim.flashner@HIDDEN>) id 1ru8LB-0007rN-79
 for submit <at> debbugs.gnu.org; Tue, 09 Apr 2024 06:04:37 -0400
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 <efraim.flashner@HIDDEN>)
 id 1ru8Kv-0005ii-FW
 for guix-patches@HIDDEN; Tue, 09 Apr 2024 06:04:17 -0400
Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <efraim.flashner@HIDDEN>)
 id 1ru8Kt-0002Kg-FZ
 for guix-patches@HIDDEN; Tue, 09 Apr 2024 06:04:17 -0400
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-416b606f3e3so958155e9.1
 for <guix-patches@HIDDEN>; Tue, 09 Apr 2024 03:04:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1712657051; x=1713261851; darn=gnu.org;
 h=content-transfer-encoding:mime-version:message-id:date:subject:cc
 :to:from:sender:from:to:cc:subject:date:message-id:reply-to;
 bh=CNvf12J4hH25EeC8eKVEbo5JR5RL4QcJsf0YU2AAMlw=;
 b=EA8xghWwcMGElpBdwJDVI0CDflvSJwmxp1z0uhmkl0VmmrjiHzh28eSDtZ60P/Vudv
 JdlOevZdXx8nEnIxZxjZVuIo+0cvE1NoZsbfQ9c3Sygir1Sauje8NRRpEJQeEavL7D8h
 vO/clVhFi71XY5YG4KerNkmRc1F6YcjA6jHQLei7ZFQx3HbxV8bl51wTlIw7bQB51ri1
 pWw9M31AY/ncp8n2TBwrCzUKQpCUKWKOEBaBeAbEkVT/zljrfcusLAZ5CuiOfgpuh2c9
 02EnaT8x0ZPOD5y2XYzDOLYhiReMw+yYIlQJh1J7hBjr30/A+br3DwuqxHm8567tzwbl
 eS0Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1712657051; x=1713261851;
 h=content-transfer-encoding:mime-version:message-id:date:subject:cc
 :to:from:sender:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=CNvf12J4hH25EeC8eKVEbo5JR5RL4QcJsf0YU2AAMlw=;
 b=JEYDTDLaI2gM3rW1dairGMwDtwcyAcf0ZXwVSStc3984r8Iv9PRTrs11aDNZXQvsPP
 LO2kGmrm/BDbibinXTzYQeifiyP/gCS1hJAO9RhRG/yrnqatsOckjMbM246LhxoqC0Uv
 roYtONFoqzgLeTcDIkDVASYz6wzmUuEeBl7hjU615y5PryOJt6ikFNg1iBqUzVZkzZas
 OanOWwbcdrYtC32c4Ss46qcC99KnE5Zw5Ee5YqGyZBcQXy+akhcoh5N8Vf7n4gjGNv+9
 Z8ieNMmjXQgydHeWFgWg2m1gxVv/l25crTXBJebk+nCXbSh7OEIHgLlzpvC1fJFSqrMn
 sNlA==
X-Gm-Message-State: AOJu0YysacGlPn6cFrqhl3R5M0nirnharSGYjsUaekVj6bSjpHJ366ax
 hWEc5UVFR5VP/HgMLrpAkDqvrlg151TymqoR8jmD9LU+fWoKJtso7pWXF+laKZY=
X-Google-Smtp-Source: AGHT+IH3EHojIR9NVytYdi/MVdoYLB0IjLn8TobEHJy1LOFjWxuMM6j3STZE5AKOcYvFqIoOHWoPMw==
X-Received: by 2002:a05:600c:c89:b0:416:b91c:f310 with SMTP id
 fj9-20020a05600c0c8900b00416b91cf310mr58424wmb.22.1712657051121; 
 Tue, 09 Apr 2024 03:04:11 -0700 (PDT)
Received: from localhost ([141.226.11.200]) by smtp.gmail.com with ESMTPSA id
 p14-20020a05600c358e00b0041674bf7d4csm6647892wmq.48.2024.04.09.03.04.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 09 Apr 2024 03:04:10 -0700 (PDT)
From: Efraim Flashner <efraim@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH 0/2] Use guile-final for grafting.
Date: Tue,  9 Apr 2024 13:03:58 +0300
Message-ID: <cover.1712656502.git.efraim@HIDDEN>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
X-Debbugs-Cc: Christopher Baines <guix@HIDDEN>, Josselin Poiret <dev@HIDDEN>, Ludovic Courtès <ludo@HIDDEN>, Mathieu Othacehe <othacehe@HIDDEN>, Ricardo Wurmus <rekado@HIDDEN>, Simon Tournier <zimon.toutoune@HIDDEN>, Tobias Geerinckx-Rice <me@HIDDEN>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=2a00:1450:4864:20::32c;
 envelope-from=efraim.flashner@HIDDEN; helo=mail-wm1-x32c.google.com
X-Spam_score_int: -17
X-Spam_score: -1.8
X-Spam_bar: -
X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.001,
 FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.248,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=no autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.2 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview:  Over the years the grafting code has changed bit by bit, with
 various attempts to speed it up. By switching the grafts to not use
 parallelism
 in rewriting the leaves we can finally switch the guile-fo [...] 
 Content analysis details:   (1.2 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 0.0 FREEMAIL_FROM          Sender email is commonly abused enduser mail
 provider (efraim.flashner[at]gmail.com)
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 -0.0 SPF_HELO_PASS          SPF: HELO matches SPF record
 0.2 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level
 mail domains are different
 0.0 FREEMAIL_FORGED_FROMDOMAIN 2nd level domains in From and
 EnvelopeFrom freemail headers are different
X-Debbugs-Envelope-To: submit
Cc: Efraim Flashner <efraim@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.2 (/)

Over the years the grafting code has changed bit by bit, with various
attempts to speed it up.  By switching the grafts to not use parallelism
in rewriting the leaves we can finally switch the guile-for-grafts to be
guile-final.  The segfault is still there if we perform the grafts in
parallel, but I believe it is fast enough that it should be fine to do
them sequentially.

There's probably room in replace-store-references in (guix build graft)
for changes if we're not going to use guile-2.0 here anymore.

There are also a number of default guiles in (guix grafts) which should
maybe be %guile-for-grafts instead of %guile-for-build.

Efraim Flashner (2):
  graft: Remove work-around for old guile.
  graft: Perform grafts with guile-final.

 guix/build/graft.scm | 55 +++++---------------------------------------
 guix/packages.scm    |  6 ++---
 2 files changed, 8 insertions(+), 53 deletions(-)


base-commit: 51de844a0ff6ea224367a384092896bce6848b9f
prerequisite-patch-id: ea387a4f9d860397a26c840c11c8742f0ac70fc3
-- 
Efraim Flashner   <efraim@HIDDEN>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted





Acknowledgement sent to Efraim Flashner <efraim@HIDDEN>:
New bug report received and forwarded. Copy sent to guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN, rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to guix@HIDDEN, dev@HIDDEN, ludo@HIDDEN, othacehe@HIDDEN, rekado@HIDDEN, zimon.toutoune@HIDDEN, me@HIDDEN, guix-patches@HIDDEN:
bug#70303; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 15 Apr 2024 20:45:04 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.