guix-commits
[Top][All Lists]
Advanced

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

03/03: profiles: Output in 'package->manifest-entry' defaults to "out".


From: Ludovic Courtès
Subject: 03/03: profiles: Output in 'package->manifest-entry' defaults to "out".
Date: Tue, 26 Jul 2016 16:21:19 +0000 (UTC)

civodul pushed a commit to branch master
in repository guix.

commit 9e90fc771386a288e1bcf032edbb75bbfc472e7c
Author: Ludovic Courtès <address@hidden>
Date:   Tue Jul 26 18:18:53 2016 +0200

    profiles: Output in 'package->manifest-entry' defaults to "out".
    
    Fixes <http://bugs.gnu.org/24029>.
    Reported by Dylan Jeffers <address@hidden>.
    
    * guix/profiles.scm (package->manifest-entry): Change #:output to
    default to "out".
    (packages->manifest): Add 'package?' in second 'match' clause.
    * tests/profiles.scm ("package->manifest-entry defaults to \"out\""):
    New test.
---
 guix/profiles.scm  |   11 +++++------
 tests/profiles.scm |   10 ++++++++++
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/guix/profiles.scm b/guix/profiles.scm
index 1adb143..db807a8 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -163,9 +163,8 @@
         (call-with-input-file file read-manifest)
         (manifest '()))))
 
-(define* (package->manifest-entry package #:optional output)
-  "Return a manifest entry for the OUTPUT of package PACKAGE.  When OUTPUT is
-omitted or #f, use the first output of PACKAGE."
+(define* (package->manifest-entry package #:optional (output "out"))
+  "Return a manifest entry for the OUTPUT of package PACKAGE."
   (let ((deps (map (match-lambda
                     ((label package)
                      (gexp-input package))
@@ -175,7 +174,7 @@ omitted or #f, use the first output of PACKAGE."
     (manifest-entry
      (name (package-name package))
      (version (package-version package))
-     (output (or output (car (package-outputs package))))
+     (output output)
      (item package)
      (dependencies (delete-duplicates deps))
      (search-paths (package-transitive-native-search-paths package)))))
@@ -188,8 +187,8 @@ denoting a specific output of a package."
    (map (match-lambda
          ((package output)
           (package->manifest-entry package output))
-         (package
-           (package->manifest-entry package)))
+         ((? package? package)
+          (package->manifest-entry package)))
         packages)))
 
 (define (manifest->gexp manifest)
diff --git a/tests/profiles.scm b/tests/profiles.scm
index fc1dfd2..028d7b6 100644
--- a/tests/profiles.scm
+++ b/tests/profiles.scm
@@ -207,6 +207,16 @@
                                        #:hooks '())))
     (return (derivation-inputs drv))))
 
+(test-assert "package->manifest-entry defaults to \"out\""
+  (let ((outputs (package-outputs packages:glibc)))
+    (equal? (manifest-entry-output
+             (package->manifest-entry (package
+                                        (inherit packages:glibc)
+                                        (outputs (reverse outputs)))))
+            (manifest-entry-output
+             (package->manifest-entry packages:glibc))
+            "out")))
+
 (test-assertm "profile-manifest, search-paths"
   (mlet* %store-monad
       ((guile ->   (package



reply via email to

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