aboutsummaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-03-14 15:06:06 +0100
committerMarius Bakke <mbakke@fastmail.com>2019-03-14 15:06:06 +0100
commitebfe259f6682b43d7f0d3b57b525e25f97410052 (patch)
treee3f09eb6159168e1736f8a629286eb3d148917a9 /guix
parent47b3eed821cf86c350dc4b0fdbe75647cdc275b0 (diff)
parent8cc3983a4d02a15ad4a863671c1a5a8b2b542625 (diff)
downloadguix-ebfe259f6682b43d7f0d3b57b525e25f97410052.tar
guix-ebfe259f6682b43d7f0d3b57b525e25f97410052.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'guix')
-rw-r--r--guix/describe.scm31
-rw-r--r--guix/modules.scm4
-rw-r--r--guix/packages.scm16
3 files changed, 26 insertions, 25 deletions
diff --git a/guix/describe.scm b/guix/describe.scm
index c31199c9cd..00372bbed7 100644
--- a/guix/describe.scm
+++ b/guix/describe.scm
@@ -65,19 +65,28 @@ lives in, or #f if this is not applicable."
(let ((manifest (profile-manifest profile)))
(manifest-entries manifest))))))
-(define package-path-entries
+(define current-channel-entries
(mlambda ()
- "Return a list of package path entries to be added to the package search
-path. These entries are taken from the 'guix pull' profile the calling
-process lives in, when applicable."
- ;; Filter out Guix itself.
- (filter-map (lambda (entry)
- (and (not (string=? (manifest-entry-name entry)
- "guix"))
- (string-append (manifest-entry-item entry)
+ "Return manifest entries corresponding to extra channels--i.e., not the
+'guix' channel."
+ (remove (lambda (entry)
+ (string=? (manifest-entry-name entry) "guix"))
+ (current-profile-entries))))
+
+(define (package-path-entries)
+ "Return two values: the list of package path entries to be added to the
+package search path, and the list to be added to %LOAD-COMPILED-PATH. These
+entries are taken from the 'guix pull' profile the calling process lives in,
+when applicable."
+ ;; Filter out Guix itself.
+ (unzip2 (map (lambda (entry)
+ (list (string-append (manifest-entry-item entry)
"/share/guile/site/"
- (effective-version))))
- (current-profile-entries))))
+ (effective-version))
+ (string-append (manifest-entry-item entry)
+ "/lib/guile/" (effective-version)
+ "/site-ccache")))
+ (current-channel-entries))))
(define (package-provenance package)
"Return the provenance of PACKAGE as an sexp for use as the 'provenance'
diff --git a/guix/modules.scm b/guix/modules.scm
index 65928f67f2..1a6fafe35b 100644
--- a/guix/modules.scm
+++ b/guix/modules.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -112,7 +112,7 @@ depends on."
".scm"))
(define (guix-module-name? name)
- "Return true if NAME (a list of symbols) denotes a Guix or GuixSD module."
+ "Return true if NAME (a list of symbols) denotes a Guix module."
(match name
(('guix _ ...) #t)
(('gnu _ ...) #t)
diff --git a/guix/packages.scm b/guix/packages.scm
index 8515bb7c6f..f191327718 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -855,27 +855,19 @@ when CUT? returns true for a given package."
#:optional (rewrite-name identity))
"Return a procedure that, when passed a package, replaces its direct and
indirect dependencies (but not its implicit inputs) according to REPLACEMENTS.
-REPLACEMENTS is a list of package pairs or a promise thereof; the first
-element of each pair is the package to replace, and the second one is the
-replacement.
+REPLACEMENTS is a list of package pairs; the first element of each pair is the
+package to replace, and the second one is the replacement.
Optionally, REWRITE-NAME is a one-argument procedure that takes the name of a
package and returns its new name after rewrite."
(define (rewrite p)
- (match (assq-ref (if (promise? replacements)
- (force replacements)
- replacements)
- p)
+ (match (assq-ref replacements p)
(#f (package
(inherit p)
(name (rewrite-name (package-name p)))))
(new new)))
- (package-mapping rewrite
- (lambda (package)
- (assq package (if (promise? replacements)
- (force replacements)
- replacements)))))
+ (package-mapping rewrite (cut assq <> replacements)))
(define-syntax-rule (package/inherit p overrides ...)
"Like (package (inherit P) OVERRIDES ...), except that the same