guix-commits
[Top][All Lists]
Advanced

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

01/02: guix package: '-s' displays different packages that have the same


From: Ludovic Courtès
Subject: 01/02: guix package: '-s' displays different packages that have the same location.
Date: Fri, 20 Mar 2015 21:07:39 +0000

civodul pushed a commit to branch master
in repository guix.

commit 9eeb3d8c28589cb3398c20593c4ea41a7cfb7249
Author: Ludovic Courtès <address@hidden>
Date:   Fri Mar 20 21:48:31 2015 +0100

    guix package: '-s' displays different packages that have the same location.
    
    Before that, 'guix package -s foobarbaz' would display only one package
    when several match but they have the same location (which is common when
    using 'inherit'.)
    
    The original rationale was given at
    <http://lists.gnu.org/archive/html/bug-guix/2013-01/msg00280.html> but
    it was arguably misguided because it led to "real" packages being
    hidden.
    
    Reported by Tomáš Čech <address@hidden>.
    
    * guix/scripts/package.scm (find-packages-by-description)[same-location?]:
      Remove.
      Remove call to 'delete-duplicates'.
---
 guix/scripts/package.scm |   36 +++++++++++++++---------------------
 1 files changed, 15 insertions(+), 21 deletions(-)

diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index a24c657..41db191 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -240,28 +240,22 @@ DURATION-RELATION with the current time."
 (define (find-packages-by-description rx)
   "Return the list of packages whose name, synopsis, or description matches
 RX."
-  (define (same-location? p1 p2)
-    ;; Compare locations of two packages.
-    (equal? (package-location p1) (package-location p2)))
-
-  (delete-duplicates
-   (sort
-    (fold-packages (lambda (package result)
-                     (define matches?
-                       (cut regexp-exec rx <>))
-
-                     (if (or (matches? (package-name package))
-                             (and=> (package-synopsis package)
-                                    (compose matches? P_))
-                             (and=> (package-description package)
-                                    (compose matches? P_)))
-                         (cons package result)
-                         result))
-                   '())
-    (lambda (p1 p2)
-      (string<? (package-name p1)
-                (package-name p2))))
-   same-location?))
+  (sort
+   (fold-packages (lambda (package result)
+                    (define matches?
+                      (cut regexp-exec rx <>))
+
+                    (if (or (matches? (package-name package))
+                            (and=> (package-synopsis package)
+                                   (compose matches? P_))
+                            (and=> (package-description package)
+                                   (compose matches? P_)))
+                        (cons package result)
+                        result))
+                  '())
+   (lambda (p1 p2)
+     (string<? (package-name p1)
+               (package-name p2)))))
 
 (define-syntax-rule (leave-on-EPIPE exp ...)
   "Run EXP... in a context when EPIPE errors are caught and lead to 'exit'



reply via email to

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