guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#26757: [PATCH 1/2] profiles: Add manifest->packages.


From: Mathieu Othacehe
Subject: bug#26757: [PATCH 1/2] profiles: Add manifest->packages.
Date: Wed, 3 May 2017 13:29:55 +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






reply via email to

[Prev in Thread] Current Thread [Next in Thread]