[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
09/10: profiles: Add 'properties' field to manifest entries.
From: |
Ludovic Courtès |
Subject: |
09/10: profiles: Add 'properties' field to manifest entries. |
Date: |
Sat, 9 Jun 2018 06:02:39 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit f6f2346f9b9387d449844fe5b3207ccbede069f4
Author: Ludovic Courtès <address@hidden>
Date: Sun May 13 18:48:22 2018 +0200
profiles: Add 'properties' field to manifest entries.
* guix/profiles.scm (<manifest-entry>)[properties]: New field.
(manifest->gexp)[entry->gexp]: Serialize it.
(sexp->manifest)[sexp->manifest-entry]: Deserialize it.
---
guix/profiles.scm | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 95a8f30..ebd7da2 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -78,6 +78,7 @@
manifest-entry-dependencies
manifest-entry-search-paths
manifest-entry-parent
+ manifest-entry-properties
manifest-pattern
manifest-pattern?
@@ -181,7 +182,9 @@
(search-paths manifest-entry-search-paths ; search-path-specification*
(default '()))
(parent manifest-entry-parent ; promise (#f | <manifest-entry>)
- (default (delay #f))))
+ (default (delay #f)))
+ (properties manifest-entry-properties ; list of symbol/value pairs
+ (default '())))
(define-record-type* <manifest-pattern> manifest-pattern
make-manifest-pattern
@@ -320,18 +323,20 @@ denoting a specific output of a package."
(define (entry->gexp entry)
(match entry
(($ <manifest-entry> name version output (? string? path)
- (deps ...) (search-paths ...))
+ (deps ...) (search-paths ...) _ (properties ...))
#~(#$name #$version #$output #$path
(propagated-inputs #$(map entry->gexp deps))
(search-paths #$(map search-path-specification->sexp
- search-paths))))
+ search-paths))
+ (properties . #$properties)))
(($ <manifest-entry> name version output package
- (deps ...) (search-paths ...))
+ (deps ...) (search-paths ...) _ (properties ...))
#~(#$name #$version #$output
(ungexp package (or output "out"))
(propagated-inputs #$(map entry->gexp deps))
(search-paths #$(map search-path-specification->sexp
- search-paths))))))
+ search-paths))
+ (properties . #$properties)))))
(match manifest
(($ <manifest> (entries ...))
@@ -394,7 +399,9 @@ procedure is here for backward-compatibility and will
eventually vanish."
(dependencies deps*)
(search-paths (map sexp->search-path-specification
search-paths))
- (parent parent))))
+ (parent parent)
+ (properties (or (assoc-ref extra-stuff 'properties)
+ '())))))
entry))))
(match sexp
- branch master updated (d6fb098 -> 77a1aac), Ludovic Courtès, 2018/06/09
- 05/10: ui: Avoid #:select'ing bindings introduced in the latest (guix build utils)., Ludovic Courtès, 2018/06/09
- 06/10: system: Honor ~/.config/guix/current in /etc/profile., Ludovic Courtès, 2018/06/09
- 07/10: profiles: Add '%current-profile', 'user-friendly-profile', & co., Ludovic Courtès, 2018/06/09
- 10/10: pull: Record the URL, branch, and commit as a manifest entry property., Ludovic Courtès, 2018/06/09
- 01/10: self: Produce a complete package with the 'guix' command., Ludovic Courtès, 2018/06/09
- 03/10: self: Compute and use locale data., Ludovic Courtès, 2018/06/09
- 08/10: packages: Add 'package-patched-vulnerabilities'., Ludovic Courtès, 2018/06/09
- 02/10: pull: Install the new Guix in a profile., Ludovic Courtès, 2018/06/09
- 04/10: self: Build the Info manual., Ludovic Courtès, 2018/06/09
- 09/10: profiles: Add 'properties' field to manifest entries.,
Ludovic Courtès <=