guix-commits
[Top][All Lists]
Advanced

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

02/14: self: Factorize package dependency enumeration.


From: guix-commits
Subject: 02/14: self: Factorize package dependency enumeration.
Date: Thu, 3 Dec 2020 10:25:20 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit fbb380a088cae8e64d85f0fb3eecebf02841eeaa
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Thu Dec 3 14:34:26 2020 +0100

    self: Factorize package dependency enumeration.
    
    * guix/self.scm (transitive-package-dependencies): New procedure.
    (compiled-guix)[dependencies]: Use it.
---
 guix/self.scm | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/guix/self.scm b/guix/self.scm
index e510596..c0de14b 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -777,6 +777,13 @@ Info manual."
                          (copy-recursively #$miscellany #$output
                                            #:log (%make-void-port "w")))))))
 
+(define (transitive-package-dependencies package)
+  "Return the list of packages propagated by PACKAGE, including PACKAGE
+itself."
+  (match (package-transitive-propagated-inputs package)
+    (((labels packages _ ...) ...)
+     (cons package packages))))
+
 (define* (compiled-guix source #:key (version %guix-version)
                         (pull-version 1)
                         (name (string-append "guix-" version))
@@ -818,14 +825,10 @@ Info manual."
     (specification->package "gnutls"))
 
   (define dependencies
-    (match (append-map (lambda (package)
-                         (cons (list "x" package)
-                               (package-transitive-propagated-inputs package)))
-                       (list guile-gcrypt gnutls guile-git guile-avahi
-                             guile-json guile-semver guile-ssh guile-sqlite3
-                             guile-zlib guile-lzlib))
-      (((labels packages _ ...) ...)
-       packages)))
+    (append-map transitive-package-dependencies
+                (list guile-gcrypt gnutls guile-git guile-avahi
+                      guile-json guile-semver guile-ssh guile-sqlite3
+                      guile-zlib guile-lzlib)))
 
   (define *core-modules*
     (scheme-node "guix-core"



reply via email to

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