diff options
author | Marius Bakke <mbakke@fastmail.com> | 2019-03-14 15:06:06 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2019-03-14 15:06:06 +0100 |
commit | ebfe259f6682b43d7f0d3b57b525e25f97410052 (patch) | |
tree | e3f09eb6159168e1736f8a629286eb3d148917a9 /guix | |
parent | 47b3eed821cf86c350dc4b0fdbe75647cdc275b0 (diff) | |
parent | 8cc3983a4d02a15ad4a863671c1a5a8b2b542625 (diff) |
Merge branch 'master' into staging
Diffstat (limited to 'guix')
-rw-r--r-- | guix/describe.scm | 31 | ||||
-rw-r--r-- | guix/modules.scm | 4 | ||||
-rw-r--r-- | guix/packages.scm | 16 |
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 |