unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: "\( via Guix-patches" via <guix-patches@gnu.org>
To: 57317@debbugs.gnu.org
Cc: "\(" <paren@disroot.org>
Subject: [bug#57317] [PATCH v2 1/2] build: profiles: Implicitly set GUIX_EXTENSIONS_PATH.
Date: Sun, 21 Aug 2022 16:43:48 +0100	[thread overview]
Message-ID: <20220821154349.22575-1-paren@disroot.org> (raw)
In-Reply-To: <20220821131222.12411-1-paren@disroot.org>

* 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.
---
 guix/build/profiles.scm |  7 ++++---
 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 @@ (define-syntax let-fields
          (()
           (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 @@ (define-module (guix search-paths)
             search-path-specification-file-pattern
 
             $PATH
+            $GUIX_EXTENSIONS_PATH
             $SSL_CERT_DIR
             $SSL_CERT_FILE
 
@@ -73,6 +74,16 @@ (define $PATH
    (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)
-- 
2.37.2





  parent reply	other threads:[~2022-08-21 15:45 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-21 13:12 [bug#57317] [PATCH 0/2] Implicitly set GUIX_EXTENSIONS_PATH in profiles ( via Guix-patches via
2022-08-21 13:16 ` [bug#57317] [PATCH 1/2] build: profiles: Always set GUIX_EXTENSIONS_PATH ( via Guix-patches via
2022-08-21 13:16   ` [bug#57317] [PATCH 2/2] gnu: package-management: Remove mentions of GUIX_EXTENSIONS_PATH ( via Guix-patches via
2022-08-21 15:43 ` ( via Guix-patches via [this message]
2022-08-21 15:43   ` [bug#57317] [PATCH v2 " ( via Guix-patches via
2022-08-21 19:38   ` [bug#57317] [PATCH v2 1/2] build: profiles: Implicitly set GUIX_EXTENSIONS_PATH Maxime Devos
2022-08-21 19:41 ` [bug#57317] [PATCH 0/2] Implicitly set GUIX_EXTENSIONS_PATH in profiles Ricardo Wurmus
2022-08-22  9:20   ` Efraim Flashner
2022-09-07  8:46 ` bug#57317: " Efraim Flashner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220821154349.22575-1-paren@disroot.org \
    --to=guix-patches@gnu.org \
    --cc=57317@debbugs.gnu.org \
    --cc=paren@disroot.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).