[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#26652: [PATCH 1/2] profiles: Add manifest->packages.
From: |
Mathieu Othacehe |
Subject: |
bug#26652: [PATCH 1/2] profiles: Add manifest->packages. |
Date: |
Tue, 25 Apr 2017 15:00:23 +0200 |
* guix/profiles.scm (manifest->packages): New exported procedure.
---
guix/profiles.scm | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/guix/profiles.scm b/guix/profiles.scm
index eb172ef45..157445407 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2016 Chris Marusich <address@hidden>
;;; Copyright © 2017 Huang Ying <address@hidden>
;;; Copyright © 2017 Maxim Cournoyer <address@hidden>
+;;; Copyright © 2017 Mathieu Othacehe <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -94,6 +95,7 @@
profile-manifest
package->manifest-entry
packages->manifest
+ manifest->packages
ca-certificate-bundle
%default-profile-hooks
profile-derivation
@@ -203,6 +205,14 @@ denoting a specific output of a package."
(package->manifest-entry package)))
packages)))
+(define (manifest->packages manifest)
+ "Return the list of packages in MANIFEST."
+ (delete-duplicates
+ (filter-map (lambda (entry)
+ (let ((item (manifest-entry-item entry)))
+ (if (package? item) item #f)))
+ (manifest-entries manifest))))
+
(define (manifest->gexp manifest)
"Return a representation of MANIFEST as a gexp."
(define (entry->gexp entry)
--
2.12.2