diff options
author | (unmatched-parenthesis <paren@disroot.org> | 2022-08-21 16:43:48 +0100 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2022-09-07 11:30:31 +0300 |
commit | bbc1735be26c56d443f96f9d2dac7cd4429478ef (patch) | |
tree | 6e2b14fb1f13bcc1fc065b52864ac051609d57ab | |
parent | 0321ceef08e53febe18a218fe355c4757560de0d (diff) |
profiles: Implicitly set GUIX_EXTENSIONS_PATH.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths):
Always return a search path for GUIX_EXTENSIONS_PATH.
* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): New variable.
This allows Guix to find extensions without any need for users to
set GUIX_EXTENSIONS_PATH manually.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
-rw-r--r-- | guix/build/profiles.scm | 7 | ||||
-rw-r--r-- | guix/search-paths.scm | 11 |
2 files changed, 15 insertions, 3 deletions
diff --git a/guix/build/profiles.scm b/guix/build/profiles.scm index 0c92f222b4..b19d93f971 100644 --- a/guix/build/profiles.scm +++ b/guix/build/profiles.scm @@ -179,9 +179,10 @@ search path specifications." (() (values (reverse inputs) (delete-duplicates - (cons $PATH - (map sexp->search-path-specification - (reverse search-paths))))))))))) + (cons* $PATH + $GUIX_EXTENSIONS_PATH + (map sexp->search-path-specification + (reverse search-paths))))))))))) (define* (build-profile output manifest #:key (extra-inputs '()) (symlink symlink)) diff --git a/guix/search-paths.scm b/guix/search-paths.scm index 6b13a98946..5a0cddac8f 100644 --- a/guix/search-paths.scm +++ b/guix/search-paths.scm @@ -33,6 +33,7 @@ search-path-specification-file-pattern $PATH + $GUIX_EXTENSIONS_PATH $SSL_CERT_DIR $SSL_CERT_FILE @@ -73,6 +74,16 @@ (variable "PATH") (files '("bin" "sbin")))) +(define-public $GUIX_EXTENSIONS_PATH + ;; 'GUIX_EXTENSIONS_PATH' is used by Guix to locate extension commands. + ;; Like 'PATH', it's not attached to any package, so that users don't have + ;; to install the 'guix' package (which is not supposed to be installed, + ;; as it will mess up the 'guix pull' installation) or set the variable + ;; manually. + (search-path-specification + (variable "GUIX_EXTENSIONS_PATH") + (files '("share/guix/extensions")))) + ;; Two variables for certificates (see (guix)X.509 Certificates), ;; respected by 'openssl', possibly GnuTLS in the future ;; (https://gitlab.com/gnutls/gnutls/-/merge_requests/1541) |