summaryrefslogtreecommitdiff
path: root/guix/profiles.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-05-23 22:06:12 +0200
committerLudovic Courtès <ludo@gnu.org>2022-05-24 17:17:26 +0200
commit93f601d97ca2d9b82c41afeb86879ee37eae39e6 (patch)
treec218b627ba77f17263193a4fa78b6d0121d91233 /guix/profiles.scm
parentadf5ae5a412ed13302186dd4ce8e2df783d4515d (diff)
downloadguix-patches-93f601d97ca2d9b82c41afeb86879ee37eae39e6.tar
guix-patches-93f601d97ca2d9b82c41afeb86879ee37eae39e6.tar.gz
profiles: 'manifest->gexp' emits 'properties' field only when needed.
Partly fixes <https://issues.guix.gnu.org/55499>. Reported by Ricardo Wurmus <rekado@elephly.net>. For a profile built with: guix install r-seurat r-cistopic r-monocle3 r-cicero-monocle3 this reduces the size of the 'manifest' file from 6.4M to 5.6M (12%). * guix/profiles.scm (manifest->gexp)[entry->gexp]: When PROPERTIES is empty, do not emit a 'properties' field.
Diffstat (limited to 'guix/profiles.scm')
-rw-r--r--guix/profiles.scm8
1 files changed, 6 insertions, 2 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 3a547de492..bf50c00a1e 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -462,7 +462,9 @@ denoting a specific output of a package."
(propagated-inputs #$(map entry->gexp deps))
(search-paths #$(map search-path-specification->sexp
search-paths))
- (properties . #$properties)))
+ #$@(if (null? properties)
+ #~()
+ #~((properties . #$properties)))))
(($ <manifest-entry> name version output package
(deps ...) (search-paths ...) _ (properties ...))
#~(#$name #$version #$output
@@ -470,7 +472,9 @@ denoting a specific output of a package."
(propagated-inputs #$(map entry->gexp deps))
(search-paths #$(map search-path-specification->sexp
search-paths))
- (properties . #$properties)))))
+ #$@(if (null? properties)
+ #~()
+ #~((properties . #$properties)))))))
(match manifest
(($ <manifest> (entries ...))