From d34736c5c34e739c4e33a64cfa7871d689ba4780 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org>
Date: Tue, 12 Aug 2014 22:09:42 +0200
Subject: [PATCH] profiles: Adjust to unintended manifest format change.

Reported by Andreas Enge.

* guix/profiles.scm (sexp->manifest): Adjust to handle unintended format
  change introduced in 4ca0b41.
---
 guix/profiles.scm | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/guix/profiles.scm b/guix/profiles.scm
index c7aec7909b4..e921566e5a9 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -158,12 +158,20 @@ (define (sexp->manifest sexp)
                 ('packages ((name version output path deps) ...)))
      (manifest
       (map (lambda (name version output path deps)
-             (manifest-entry
-              (name name)
-              (version version)
-              (output output)
-              (item path)
-              (dependencies deps)))
+             ;; Up to Guix 0.7 included, dependencies were listed as ("gmp"
+             ;; "/gnu/store/...-gmp") for instance.  Discard the 'label' in
+             ;; such lists.
+             (let ((deps (match deps
+                           (((labels directories) ...)
+                            directories)
+                           ((directories ...)
+                            directories))))
+               (manifest-entry
+                 (name name)
+                 (version version)
+                 (output output)
+                 (item path)
+                 (dependencies deps))))
            name version output path deps)))
 
     (_
-- 
GitLab