1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 13:10:33 +02:00

Define remote procedure interface in (guix remote-procedures).

* guix/store.scm (define-enumerate-type, operation-id)
(hash-algo, build-mode, gc-action): Remove.
(operation, define-operation): Remove.
(client-stub, define-client-stubs): New macros.
(%client-stubs): New variable.
<top level>: Call ‘visit-remote-procedures’.
(define-top-level-client-procedures): New macro.
<top level>: Call ‘define-top-level-client-procedures’.
(valid-path?, query-path-hash, query-path-info, ensure-path)
(find-roots, add-temp-root, add-indirect-root)
(references, referrers, valid-derivers, query-derivation-outputs)
(has-substitutes, substitutable-paths, substitutable-path-info)
(optimize-store, import-paths, query-failed-paths)
(clear-failed-paths, hash-path->path): Remove.
(set-build-options): Rewrite in terms of ‘set-options’.
(add-data-to-store): Rewrite in terms of ‘add-data-to-store/direct’.
(add-to-store, add-file-tree-to-store): Use ‘remote-procedure-id’ instead of
‘operation-id’.
(build-things): Rewrite in terms of ‘build-things/direct’.
(%built-in-builders): Rewrite in terms of ‘built-in-builders/direct’.
(verify-store): Rewrite in terms of ‘verify-store/direct’.
(run-gc): Rewrite in terms of ‘run-gc/direct’.
(export-path): Rewrite in terms of ‘export-path/direct’.
(substitute-urls): Rewrite in terms of ’substitute-urls/direct’.
* guix/remote-procedures.scm: New file.
* Makefile.am (MODULES): Add it.

Change-Id: I78b3d47e34205e8f8b93a51b273f56edc46e3902
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Ludovic Courtès
2025-11-20 17:04:34 +01:00
parent b67831bb6e
commit 68f1f74fb8
3 changed files with 545 additions and 372 deletions

View File

@@ -116,6 +116,7 @@ MODULES = \
guix/narinfo.scm \
guix/derivations.scm \
guix/grafts.scm \
guix/remote-procedures.scm \
guix/repl.scm \
guix/rpm.scm \
guix/transformations.scm \