GNU bug report logs - #76109
[PATCH] doc: Mention --check --no-grafts as a way to force-rebuild packages.

Previous Next

Package: guix-patches;

Reported by: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>

Date: Thu, 6 Feb 2025 23:45:02 UTC

Severity: normal

Tags: patch

Done: Leo Famulari <leo <at> famulari.name>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 76109 in the body.
You can then email your comments to 76109 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to ludo <at> gnu.org, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org:
bug#76109; Package guix-patches. (Thu, 06 Feb 2025 23:45:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Rostislav Svoboda <rostislav.svoboda <at> gmail.com>:
New bug report received and forwarded. Copy sent to ludo <at> gnu.org, maxim.cournoyer <at> gmail.com, guix-patches <at> gnu.org. (Thu, 06 Feb 2025 23:45:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
To: guix-patches <at> gnu.org
Cc: Rostislav Svoboda <Rostislav.Svoboda <at> gmail.com>
Subject: [PATCH] doc: Mention --check --no-grafts as a way to force-rebuild
 packages.
Date: Fri,  7 Feb 2025 00:43:36 +0100
* doc/guix.texi (On Trusting Binaries): Document that combining --check and
--no-grafts with 'guix build' forces the rebuild of a package.

Change-Id: I4eb6be04243a52f70d0fc298f76e62f10e3d376e
---
 doc/guix.texi | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 9f1e4bf0f0..20d9debfbf 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -3978,7 +3978,10 @@ On Trusting Binaries
 challenge}).  Similarly, the @option{--check} option of @command{guix
 build} allows users to check whether previously-installed substitutes
 are genuine by rebuilding them locally (@pxref{build-check,
-@command{guix build --check}}).
+@command{guix build --check}}).  To force a full rebuild of a package
+(ignoring security updates via grafts), use @option{--check} together
+with @option{--no-grafts} (@pxref{Common Build Options,
+@option{--no-grafts}}).
 
 In the future, we want Guix to have support to publish and retrieve
 binaries to/from other users, in a peer-to-peer fashion.  If you would

base-commit: 3afa3aa73a35364f8c429334ac68f50f719f5b22
-- 
2.48.1





Information forwarded to guix-patches <at> gnu.org:
bug#76109; Package guix-patches. (Fri, 07 Feb 2025 00:06:02 GMT) Full text and rfc822 format available.

Message #8 received at 76109 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, 76109 <at> debbugs.gnu.org
Subject: Re: [bug#76109] [PATCH] doc: Mention --check --no-grafts as a way to
 force-rebuild packages.
Date: Thu, 6 Feb 2025 19:05:30 -0500
On Fri, Feb 07, 2025 at 12:43:36AM +0100, Rostislav Svoboda wrote:
> * doc/guix.texi (On Trusting Binaries): Document that combining --check and
> --no-grafts with 'guix build' forces the rebuild of a package.

Thanks, this is really useful information that most people have had to
learn by asking.

> +@command{guix build --check}}).  To force a full rebuild of a package
> +(ignoring security updates via grafts), use @option{--check} together
> +with @option{--no-grafts} (@pxref{Common Build Options,
> +@option{--no-grafts}}).

Grafts are not always present in the codebase (hard to believe, I know),
so can you adjust it to something like "(ignoring security updates via
grafts, which are often present)"?




Information forwarded to guix-patches <at> gnu.org:
bug#76109; Package guix-patches. (Fri, 07 Feb 2025 01:25:02 GMT) Full text and rfc822 format available.

Message #11 received at 76109 <at> debbugs.gnu.org (full text, mbox):

From: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
To: Leo Famulari <leo <at> famulari.name>
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, 76109 <at> debbugs.gnu.org
Subject: Re: [bug#76109] [PATCH] doc: Mention --check --no-grafts as a way to
 force-rebuild packages.
Date: Fri, 7 Feb 2025 02:23:20 +0100
[Message part 1 (text/plain, inline)]
Adjusted! A new patch is attached.

Le ven. 7 févr. 2025 à 01:05, Leo Famulari <leo <at> famulari.name> a écrit :
>
> On Fri, Feb 07, 2025 at 12:43:36AM +0100, Rostislav Svoboda wrote:
> > * doc/guix.texi (On Trusting Binaries): Document that combining --check and
> > --no-grafts with 'guix build' forces the rebuild of a package.
>
> Thanks, this is really useful information that most people have had to
> learn by asking.
>
> > +@command{guix build --check}}).  To force a full rebuild of a package
> > +(ignoring security updates via grafts), use @option{--check} together
> > +with @option{--no-grafts} (@pxref{Common Build Options,
> > +@option{--no-grafts}}).
>
> Grafts are not always present in the codebase (hard to believe, I know),
> so can you adjust it to something like "(ignoring security updates via
> grafts, which are often present)"?
[0001-doc-Mention-check-no-grafts-as-a-way-to-force-rebuil.patch (text/x-patch, attachment)]

Reply sent to Leo Famulari <leo <at> famulari.name>:
You have taken responsibility. (Fri, 07 Feb 2025 19:03:01 GMT) Full text and rfc822 format available.

Notification sent to Rostislav Svoboda <rostislav.svoboda <at> gmail.com>:
bug acknowledged by developer. (Fri, 07 Feb 2025 19:03:02 GMT) Full text and rfc822 format available.

Message #16 received at 76109-done <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, 76109-done <at> debbugs.gnu.org
Subject: Re: [bug#76109] [PATCH] doc: Mention --check --no-grafts as a way to
 force-rebuild packages.
Date: Fri, 7 Feb 2025 14:02:08 -0500
On Fri, Feb 07, 2025 at 02:23:20AM +0100, Rostislav Svoboda wrote:
> @@ -3978,7 +3978,11 @@ On Trusting Binaries
>  challenge}).  Similarly, the @option{--check} option of @command{guix
>  build} allows users to check whether previously-installed substitutes
>  are genuine by rebuilding them locally (@pxref{build-check,
> -@command{guix build --check}}).
> +@command{guix build --check}}).  To force a full rebuild of a package
> +(ignoring security updates via grafts, if any grafts exist—which is
> +not always the case), use @option{--check} together with
> +@option{--no-grafts} (@pxref{Common Build Options,
> +@option{--no-grafts}}).

I realized that it would be worthwhile to include a brief explanation of
why --no-grafts would be necessary here, so I wrote another sentence and
pushed as 8e9bceda87d55f475992ec5184590463ac7b5ffb

Thanks for recognizing the need for the documentation and making it
happen!




Information forwarded to guix-patches <at> gnu.org:
bug#76109; Package guix-patches. (Fri, 07 Feb 2025 19:35:02 GMT) Full text and rfc822 format available.

Message #19 received at 76109-done <at> debbugs.gnu.org (full text, mbox):

From: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
To: Leo Famulari <leo <at> famulari.name>
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, 76109-done <at> debbugs.gnu.org
Subject: Re: [bug#76109] [PATCH] doc: Mention --check --no-grafts as a way to
 force-rebuild packages.
Date: Fri, 7 Feb 2025 20:33:47 +0100
Le ven. 7 févr. 2025 à 20:02, Leo Famulari <leo <at> famulari.name> a écrit :
> I realized that it would be worthwhile to include a brief explanation of
> why --no-grafts would be necessary here, so I wrote another sentence and
> pushed as 8e9bceda87d55f475992ec5184590463ac7b5ffb

Thanks for the improvement, Leo.

> Thanks for recognizing the need for the documentation and making it
> happen!

I just asked at the "Guile & Guix Errors" session at FOSDEM 2025
during the Guix Days Fringe event, and Ludo shared this hack with me.

(For the record, until now, I have forced package rebuilds by putting
a dummy (write "...") or (format #t "...") in one of the user-defined
modify-phases.)

BTW, I feel like the whole explanation of what grafts and grafting are
could be made a bit clearer—with the help of a picture or something
similar. But that's something for another pull request.

Cheers, Bost




Information forwarded to guix-patches <at> gnu.org:
bug#76109; Package guix-patches. (Sat, 08 Feb 2025 20:15:02 GMT) Full text and rfc822 format available.

Message #22 received at 76109-done <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Rostislav Svoboda <rostislav.svoboda <at> gmail.com>
Cc: Ludovic Courtès <ludo <at> gnu.org>,
 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>, 76109-done <at> debbugs.gnu.org
Subject: Re: [bug#76109] [PATCH] doc: Mention --check --no-grafts as a way to
 force-rebuild packages.
Date: Sat, 8 Feb 2025 15:14:15 -0500
On Fri, Feb 07, 2025 at 08:33:47PM +0100, Rostislav Svoboda wrote:
> (For the record, until now, I have forced package rebuilds by putting
> a dummy (write "...") or (format #t "...") in one of the user-defined
> modify-phases.)

Right, we definitely needed to improve the documentation!

> BTW, I feel like the whole explanation of what grafts and grafting are
> could be made a bit clearer—with the help of a picture or something
> similar. But that's something for another pull request.

I just looked at the manual section Security Updates and, yes, I agree
we should have some illustrative / nicely-formatted-ASCII example of
grafting in the manual.

I seem to remember such a presentation on the subject some years ago,
probably soon after the current implementation of grafting was deployed.

Might be worth looking through the archives of Guix-related
presentations in our maintenance.git repository, or the FOSDEM
archives:

https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/talks

Ludovic, do you recall making a slideshow that illustrates grafting?




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 09 Mar 2025 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 101 days ago.

Previous Next


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