From eef6cb11a923458cba50bbc4e6440c0b2f372da2 Mon Sep 17 00:00:00 2001 From: Maxime Devos Date: Tue, 3 Aug 2021 13:50:49 +0200 Subject: [PATCH 1/2] build-system/copy: Support #:allowed-references. * guix/build-system/copy.scm (copy-build): Add #:allowed-references argument. (copy-build)[canonicalize-reference]: New procedure. --- guix/build-system/copy.scm | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/guix/build-system/copy.scm b/guix/build-system/copy.scm index d1bf8fb654..1cd0a95150 100644 --- a/guix/build-system/copy.scm +++ b/guix/build-system/copy.scm @@ -92,8 +92,22 @@ (system (%current-system)) (imported-modules %copy-build-system-modules) (modules '((guix build copy-build-system) - (guix build utils)))) + (guix build utils))) + allowed-references) "Build SOURCE using INSTALL-PLAN, and with INPUTS." + ;; XXX: procedure copied from (guix build-system gnu) + (define canonicalize-reference + (match-lambda + ((? package? p) + (derivation->output-path (package-derivation store p system + #:graft? #f))) + (((? package? p) output) + (derivation->output-path (package-derivation store p system + #:graft? #f) + output)) + ((? string? output) + output))) + (define builder `(begin (use-modules ,@modules) @@ -131,6 +145,10 @@ #:system system #:inputs inputs #:modules imported-modules + #:allowed-references + (and allowed-references + (map canonicalize-reference + allowed-references)) #:outputs outputs #:guile-for-build guile-for-build)) -- 2.32.0