GNU bug report logs

#79224 [PATCH 00/43] Extend bag-build to gexps.

PackageSource(s)Maintainer(s)
guix-patches PTS Buildd Popcon
Reply or subscribe to this bug. View this bug as an mbox, status mbox, or maintainer mbox

Report forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 08:59:02 GMT) (full text, mbox, link).


Acknowledgement sent to Nicolas Graves <ngraves@ngraves.fr>:
New bug report received and forwarded. Copy sent to guix-patches@gnu.org. (Tue, 12 Aug 2025 08:59:02 GMT) (full text, mbox, link).


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

From: Nicolas Graves <ngraves@ngraves.fr>
To: guix-patches@gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 00/43] Extend bag-build to gexps.
Date: Tue, 12 Aug 2025 10:55:58 +0200
I'm sending it there to hopefully get some guix-data-service info about this change.

Nicolas Graves (43):
  guix: packages: Extend bag-build to support gexp.
  build-system: gnu: Redefine gnu-build and gnu-cross-build.
  build-system: agda: Redefine agda-build.
  build-system: android-ndk: Redefine gnu-build.
  build-system: ant: Redefine ant-build.
  build-system: asdf: Redefine asdf-build.
  build-system: cargo: Redefine cargo-build and cargo-cross-build.
  build-system: chicken: Redefine chicken-build.
  build-system: clojure: Redefine clojure-build.
  build-system: cmake: Redefine cmake-build and cmake-cross-build.
  build-system: composer: Redefine composer-build.
  build-system: copy: Redefine copy-build.
  build-system: dub: Redefine dub-build.
  build-system: dune: Redefine dune-build.
  build-system: elm: Redefine elm-build.
  build-system: emacs: Redefine emacs-build.
  build-system: font: Redefine font-build.
  build-system: glib-or-gtk: Redefine glib-or-gtk-build functions.
  build-system: go: Redefine go-build and go-cross-build.
  build-system: guile: Redefine guile-build and guile-cross-build.
  build-system: haskell: Redefine haskell-build.
  build-system: julia: Redefine julia-build.
  build-system: linux-module: Redefine linux-module-build functions.
  build-system: maven: Redefine maven-build.
  build-system: meson: Redefine meson-build and meson-cross-build.
  build-system: minify: Redefine minify-build.
  build-system: mix: Redefine mix-build.
  build-system: node: Redefine node-build.
  build-system: ocaml: Redefine ocaml-build.
  build-system: perl: Redefine perl-build and perl-cross-build.
  build-system: pyproject: Redefine pyproject-build.
  build-system: python: Redefine python-build.
  build-system: qt: Redefine qt-build and qt-cross-build.
  build-system: r: Redefine r-build.
  build-system: rakudo: Redefine rakudo-build.
  build-system: rebar: Redefine rebar-build.
  build-system: renpy: Redefine renpy-build.
  build-system: ruby: Redefine ruby-build.
  build-system: scons: Redefine scons-build.
  build-system: texlive: Redefine texlive-build.
  build-system: tree-sitter: Redefine tree-sitter-build functions.
  build-system: vim: Redefine vim-build.
  build-system: zig: Redefine zig-build.

 guix/build-system.scm              |  2 +-
 guix/build-system/agda.scm         |  8 ++---
 guix/build-system/android-ndk.scm  |  8 ++---
 guix/build-system/ant.scm          |  8 ++---
 guix/build-system/asdf.scm         |  8 ++---
 guix/build-system/cargo.scm        | 19 ++++-------
 guix/build-system/chicken.scm      |  8 ++---
 guix/build-system/clojure.scm      |  8 ++---
 guix/build-system/cmake.scm        | 27 ++++-----------
 guix/build-system/composer.scm     |  9 +++--
 guix/build-system/copy.scm         | 11 ++-----
 guix/build-system/dub.scm          |  8 ++---
 guix/build-system/dune.scm         |  9 +++--
 guix/build-system/elm.scm          |  8 ++---
 guix/build-system/emacs.scm        | 10 ++----
 guix/build-system/font.scm         | 10 ++----
 guix/build-system/glib-or-gtk.scm  | 26 ++++-----------
 guix/build-system/gnu.scm          | 26 +++------------
 guix/build-system/go.scm           | 21 ++++--------
 guix/build-system/guile.scm        | 21 +++---------
 guix/build-system/haskell.scm      |  8 ++---
 guix/build-system/julia.scm        |  8 ++---
 guix/build-system/linux-module.scm | 17 +++-------
 guix/build-system/maven.scm        |  8 ++---
 guix/build-system/meson.scm        | 25 +++-----------
 guix/build-system/minify.scm       |  8 ++---
 guix/build-system/mix.scm          | 12 ++-----
 guix/build-system/node.scm         |  8 ++---
 guix/build-system/ocaml.scm        |  9 +++--
 guix/build-system/perl.scm         | 22 ++++---------
 guix/build-system/pyproject.scm    | 15 +++------
 guix/build-system/python.scm       | 15 +++------
 guix/build-system/qt.scm           | 21 +++---------
 guix/build-system/r.scm            |  9 ++---
 guix/build-system/rakudo.scm       |  8 ++---
 guix/build-system/rebar.scm        | 12 ++-----
 guix/build-system/renpy.scm        |  8 ++---
 guix/build-system/ruby.scm         | 11 ++-----
 guix/build-system/scons.scm        |  9 +++--
 guix/build-system/texlive.scm      | 11 ++-----
 guix/build-system/tree-sitter.scm  | 16 +++------
 guix/build-system/vim.scm          | 15 +++------
 guix/build-system/zig.scm          |  8 ++---
 guix/packages.scm                  | 53 +++++++++++++++++++++++++-----
 44 files changed, 206 insertions(+), 385 deletions(-)

-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:03 GMT) (full text, mbox, link).


Message #8 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 02/43] build-system: gnu: Redefine gnu-build and gnu-cross-build.
Date: Tue, 12 Aug 2025 11:04:10 +0200
* guix/build-system/gnu.scm
(gnu-build): Monadic procedure returns a gexp instead of a derivation.
(gnu-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I6bf922ecd1474df104f959989db315d7ddc278b6
---
 guix/build-system/gnu.scm | 26 ++++----------------------
 1 file changed, 4 insertions(+), 22 deletions(-)

diff --git a/guix/build-system/gnu.scm b/guix/build-system/gnu.scm
index 8f0883956e3..865301a92cf 100644
--- a/guix/build-system/gnu.scm
+++ b/guix/build-system/gnu.scm
@@ -429,18 +429,8 @@ (define builder
                            #:strip-flags #$strip-flags
                            #:strip-directories #$strip-directories)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    ;; Note: Always pass #:graft? #f.  Without it, ALLOWED-REFERENCES &
-    ;; co. would be interpreted as referring to grafted packages.
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 
 ;;;
@@ -574,16 +564,8 @@ (define %outputs
                      #:strip-flags #$strip-flags
                      #:strip-directories #$strip-directories))))
 
-    (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+    (mbegin %store-monad
+      (return builder)))
 
 (define gnu-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:04 GMT) (full text, mbox, link).


Message #11 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 01/43] guix: packages: Extend bag-build to support gexp.
Date: Tue, 12 Aug 2025 11:04:09 +0200
Rationale: The goal of this proposition was to enable guix users to
edit build-system lower builders on-the-fly, which is currently not
possible.  This is done by keeping a higher-level representation of
the builder - a gexp rather than a derivation - as the bag-build
field.

* guix/build-system.scm (<bag>): Update comment.
* guix/packages.scm
(bag->derivation): Handle gexp bag-build. Rename current procedure to...
(bag-builder):... this procedure.
(bag->cross-derivation): Rename procedure to...
(bag-cross-builder):... this procedure.

Change-Id: I56c5a9dab9954307f95b29eab5e02ee058271684
---
 guix/build-system.scm |  2 +-
 guix/packages.scm     | 53 +++++++++++++++++++++++++++++++++++--------
 2 files changed, 45 insertions(+), 10 deletions(-)

diff --git a/guix/build-system.scm b/guix/build-system.scm
index 76d670995ce..a4dcdc52d85 100644
--- a/guix/build-system.scm
+++ b/guix/build-system.scm
@@ -79,7 +79,7 @@ (define-record-type* <bag> bag %make-bag
                  (default '("out")))
   (arguments     bag-arguments           ;list
                  (default '()))
-  (build         bag-build))             ;bag -> derivation
+  (build         bag-build))             ;bag -> gexp or derivation
 
 (define* (make-bag build-system name
                    #:key source (inputs '()) (native-inputs '())
diff --git a/guix/packages.scm b/guix/packages.scm
index 1d5986c5f42..1df9cb67f02 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2023 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2024 David Elsing <david.elsing@posteo.net>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -51,6 +52,7 @@ (define-module (guix packages)
   #:use-module (ice-9 match)
   #:use-module (ice-9 vlist)
   #:use-module (ice-9 regex)
+  #:use-module (ice-9 optargs)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-9 gnu)
   #:use-module (srfi srfi-26)
@@ -1967,12 +1969,12 @@ (define (input=? input1 input2)
                       (derivation=? obj1 obj2))
                  (equal? obj1 obj2))))))))
 
-(define* (bag->derivation bag #:optional context)
-  "Return the derivation to build BAG for SYSTEM.  Optionally, CONTEXT can be
-a package object describing the context in which the call occurs, for improved
-error reporting."
+(define* (bag-builder bag #:optional context)
+  "Return the gexp or derivation to build BAG for SYSTEM.  Optionally, CONTEXT
+can be a package object describing the context in which the call occurs, for
+improved error reporting."
   (if (bag-target bag)
-      (bag->cross-derivation bag)
+      (bag-cross-builder bag)
       (mlet* %store-monad ((system ->  (bag-system bag))
                            (inputs ->  (bag-transitive-inputs bag))
                            (input-drvs (mapm %store-monad
@@ -1994,10 +1996,10 @@ (define* (bag->derivation bag #:optional context)
                #:outputs (bag-outputs bag) #:system system
                (bag-arguments bag)))))
 
-(define* (bag->cross-derivation bag #:optional context)
-  "Return the derivation to build BAG, which is actually a cross build.
-Optionally, CONTEXT can be a package object denoting the context of the call.
-This is an internal procedure."
+(define* (bag-cross-builder bag #:optional context)
+  "Return the gexp or derivation to build BAG, which is actually a cross
+build. Optionally, CONTEXT can be a package object denoting the context of the
+call. This is an internal procedure."
   (mlet* %store-monad ((system ->   (bag-system bag))
                        (target ->   (bag-target bag))
                        (host ->     (bag-transitive-host-inputs bag))
@@ -2038,6 +2040,39 @@ (define* (bag->cross-derivation bag #:optional context)
            #:system system #:target target
            (bag-arguments bag))))
 
+(define* (bag->derivation bag #:optional context)
+  "Return the derivation to build BAG for SYSTEM.  Optionally, CONTEXT can be
+a package object describing the context in which the call occurs, for improved
+error reporting."
+  (mlet %store-monad ((builder (bag-builder bag context)))
+    (match builder
+      ((? derivation? drv)
+       (return drv))
+      ((? gexp? gexp)
+       (let-keywords (bag-arguments bag) #t
+                     ((allowed-references    #f)
+                      (disallowed-references #f)
+                      (guile                 #f)
+                      (substitutable?        #t))
+         (mlet %store-monad
+             ((guile (package->derivation (or guile (default-guile))
+                                          (bag-system bag)
+                                          #:graft? #f)))
+           ;; Note: Always pass #:graft? #f.  Without it, ALLOWED-REFERENCES &
+           ;; co. would be interpreted as referring to grafted packages.
+           (gexp->derivation (bag-name bag) gexp
+                             #:system (bag-system bag)
+                             #:target (and (bag-target bag))
+                             #:graft? #f
+                             #:substitutable? substitutable?
+                             #:allowed-references allowed-references
+                             #:disallowed-references disallowed-references
+                             #:guile-for-build guile))))
+      ;; build-bag has to be drv or gexp, else raise.
+      (_
+       (raise (condition (&package-error
+                          (package context))))))))
+
 (define bag->derivation*
   (store-lower bag->derivation))
 
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:04 GMT) (full text, mbox, link).


Message #14 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 03/43] build-system: agda: Redefine agda-build.
Date: Tue, 12 Aug 2025 11:04:11 +0200
* guix/build-system/agda.scm
(agda-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I3c21a043a0687f4776d44297ed3dd4697a606b40
---
 guix/build-system/agda.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/agda.scm b/guix/build-system/agda.scm
index ec6ad860e08..b33737ffa28 100644
--- a/guix/build-system/agda.scm
+++ b/guix/build-system/agda.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -108,11 +109,8 @@ (define builder
                       #:plan '#$plan
                       #:extra-files '#$extra-files))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define agda-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:05 GMT) (full text, mbox, link).


Message #17 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 04/43] build-system: android-ndk: Redefine gnu-build.
Date: Tue, 12 Aug 2025 11:04:12 +0200
* guix/build-system/android-ndk.scm
(android-ndk-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: If1737d77ebccd418ad461c91aff170273855ed45
---
 guix/build-system/android-ndk.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/android-ndk.scm b/guix/build-system/android-ndk.scm
index 565ec1d3632..b226866c102 100644
--- a/guix/build-system/android-ndk.scm
+++ b/guix/build-system/android-ndk.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -83,11 +84,8 @@ (define builder
                                                      search-paths))
                              #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad  ((guile (package->derivation (or guile (default-guile))
-                                                   system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (lower name
                 #:key source inputs native-inputs outputs system target
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:05 GMT) (full text, mbox, link).


Message #20 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 05/43] build-system: ant: Redefine ant-build.
Date: Tue, 12 Aug 2025 11:04:13 +0200
* guix/build-system/ant.scm
(ant-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I4f1152e29b938dbf37125bf156fb56b841011f06
---
 guix/build-system/ant.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/ant.scm b/guix/build-system/ant.scm
index 9816cc061c9..3ce919032fc 100644
--- a/guix/build-system/ant.scm
+++ b/guix/build-system/ant.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -144,11 +145,8 @@ (define builder
                                              search-paths))
                      #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad  ((guile (package->derivation (or guile (default-guile))
-                                                   system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define ant-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:06 GMT) (full text, mbox, link).


Message #23 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 06/43] build-system: asdf: Redefine asdf-build.
Date: Tue, 12 Aug 2025 11:04:14 +0200
* guix/build-system/asdf.scm
(asdf-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ifdd57c4e5279d110ee7c670090b3ae4089703659
---
 guix/build-system/asdf.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/asdf.scm b/guix/build-system/asdf.scm
index 5ce63d106fd..a4ff851dbb7 100644
--- a/guix/build-system/asdf.scm
+++ b/guix/build-system/asdf.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2022 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;; Copyright © 2025 jgart <jgart@dismail.de>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -329,11 +330,8 @@ (define builder
                                                   search-paths))
                           #:inputs #$(input-tuples->gexp inputs))))))
 
-    (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                    system #:graft? #f)))
-      (gexp->derivation name builder
-                        #:system system
-                        #:guile-for-build guile))))
+    (mbegin %store-monad
+      (return builder))))
 
 (define asdf-build-system/sbcl
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:06 GMT) (full text, mbox, link).


Message #26 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 07/43] build-system: cargo: Redefine cargo-build and cargo-cross-build.
Date: Tue, 12 Aug 2025 11:04:15 +0200
* guix/build-system/cargo.scm
(cargo-build): Monadic procedure returns a gexp instead of a derivation.
(cargo-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: If1151e9222170f2eb3a92d43debc61c696c2e72d
---
 guix/build-system/cargo.scm | 19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm
index 452f7f78d01..4d130ab7066 100644
--- a/guix/build-system/cargo.scm
+++ b/guix/build-system/cargo.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2021, 2024 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
 ;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -139,11 +140,8 @@ (define builder
                                           (map search-path-specification->sexp
                                                search-paths))))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target #f
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (cargo-cross-build name
                             #:key
@@ -205,14 +203,11 @@ (define builder
                                           (map search-path-specification->sexp
                                                search-paths))
                        #:native-search-paths '#$(sexp->gexp
-                                          (map search-path-specification->sexp
-                                               native-search-paths))))))
+                                                 (map search-path-specification->sexp
+                                                      native-search-paths))))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target target
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define (package-cargo-inputs p)
   (apply
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:07 GMT) (full text, mbox, link).


Message #29 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 08/43] build-system: chicken: Redefine chicken-build.
Date: Tue, 12 Aug 2025 11:04:16 +0200
* guix/build-system/chicken.scm
(chicken-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I6a837f198ac6c371b08f8690ff5bea68dbad2b54
---
 guix/build-system/chicken.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/chicken.scm b/guix/build-system/chicken.scm
index e6fcfa7ee30..5c4a7f45bba 100644
--- a/guix/build-system/chicken.scm
+++ b/guix/build-system/chicken.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2020 raingloom <raingloom@riseup.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -113,11 +114,8 @@ (define builder
                          #:tests? #$tests?
                          #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define chicken-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:08 GMT) (full text, mbox, link).


Message #32 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 09/43] build-system: clojure: Redefine clojure-build.
Date: Tue, 12 Aug 2025 11:04:17 +0200
* guix/build-system/clojure.scm
(clojure-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I5b5b552052cfffc45bc4d82871600b322eb23d85
---
 guix/build-system/clojure.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/clojure.scm b/guix/build-system/clojure.scm
index 037fcaf21d9..cddcf8304e6 100644
--- a/guix/build-system/clojure.scm
+++ b/guix/build-system/clojure.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 ;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -169,11 +170,8 @@ (define builder
                          #:system #$system
                          #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define clojure-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:08 GMT) (full text, mbox, link).


Message #35 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 10/43] build-system: cmake: Redefine cmake-build and cmake-cross-build.
Date: Tue, 12 Aug 2025 11:04:18 +0200
* guix/build-system/cmake.scm
(cmake-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I0c3ceb08391a38c52521416093d2c4b2ae869165
---
 guix/build-system/cmake.scm | 27 ++++++---------------------
 1 file changed, 6 insertions(+), 21 deletions(-)

diff --git a/guix/build-system/cmake.scm b/guix/build-system/cmake.scm
index b0587fddf02..ff67e8b6735 100644
--- a/guix/build-system/cmake.scm
+++ b/guix/build-system/cmake.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2025 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -147,7 +148,7 @@ (define* (cmake-build name inputs
                       disallowed-references)
   "Build SOURCE using CMAKE, and with INPUTS. This assumes that SOURCE
 provides a 'CMakeLists.txt' file as its build system."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -182,16 +183,8 @@ (define build
                              #:strip-flags #$strip-flags
                              #:strip-directories #$strip-directories)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 
 ;;;
@@ -290,16 +283,8 @@ (define %outputs
                        #:strip-flags #$strip-flags
                        #:strip-directories #$strip-directories))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define cmake-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:09 GMT) (full text, mbox, link).


Message #38 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 11/43] build-system: composer: Redefine composer-build.
Date: Tue, 12 Aug 2025 11:04:19 +0200
* guix/build-system/composer.scm
(composer-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ib7787a5116744e61e3d0afeac6d85f61c6b6c9c4
---
 guix/build-system/composer.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/composer.scm b/guix/build-system/composer.scm
index 48ad90f253e..ceb2bf68801 100644
--- a/guix/build-system/composer.scm
+++ b/guix/build-system/composer.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2023-2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,6 +19,7 @@
 
 (define-module (guix build-system composer)
   #:use-module (guix store)
+  #:use-module (guix monads)
   #:use-module (guix utils)
   #:use-module (guix derivations)
   #:use-module (guix search-paths)
@@ -151,11 +153,8 @@ (define builder
                    #:strip-flags #$strip-flags
                    #:strip-directories #$strip-directories))))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target #f
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define composer-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:09 GMT) (full text, mbox, link).


Message #41 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 12/43] build-system: copy: Redefine copy-build.
Date: Tue, 12 Aug 2025 11:04:20 +0200
* guix/build-system/copy.scm
(copy-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I96dfa099501796df007143db63a49e2adedbee92
---
 guix/build-system/copy.scm | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/guix/build-system/copy.scm b/guix/build-system/copy.scm
index 1f2937e0f18..ec0f3d95423 100644
--- a/guix/build-system/copy.scm
+++ b/guix/build-system/copy.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2021, 2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2023 Jonathan Brielmaier <jonathan.brielmaier@web.de>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -126,14 +127,8 @@ (define builder
                             #:strip-flags #$strip-flags
                             #:strip-directories #$strip-directories)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:substitutable? substitutable?
-                      #:graft? #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define copy-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:10 GMT) (full text, mbox, link).


Message #44 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 13/43] build-system: dub: Redefine dub-build.
Date: Tue, 12 Aug 2025 11:04:21 +0200
* guix/build-system/dub.scm
(dub-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I678a7287172157688b95cab00175e61852a99c58
---
 guix/build-system/dub.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/dub.scm b/guix/build-system/dub.scm
index 831a34af0d1..170f247e5d0 100644
--- a/guix/build-system/dub.scm
+++ b/guix/build-system/dub.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -93,11 +94,8 @@ (define builder
                                              search-paths))
                      #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (lower name
                 #:key source inputs native-inputs outputs system target
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:10 GMT) (full text, mbox, link).


Message #47 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 14/43] build-system: dune: Redefine dune-build.
Date: Tue, 12 Aug 2025 11:04:22 +0200
* guix/build-system/dune.scm
(dune-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I2a0a9a771afbe491538ed50aeb47b9fa4fd9341b
---
 guix/build-system/dune.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/dune.scm b/guix/build-system/dune.scm
index c45f3083493..990d94db0f6 100644
--- a/guix/build-system/dune.scm
+++ b/guix/build-system/dune.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2021, 2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 pukkamustard <pukkamustard@posteo.net>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,6 +22,7 @@
 
 (define-module (guix build-system dune)
   #:use-module (guix store)
+  #:use-module (guix monads)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (guix search-paths)
@@ -152,11 +154,8 @@ (define builder
                       #:strip-flags #$strip-flags
                       #:strip-directories #$strip-directories))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target #f
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define dune-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:11 GMT) (full text, mbox, link).


Message #50 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 15/43] build-system: elm: Redefine elm-build.
Date: Tue, 12 Aug 2025 11:04:23 +0200
* guix/build-system/elm.scm
(elm-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I9d45b254d5e8fdc337d075e7394e3354c9186ea6
---
 guix/build-system/elm.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/elm.scm b/guix/build-system/elm.scm
index 7405db3d985..aa842ca9c63 100644
--- a/guix/build-system/elm.scm
+++ b/guix/build-system/elm.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2022 Philip McGrath <philip@philipmcgrath.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -193,11 +194,8 @@ (define builder
                                         (map search-path-specification->sexp
                                              search-paths))
                      #:inputs #$(input-tuples->gexp inputs)))))
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define elm-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:12 GMT) (full text, mbox, link).


Message #53 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 16/43] build-system: emacs: Redefine emacs-build.
Date: Tue, 12 Aug 2025 11:04:24 +0200
* guix/build-system/emacs.scm
(emacs-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I89cc8c1171eef7c5e02e35df5e1298ce3813c1b5
---
 guix/build-system/emacs.scm | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/guix/build-system/emacs.scm b/guix/build-system/emacs.scm
index 61b9c171b44..607a1b84bcd 100644
--- a/guix/build-system/emacs.scm
+++ b/guix/build-system/emacs.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -120,13 +121,8 @@ (define builder
                                                search-paths))
                        #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define emacs-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:12 GMT) (full text, mbox, link).


Message #56 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 17/43] build-system: font: Redefine font-build.
Date: Tue, 12 Aug 2025 11:04:25 +0200
* guix/build-system/font.scm
(font-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I2a4838fc616e4ef8819b292d6842961284288867
---
 guix/build-system/font.scm | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/guix/build-system/font.scm b/guix/build-system/font.scm
index a4eeca00ca6..1cab4a4e9dd 100644
--- a/guix/build-system/font.scm
+++ b/guix/build-system/font.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2022 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -108,13 +109,8 @@ (define builder
                                                     search-paths))
                             #:inputs %build-inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define font-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:13 GMT) (full text, mbox, link).


Message #59 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 18/43] build-system: glib-or-gtk: Redefine glib-or-gtk-build functions.
Date: Tue, 12 Aug 2025 11:04:26 +0200
* guix/build-system/glib-or-gtk.scm
(glib-or-gtk-build): Monadic procedure returns a gexp instead of a derivation.
(glib-or-gtk-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I24f722e47f3ecce7132a7647b5689f6c10abbfd6
---
 guix/build-system/glib-or-gtk.scm | 26 ++++++--------------------
 1 file changed, 6 insertions(+), 20 deletions(-)

diff --git a/guix/build-system/glib-or-gtk.scm b/guix/build-system/glib-or-gtk.scm
index c912adab4aa..1320bb5c052 100644
--- a/guix/build-system/glib-or-gtk.scm
+++ b/guix/build-system/glib-or-gtk.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
 ;;; Copyright © 2014 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -149,7 +150,7 @@ (define* (glib-or-gtk-build name inputs
                             allowed-references
                             disallowed-references)
   "Build SOURCE with INPUTS.  See GNU-BUILD for more details."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -181,16 +182,8 @@ (define build
                                    #:strip-directories
                                    #$strip-directories)))))
 
-
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (glib-or-gtk-cross-build name
                                   #:key
@@ -275,15 +268,8 @@ (define %outputs
                              #:strip-directories
                              #$strip-directories))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define glib-or-gtk-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:13 GMT) (full text, mbox, link).


Message #62 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 19/43] build-system: go: Redefine go-build and go-cross-build.
Date: Tue, 12 Aug 2025 11:04:27 +0200
* guix/build-system/go.scm
(go-build): Monadic procedure returns a gexp instead of a derivation.
(go-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I5222463ee5c37f4cd987ac60b1cf2c46eeb79008
---
 guix/build-system/go.scm | 21 ++++++---------------
 1 file changed, 6 insertions(+), 15 deletions(-)

diff --git a/guix/build-system/go.scm b/guix/build-system/go.scm
index 90e63640c1a..f76d969e331 100644
--- a/guix/build-system/go.scm
+++ b/guix/build-system/go.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2024 Christina O'Donnell <cdo@mutix.org>
 ;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
 ;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -248,12 +249,8 @@ (define builder
                     #:allow-go-reference? #$allow-go-reference?
                     #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:substitutable? substitutable?
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (go-cross-build name
                          #:key
@@ -295,7 +292,7 @@ (define %build-host-inputs
 
           (define %build-target-inputs
             (append #$(input-tuples->gexp host-inputs)
-              #+(input-tuples->gexp target-inputs)))
+                    #+(input-tuples->gexp target-inputs)))
 
           (define %build-inputs
             (append %build-host-inputs %build-target-inputs))
@@ -333,14 +330,8 @@ (define %outputs
                     #:allow-go-reference? #$allow-go-reference?
                     #:inputs %build-inputs))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define go-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:14 GMT) (full text, mbox, link).


Message #65 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 20/43] build-system: guile: Redefine guile-build and guile-cross-build.
Date: Tue, 12 Aug 2025 11:04:28 +0200
* guix/build-system/guile.scm
(guile-build): Monadic procedure returns a gexp instead of a derivation.
(guile-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I60f2d7707f064ef6a678e8e47e21309d0eb545ef
---
 guix/build-system/guile.scm | 21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

diff --git a/guix/build-system/guile.scm b/guix/build-system/guile.scm
index 16e37eefd10..f196464feed 100644
--- a/guix/build-system/guile.scm
+++ b/guix/build-system/guile.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018-2019, 2021-2022 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -121,14 +122,8 @@ (define builder
                        #:search-paths '#$(map search-path-specification->sexp
                                               search-paths)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (guile-cross-build name
                             #:key
@@ -190,14 +185,8 @@ (define %outputs
                        #:make-dynamic-linker-cache? #f ;cross-compiling
                        #:phases #$phases))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define guile-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:14 GMT) (full text, mbox, link).


Message #68 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 21/43] build-system: haskell: Redefine haskell-build.
Date: Tue, 12 Aug 2025 11:04:29 +0200
* guix/build-system/haskell.scm
(haskell-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Iaa4e6af7a69a9bd2710572054b1f304a7701f113
---
 guix/build-system/haskell.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/haskell.scm b/guix/build-system/haskell.scm
index b0019dd0144..f734584cf5b 100644
--- a/guix/build-system/haskell.scm
+++ b/guix/build-system/haskell.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -178,11 +179,8 @@ (define builder
                                                        search-paths))
                                #:inputs #$(input-tuples->gexp inputs))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define haskell-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:15 GMT) (full text, mbox, link).


Message #71 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 22/43] build-system: julia: Redefine julia-build.
Date: Tue, 12 Aug 2025 11:04:30 +0200
* guix/build-system/julia.scm
(julia-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I34303f6cc1423e60f3aa8f66409ca0563e9876cb
---
 guix/build-system/julia.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/julia.scm b/guix/build-system/julia.scm
index e0987496838..57c403f4d07 100644
--- a/guix/build-system/julia.scm
+++ b/guix/build-system/julia.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2021 Jean-Baptiste Volatier <jbv@pm.me>
 ;;; Copyright © 2021, 2022 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -111,11 +112,8 @@ (define builder
                        #:julia-package-uuid #$julia-package-uuid
                        #:julia-package-dependencies #$julia-package-dependencies))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define julia-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:16 GMT) (full text, mbox, link).


Message #74 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 23/43] build-system: linux-module: Redefine linux-module-build functions.
Date: Tue, 12 Aug 2025 11:04:31 +0200
* guix/build-system/linux-module.scm
(linux-module-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I289c0c77a219445ae0c21f1a9709a67063b38f55
---
 guix/build-system/linux-module.scm | 17 +++++------------
 1 file changed, 5 insertions(+), 12 deletions(-)

diff --git a/guix/build-system/linux-module.scm b/guix/build-system/linux-module.scm
index d8ebef60d0c..a0d213abd58 100644
--- a/guix/build-system/linux-module.scm
+++ b/guix/build-system/linux-module.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -190,12 +191,8 @@ (define builder
                                     #:parallel-build? #$parallel-build?
                                     #:inputs #$(input-tuples->gexp inputs))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile
-                      #:substitutable? substitutable?)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (linux-module-build-cross
           name
@@ -250,12 +247,8 @@ (define %build-target-inputs
                               #:phases #$phases
                               #:tests? #$tests?))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile
-                      #:substitutable? substitutable?)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define linux-module-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:16 GMT) (full text, mbox, link).


Message #77 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 24/43] build-system: maven: Redefine maven-build.
Date: Tue, 12 Aug 2025 11:04:32 +0200
* guix/build-system/maven.scm
(maven-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ieb96bcdb1c654371279bd7295ea69e2dfad71175
---
 guix/build-system/maven.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/maven.scm b/guix/build-system/maven.scm
index 03e4e96b892..270fceb350a 100644
--- a/guix/build-system/maven.scm
+++ b/guix/build-system/maven.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2021, 2022 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -185,11 +186,8 @@ (define builder
                        #:strip-flags #$strip-flags
                        #:strip-directories #$strip-directories))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define maven-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:16 GMT) (full text, mbox, link).


Message #80 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 25/43] build-system: meson: Redefine meson-build and meson-cross-build.
Date: Tue, 12 Aug 2025 11:04:33 +0200
* guix/build-system/meson.scm
(meson-build): Monadic procedure returns a gexp instead of a derivation.
(meson-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Id801e757463080dbeedc05a43bd0b2ae23fae4c7
---
 guix/build-system/meson.scm | 25 +++++--------------------
 1 file changed, 5 insertions(+), 20 deletions(-)

diff --git a/guix/build-system/meson.scm b/guix/build-system/meson.scm
index 612e148fb64..a8a9ece9ef9 100644
--- a/guix/build-system/meson.scm
+++ b/guix/build-system/meson.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2021-2022, 2024 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -254,16 +255,8 @@ (define build-phases
                              #:strip-directories #$strip-directories
                              #:elf-directories #$(sexp->gexp elf-directories))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (meson-cross-build name
                             #:key
@@ -370,16 +363,8 @@ (define build-phases
                        #:strip-directories #$strip-directories
                        #:elf-directories #$(sexp->gexp elf-directories)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define meson-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:17 GMT) (full text, mbox, link).


Message #83 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 26/43] build-system: minify: Redefine minify-build.
Date: Tue, 12 Aug 2025 11:04:34 +0200
* guix/build-system/minify.scm
(minify-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ib009adcec6791d7145ce0d822745495dad9cf6e5
---
 guix/build-system/minify.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/minify.scm b/guix/build-system/minify.scm
index 98c6e75980d..56590f6819d 100644
--- a/guix/build-system/minify.scm
+++ b/guix/build-system/minify.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2018, 2023 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -97,11 +98,8 @@ (define builder
                                                 search-paths))
                         #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define minify-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:18 GMT) (full text, mbox, link).


Message #86 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 27/43] build-system: mix: Redefine mix-build.
Date: Tue, 12 Aug 2025 11:04:35 +0200
* guix/build-system/mix.scm
(mix-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I8a31c048d1458ece0f906023763b4585502f7710
---
 guix/build-system/mix.scm | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/guix/build-system/mix.scm b/guix/build-system/mix.scm
index 4a3ba9fb604..6de09f587fb 100644
--- a/guix/build-system/mix.scm
+++ b/guix/build-system/mix.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2023 Pierre-Henry Fröhring <contact@phfrohring.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -125,15 +126,8 @@ (define builder
                            #:inputs
                            %build-inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system
-                                                  #:graft? #f)))
-    (gexp->derivation name
-                      builder
-                      #:system system
-                      #:graft? #f       ;consistent with 'gnu-build'
-                      #:target #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (lower name
                 #:key
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:18 GMT) (full text, mbox, link).


Message #89 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 28/43] build-system: node: Redefine node-build.
Date: Tue, 12 Aug 2025 11:04:36 +0200
* guix/build-system/node.scm
(node-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I507547e474c379c0f66dde15abad73787953e5e6
---
 guix/build-system/node.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/node.scm b/guix/build-system/node.scm
index cde0ccb60e5..995a46d3029 100644
--- a/guix/build-system/node.scm
+++ b/guix/build-system/node.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2021 Philip McGrath <philip@philipmcgrath.com>
 ;;; Copyright © 2024 Daniel Khodabakhsh <d.khodabakhsh@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -120,11 +121,8 @@ (define builder
                                                 search-paths))
                         #:inputs #$(input-tuples->gexp inputs))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define node-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:19 GMT) (full text, mbox, link).


Message #92 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 29/43] build-system: ocaml: Redefine ocaml-build.
Date: Tue, 12 Aug 2025 11:04:37 +0200
* guix/build-system/ocaml.scm
(ocaml-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ib525ddc1df03b33b95a433dd2add79405f611f94
---
 guix/build-system/ocaml.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/ocaml.scm b/guix/build-system/ocaml.scm
index 2f2e6dd62e0..cd4c8770486 100644
--- a/guix/build-system/ocaml.scm
+++ b/guix/build-system/ocaml.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2021-2022 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,6 +20,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 (define-module (guix build-system ocaml)
   #:use-module (guix store)
+  #:use-module (guix monads)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (guix search-paths)
@@ -305,11 +307,8 @@ (define builder
                        #:strip-flags #$strip-flags
                        #:strip-directories #$strip-directories))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target #f
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define ocaml-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:19 GMT) (full text, mbox, link).


Message #95 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 30/43] build-system: perl: Redefine perl-build and perl-cross-build.
Date: Tue, 12 Aug 2025 11:04:38 +0200
* guix/build-system/perl.scm
(perl-build): Monadic procedure returns a gexp instead of a derivation.
(perl-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Id54ae050c2b64269ea42ec9f89d9c3a84ad4429a
---
 guix/build-system/perl.scm | 22 ++++++----------------
 1 file changed, 6 insertions(+), 16 deletions(-)

diff --git a/guix/build-system/perl.scm b/guix/build-system/perl.scm
index 98d48fec7c0..3f088fa6bfa 100644
--- a/guix/build-system/perl.scm
+++ b/guix/build-system/perl.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015, 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -120,7 +121,7 @@ (define* (perl-build name inputs
                                 (guix build utils))))
   "Build SOURCE using PERL, and with INPUTS.  This assumes that SOURCE
 provides a `Makefile.PL' file as its build system."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -146,14 +147,8 @@ (define build
                             #:parallel-tests? #$parallel-tests?
                             #:outputs %outputs
                             #:inputs %build-inputs)))))
-
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (perl-cross-build name #:key
                            source
@@ -211,13 +206,8 @@ (define builder
                       #:outputs #$(outputs->gexp outputs)
                       #:inputs #$inputs
                       #:native-inputs #+(input-tuples->gexp build-inputs)))))
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:graft? #false
-                      #:guile-for-build guile)))
+ (mbegin %store-monad
+    (return builder)))
 
 (define perl-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:20 GMT) (full text, mbox, link).


Message #98 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 31/43] build-system: pyproject: Redefine pyproject-build.
Date: Tue, 12 Aug 2025 11:04:39 +0200
* guix/build-system/pyproject.scm
(pyproject-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ia26001291b472c69c65647d8bddd1199f0ddc483
---
 guix/build-system/pyproject.scm | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/guix/build-system/pyproject.scm b/guix/build-system/pyproject.scm
index 4ad4dc79a1e..b39f27a2f0a 100644
--- a/guix/build-system/pyproject.scm
+++ b/guix/build-system/pyproject.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
 ;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -113,7 +114,7 @@ (define* (pyproject-build name inputs
                           allowed-references
                           disallowed-references)
   "Build SOURCE using PYTHON, and with INPUTS."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -138,16 +139,8 @@ (define build
                                          search-paths))
                  #:inputs %build-inputs)))))
 
-
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:graft? #f                 ;consistent with 'gnu-build'
-                      #:target #f
-                      #:guile-for-build guile
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define pyproject-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:20 GMT) (full text, mbox, link).


Message #101 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 32/43] build-system: python: Redefine python-build.
Date: Tue, 12 Aug 2025 11:04:40 +0200
* guix/build-system/python.scm
(python-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I1d270fa64192394072279f73ae0d77877d41f01c
---
 guix/build-system/python.scm | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/guix/build-system/python.scm b/guix/build-system/python.scm
index a51c033d01e..3c37ca11f12 100644
--- a/guix/build-system/python.scm
+++ b/guix/build-system/python.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -184,7 +185,7 @@ (define* (python-build name inputs
                        disallowed-references)
   "Build SOURCE using PYTHON, and with INPUTS.  This assumes that SOURCE
 provides a 'setup.py' file as its build system."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -206,15 +207,9 @@ (define build
                                                       search-paths))
                               #:inputs %build-inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:graft? #f                 ;consistent with 'gnu-build'
-                      #:target #f
-                      #:guile-for-build guile
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references)))
+
+  (mbegin %store-monad
+    (return builder)))
 
 (define python-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:06:21 GMT) (full text, mbox, link).


Message #104 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 33/43] build-system: qt: Redefine qt-build and qt-cross-build.
Date: Tue, 12 Aug 2025 11:04:41 +0200
* guix/build-system/qt.scm
(qt-build): Monadic procedure returns a gexp instead of a derivation.
(qt-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I194a9d1a7c7600af2e991e1efad627a9ced235d1
---
 guix/build-system/qt.scm | 21 +++++----------------
 1 file changed, 5 insertions(+), 16 deletions(-)

diff --git a/guix/build-system/qt.scm b/guix/build-system/qt.scm
index 84e008bfe79..09ddc1db3b8 100644
--- a/guix/build-system/qt.scm
+++ b/guix/build-system/qt.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
 ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
 ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -180,14 +181,8 @@ (define builder
                     #:strip-flags #$strip-flags
                     #:strip-directories #$strip-directories))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:graft? #f                 ;consistent with 'gnu-build'
-                      #:system system
-                      #:guile-for-build guile
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references)))
+  (mbegin %store-monad
+    (return builder)))
 
 
 ;;;
@@ -277,14 +272,8 @@ (define %outputs
                     #:strip-flags #$strip-flags
                     #:strip-directories #$strip-directories))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:graft? #f                 ;consistent with 'gnu-build'
-                      #:system system
-                      #:guile-for-build guile
-                      #:allowed-references allowed-references
-                      #:disallowed-references disallowed-references)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define qt-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:02 GMT) (full text, mbox, link).


Message #107 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 34/43] build-system: r: Redefine r-build.
Date: Tue, 12 Aug 2025 11:04:42 +0200
* guix/build-system/r.scm
(r-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I8f5a76eac6b65beba95852b7bf1645cd8a7b255a
---
 guix/build-system/r.scm | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm
index 4b4b3bf0c9a..9077080deec 100644
--- a/guix/build-system/r.scm
+++ b/guix/build-system/r.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -137,12 +138,8 @@ (define builder
                                            search-paths))
                    #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile
-                      #:substitutable? substitutable?)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define r-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:02 GMT) (full text, mbox, link).


Message #110 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 35/43] build-system: rakudo: Redefine rakudo-build.
Date: Tue, 12 Aug 2025 11:04:43 +0200
* guix/build-system/rakudo.scm
(rakudo-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I5f484023b8eb9806ed366e5fc596b844a61f524e
---
 guix/build-system/rakudo.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/rakudo.scm b/guix/build-system/rakudo.scm
index ee13c507913..6d4e9b9f6ee 100644
--- a/guix/build-system/rakudo.scm
+++ b/guix/build-system/rakudo.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -127,11 +128,8 @@ (define builder
                         #:outputs #$(outputs->gexp outputs)
                         #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define rakudo-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:03 GMT) (full text, mbox, link).


Message #113 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 37/43] build-system: renpy: Redefine renpy-build.
Date: Tue, 12 Aug 2025 11:04:45 +0200
* guix/build-system/renpy.scm
(renpy-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I20bf5af43fc9fc41fb2f36637e67d35136bf1606
---
 guix/build-system/renpy.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/renpy.scm b/guix/build-system/renpy.scm
index 015dd7c2104..f364da12084 100644
--- a/guix/build-system/renpy.scm
+++ b/guix/build-system/renpy.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2021 Leo Prikler <leo.prikler@student.tugraz.at>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -104,11 +105,8 @@ (define builder
                                                search-paths))
                        #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define renpy-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:03 GMT) (full text, mbox, link).


Message #116 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 38/43] build-system: ruby: Redefine ruby-build.
Date: Tue, 12 Aug 2025 11:04:46 +0200
* guix/build-system/ruby.scm
(ruby-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I8de0e2b382271e9ea09d2be9b6169ccfc792230b
---
 guix/build-system/ruby.scm | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/guix/build-system/ruby.scm b/guix/build-system/ruby.scm
index f258ade6e75..e1c0ecef4fa 100644
--- a/guix/build-system/ruby.scm
+++ b/guix/build-system/ruby.scm
@@ -88,7 +88,7 @@ (define* (ruby-build name inputs
                      (modules '((guix build ruby-build-system)
                                 (guix build utils))))
   "Build SOURCE using RUBY and INPUTS."
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@(sexp->gexp modules))
@@ -109,13 +109,8 @@ (define build
                                                     search-paths))
                             #:inputs %build-inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name build
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define ruby-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:04 GMT) (full text, mbox, link).


Message #119 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 36/43] build-system: rebar: Redefine rebar-build.
Date: Tue, 12 Aug 2025 11:04:44 +0200
* guix/build-system/rebar.scm
(rebar-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I7d4a29cfc1bedaa762e25deed41cc0eb802abb9f
---
 guix/build-system/rebar.scm | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/guix/build-system/rebar.scm b/guix/build-system/rebar.scm
index 7c7cc5870f8..4766eda9de4 100644
--- a/guix/build-system/rebar.scm
+++ b/guix/build-system/rebar.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -139,15 +140,8 @@ (define builder
                                               search-paths))
                       #:inputs %build-inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    ;; Note: Always pass #:graft? #f.  Without it, ALLOWED-REFERENCES &
-    ;; co. would be interpreted as referring to grafted packages.
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define rebar-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:04 GMT) (full text, mbox, link).


Message #122 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 39/43] build-system: scons: Redefine scons-build.
Date: Tue, 12 Aug 2025 11:04:47 +0200
* guix/build-system/scons.scm
(scons-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ic8c99d06ac53b2ba80a02a191d18de92e9c74e6b
---
 guix/build-system/scons.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
index e76c419b1e4..1b0dde0f489 100644
--- a/guix/build-system/scons.scm
+++ b/guix/build-system/scons.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,6 +19,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (guix build-system scons)
+  #:use-module (guix store)
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix monads)
@@ -117,11 +119,8 @@ (define builder
                                  (map search-path-specification->sexp
                                       search-paths)))))))
 
-  (gexp->derivation name builder
-                    #:system system
-                    #:target #f
-                    #:graft? #f
-                    #:guile-for-build guile))
+  (mbegin %store-monad
+    (return builder)))
 
 (define scons-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:05 GMT) (full text, mbox, link).


Message #125 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 40/43] build-system: texlive: Redefine texlive-build.
Date: Tue, 12 Aug 2025 11:04:48 +0200
* guix/build-system/texlive.scm
(texlive-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I00cc4e5647eec7e5cd7103ccd9ca0beb21361b3a
---
 guix/build-system/texlive.scm | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/guix/build-system/texlive.scm b/guix/build-system/texlive.scm
index 35587b50fc0..b5b687e4e46 100644
--- a/guix/build-system/texlive.scm
+++ b/guix/build-system/texlive.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2021-2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -151,14 +152,8 @@ (define builder
                                                   (map search-path-specification->sexp
                                                        search-paths)))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target #f
-                      #:graft? #f
-                      #:substitutable? substitutable?
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define texlive-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:05 GMT) (full text, mbox, link).


Message #128 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 41/43] build-system: tree-sitter: Redefine tree-sitter-build functions.
Date: Tue, 12 Aug 2025 11:04:49 +0200
* guix/build-system/tree-sitter.scm
(tree-sitter-build): Monadic procedure returns a gexp instead of a derivation.
(tree-sitter-cross-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: I761d0663a511deefd0626ad427be22df09b72894
---
 guix/build-system/tree-sitter.scm | 16 +++++-----------
 1 file changed, 5 insertions(+), 11 deletions(-)

diff --git a/guix/build-system/tree-sitter.scm b/guix/build-system/tree-sitter.scm
index 90d9704cb84..ce165788ec6 100644
--- a/guix/build-system/tree-sitter.scm
+++ b/guix/build-system/tree-sitter.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -127,11 +128,8 @@ (define builder
                                         search-paths))
                                #:inputs #$(input-tuples->gexp inputs))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (tree-sitter-cross-build name
                                   #:key
@@ -189,12 +187,8 @@ (define %build-inputs
                                     search-path-specification->sexp
                                     native-search-paths)))))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:target target
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define tree-sitter-build-system
   (build-system
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:06 GMT) (full text, mbox, link).


Message #131 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 42/43] build-system: vim: Redefine vim-build.
Date: Tue, 12 Aug 2025 11:04:50 +0200
* guix/build-system/vim.scm
(vim-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Iedbb15faac445f169cffa16397b357bc4f15c0f6
---
 guix/build-system/vim.scm | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/guix/build-system/vim.scm b/guix/build-system/vim.scm
index dddf7ea14b2..22c38aefcab 100644
--- a/guix/build-system/vim.scm
+++ b/guix/build-system/vim.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2022 Jonathan Scoresby <me@jonscoresby.com>
 ;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -120,7 +121,7 @@ (define* (vim-build name inputs
                     (modules '((guix build vim-build-system)
                                (guix build utils))))
 
-  (define build
+  (define builder
     (with-imported-modules imported-modules
       #~(begin
           (use-modules #$@modules)
@@ -151,16 +152,8 @@ (define build
                            #:strip-flags #$strip-flags
                            #:strip-directories #$strip-directories)))))
 
-  (mlet %store-monad
-        ((guile (package->derivation (or guile (default-guile))
-                                     system #:graft? #f)))
-        (gexp->derivation name
-                          build
-                          #:system system
-                          #:target #f
-                          #:graft? #f
-                          #:substitutable? substitutable?
-                          #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define vim-build-system
   (build-system (name 'vim)
-- 
2.50.1





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Tue, 12 Aug 2025 09:07:06 GMT) (full text, mbox, link).


Message #134 received at 79224@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: [PATCH 43/43] build-system: zig: Redefine zig-build.
Date: Tue, 12 Aug 2025 11:04:51 +0200
* guix/build-system/zig.scm
(zig-build): Monadic procedure returns a gexp instead of a derivation.

Change-Id: Ide64e7047d6e7127024471b311366f3cf8533e00
---
 guix/build-system/zig.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/zig.scm b/guix/build-system/zig.scm
index 5d95e0bec49..d9190b9aa4e 100644
--- a/guix/build-system/zig.scm
+++ b/guix/build-system/zig.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2023 Ekaitz Zarraga <ekaitz@elenq.tech>
+;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -93,11 +94,8 @@ (define builder
                                              search-paths))
                      #:inputs #$(input-tuples->gexp inputs)))))
 
-  (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
-                                                  system #:graft? #f)))
-    (gexp->derivation name builder
-                      #:system system
-                      #:guile-for-build guile)))
+  (mbegin %store-monad
+    (return builder)))
 
 (define* (zig-cross-build name
                           #:key
-- 
2.50.1





Information forwarded to guix@cbaines.net, dev@jpoiret.xyz, ludo@gnu.org, othacehe@gnu.org, zimon.toutoune@gmail.com, me@tobias.gr, guix-patches@gnu.org:
bug#79224; Package guix-patches. (Fri, 22 Aug 2025 13:50:03 GMT) (full text, mbox, link).


Message #137 received at submit@debbugs.gnu.org (full text, mbox, reply):

From: Simon Tournier <zimon.toutoune@gmail.com>
To: Nicolas Graves via Guix-patches via <guix-patches@gnu.org>, 79224@debbugs.gnu.org
Cc: Nicolas Graves <ngraves@ngraves.fr>
Subject: Re: [bug#79224] [PATCH 00/43] Extend bag-build to gexps.
Date: Fri, 22 Aug 2025 15:47:48 +0200
Hi Nicolas,

CC: core team

On Tue, 12 Aug 2025 at 10:55, Nicolas Graves via Guix-patches via <guix-patches@gnu.org> wrote:

> I'm sending it there to hopefully get some guix-data-service info
> about this change.

Have you sent this on Codeberg too?  Or only on guix-patches?

> Nicolas Graves (43):
>   guix: packages: Extend bag-build to support gexp.
>   build-system: gnu: Redefine gnu-build and gnu-cross-build.
>   build-system: agda: Redefine agda-build.
>   build-system: android-ndk: Redefine gnu-build.
>   build-system: ant: Redefine ant-build.
>   build-system: asdf: Redefine asdf-build.
>   build-system: cargo: Redefine cargo-build and cargo-cross-build.
>   build-system: chicken: Redefine chicken-build.
>   build-system: clojure: Redefine clojure-build.
>   build-system: cmake: Redefine cmake-build and cmake-cross-build.
>   build-system: composer: Redefine composer-build.
>   build-system: copy: Redefine copy-build.
>   build-system: dub: Redefine dub-build.
>   build-system: dune: Redefine dune-build.
>   build-system: elm: Redefine elm-build.
>   build-system: emacs: Redefine emacs-build.
>   build-system: font: Redefine font-build.
>   build-system: glib-or-gtk: Redefine glib-or-gtk-build functions.
>   build-system: go: Redefine go-build and go-cross-build.
>   build-system: guile: Redefine guile-build and guile-cross-build.
>   build-system: haskell: Redefine haskell-build.
>   build-system: julia: Redefine julia-build.
>   build-system: linux-module: Redefine linux-module-build functions.
>   build-system: maven: Redefine maven-build.
>   build-system: meson: Redefine meson-build and meson-cross-build.
>   build-system: minify: Redefine minify-build.
>   build-system: mix: Redefine mix-build.
>   build-system: node: Redefine node-build.
>   build-system: ocaml: Redefine ocaml-build.
>   build-system: perl: Redefine perl-build and perl-cross-build.
>   build-system: pyproject: Redefine pyproject-build.
>   build-system: python: Redefine python-build.
>   build-system: qt: Redefine qt-build and qt-cross-build.
>   build-system: r: Redefine r-build.
>   build-system: rakudo: Redefine rakudo-build.
>   build-system: rebar: Redefine rebar-build.
>   build-system: renpy: Redefine renpy-build.
>   build-system: ruby: Redefine ruby-build.
>   build-system: scons: Redefine scons-build.
>   build-system: texlive: Redefine texlive-build.
>   build-system: tree-sitter: Redefine tree-sitter-build functions.
>   build-system: vim: Redefine vim-build.
>   build-system: zig: Redefine zig-build.

What the core team think about this?

Cheers,
simon




Information forwarded to guix@cbaines.net, dev@jpoiret.xyz, ludo@gnu.org, othacehe@gnu.org, zimon.toutoune@gmail.com, me@tobias.gr, guix-patches@gnu.org:
bug#79224; Package guix-patches. (Fri, 22 Aug 2025 13:50:08 GMT) (full text, mbox, link).


Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Fri, 22 Aug 2025 18:28:02 GMT) (full text, mbox, link).


Message #143 received at submit@debbugs.gnu.org (full text, mbox, reply):

From: Nicolas Graves <ngraves@ngraves.fr>
To: Simon Tournier <zimon.toutoune@gmail.com>
Cc: 79224@debbugs.gnu.org, Nicolas Graves via Guix-patches via <guix-patches@gnu.org>
Subject: Re: [bug#79224] [PATCH 00/43] Extend bag-build to gexps.
Date: Fri, 22 Aug 2025 18:27:13 +0000 (UTC)
> Have you sent this on Codeberg too?  Or only on guix-patches?

On Codeberg: https://codeberg.org/guix/guix/pulls/133


> What the core team think about this?

I didn't manage to raise enough interest from the core team to really look into it.  I already presented the idea to Ludo at Guix Days ; Enge read and supported the idea more recently ; Andrew and Oleg have shown some interest, but I did not get a thorough review yet. 

Nicolas





Information forwarded to guix-patches@gnu.org:
bug#79224; Package guix-patches. (Fri, 22 Aug 2025 18:28:02 GMT) (full text, mbox, link).


Send a report that this bug log contains spam.


debbugs.gnu.org maintainers <help-debbugs@gnu.org>. Last modified: Mon Sep 8 15:51:17 2025; Machine Name: wallace-server

GNU bug tracking system

Debbugs is free software and licensed under the terms of the GNU Public License version 2. The current version can be obtained from https://bugs.debian.org/debbugs-source/.

Copyright © 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson, 2005-2017 Don Armstrong, and many other contributors.