summaryrefslogtreecommitdiff
path: root/gnu/services/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-06-04 22:06:34 +0200
committerLudovic Courtès <ludo@gnu.org>2018-06-14 11:16:58 +0200
commit6892f0a247a06ac12c8c462692f8b3f93e872911 (patch)
treee1ecedc4e1c4cb11613550275c2846eb31a024c6 /gnu/services/base.scm
parentf8f9f7cabca3f0ea1f8b8cb4fecfc45889bdfb94 (diff)
downloadpatches-6892f0a247a06ac12c8c462692f8b3f93e872911.tar
patches-6892f0a247a06ac12c8c462692f8b3f93e872911.tar.gz
store-copy: 'read-reference-graph' returns a list of records.
The previous implementation of 'read-reference-graph' was good enough for many use cases, but it discarded the graph structure, which is useful information in some cases. * guix/build/store-copy.scm (<store-info>): New record type. (read-reference-graph): Rewrite to return a list of <store-info>. (closure-size, populate-store): Adjust accordingly. * gnu/services/base.scm (references-file): Adjust accordingly. * gnu/system/vm.scm (system-docker-image): Likewise. * guix/scripts/pack.scm (squashfs-image, docker-image): Likewise. * tests/gexp.scm ("gexp->derivation #:references-graphs"): Likewise.
Diffstat (limited to 'gnu/services/base.scm')
-rw-r--r--gnu/services/base.scm5
1 files changed, 3 insertions, 2 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index b34bb7132b..68411439db 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1592,8 +1592,9 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
(call-with-output-file #$output
(lambda (port)
- (write (call-with-input-file "graph"
- read-reference-graph)
+ (write (map store-info-item
+ (call-with-input-file "graph"
+ read-reference-graph))
port)))))
#:options `(#:local-build? #f
#:references-graphs (("graph" ,item))))