civodul pushed a commit to branch master
in repository guix.

commit bea26837e8f010efde3fdf584f2a158676779ef3
Author: Ludovic Courtès <[email protected]>
Date:   Mon Dec 15 23:01:16 2014 +0100

    profiles: Fix removal of the next-to-last item in a profile.
    
    Fixes a bug whereby removing the next-to-last item in a profile would
    lead to an obscure error, as shown at
    <http://lists.gnu.org/archive/html/guix-devel/2014-12/msg00292.html>.
    Reported by Ricardo Wurmus <[email protected]>.
    
    * guix/profiles.scm (profile-derivation)[inputs]: Use (list info-dir
      "out") instead of just INFO-DIR.
---
 guix/profiles.scm |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/guix/profiles.scm b/guix/profiles.scm
index 2742ba8..44d7a31 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -414,7 +414,13 @@ INFO-DIR? is #f."
                                     (return #f))))
     (define inputs
       (if info-dir
-          (cons info-dir (manifest-inputs manifest))
+          ;; XXX: Here we use the tuple (INFO-DIR "out") just so that the list
+          ;; is unambiguous for the gexp code when MANIFEST has a single input
+          ;; denoted as a string (the pattern (DRV STRING) is normally
+          ;; interpreted in a gexp as "the STRING output of DRV".).  See
+          ;; 
<http://lists.gnu.org/archive/html/guix-devel/2014-12/msg00292.html>.
+          (cons (list info-dir "out")
+                (manifest-inputs manifest))
           (manifest-inputs manifest)))
 
     (define builder

Reply via email to