summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorSergio Pastor Pérez <sergio.pastor-perez@inria.fr>2026-08-17 10:30:14 +0200
committerLudovic Courtès <ludo@gnu.org>2026-08-21 16:00:22 +0200
commit9e4c90ea160066d0b8e23c1e73450e2fc9f68bea (patch)
treebe770b9723a5bf97dde5f3222e4bec525e9a103d /gnu
parentbc9a4d924b4ee7110cd03e2c5dd066f6bc417dc4 (diff)
guix: Adjust environment setup so extensions are located without propagating Guix.
This change makes GUIX_EXTENSIONS_PATH handled specially so package extensions do not need to propagate Guix or extend their native search path to locate the extension. * gnu/home/services.scm (environment-variables->setup-environment-script): Setup GUIX_EXTENSIONS_PATH to locate extensions in profiles that do not contain Guix. * gnu/system.scm (operating-system-etc-service): Likewise. * gnu/packages/containers.scm (guix-compose): Remove unneeded 'native-search-paths' specification. * gnu/packages/package-management.scm (toys): Likewise. (guix-xsearch): Likewise. * guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): Adjust comment. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/home/services.scm4
-rw-r--r--gnu/packages/containers.scm2
-rw-r--r--gnu/packages/package-management.scm5
-rw-r--r--gnu/system.scm3
4 files changed, 7 insertions, 7 deletions
diff --git a/gnu/home/services.scm b/gnu/home/services.scm
index 93d6881954c..f7d0ff08228 100644
--- a/gnu/home/services.scm
+++ b/gnu/home/services.scm
@@ -330,6 +330,10 @@ case $XCURSOR_PATH in
330 *$GUIX_PROFILE/share/icons*) ;; 330 *$GUIX_PROFILE/share/icons*) ;;
331 *) export XCURSOR_PATH=$GUIX_PROFILE/share/icons:$XCURSOR_PATH ;; 331 *) export XCURSOR_PATH=$GUIX_PROFILE/share/icons:$XCURSOR_PATH ;;
332esac 332esac
333case $GUIX_EXTENSIONS_PATH in
334 *$GUIX_PROFILE/share/guix/extensions*) ;;
335 *) export GUIX_EXTENSIONS_PATH=$GUIX_PROFILE/share/guix/extensions:$GUIX_EXTENSIONS_PATH ;;
336esac
333 337
334# Keep the shell environment clean. 338# Keep the shell environment clean.
335unset GUIX_PROFILE PROFILE_FILE 339unset GUIX_PROFILE PROFILE_FILE
diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index f3c74a2c715..24c5e8fe577 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -1262,8 +1262,6 @@ contents, and discovering ways to shrink the size of Docker/OCI image.")
1262 (native-inputs (list guile-3.0)) 1262 (native-inputs (list guile-3.0))
1263 ;; Avoid setting propagated so that we use the user’s profile. 1263 ;; Avoid setting propagated so that we use the user’s profile.
1264 (inputs (list guix guile-dotenv guile-yamlpp)) 1264 (inputs (list guix guile-dotenv guile-yamlpp))
1265 (native-search-paths
1266 (list $GUIX_EXTENSIONS_PATH))
1267 (synopsis "Guix' docker compose compatibility layer") 1265 (synopsis "Guix' docker compose compatibility layer")
1268 (description "A toolkit to run, read and write docker-compose.yml files with 1266 (description "A toolkit to run, read and write docker-compose.yml files with
1269Guix machinery.") 1267Guix machinery.")
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 796caee5f79..830e8cc47f4 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -861,7 +861,6 @@ high-performance computing} clusters.")
861 guile-readline 861 guile-readline
862 guile-sqlite3 862 guile-sqlite3
863 guix)) 863 guix))
864 (native-search-paths (list $GUIX_EXTENSIONS_PATH))
865 (home-page "https://toys.whereis.social/") 864 (home-page "https://toys.whereis.social/")
866 (synopsis "Search engine for Guix channels") 865 (synopsis "Search engine for Guix channels")
867 (description "Toys is a search engine for collecting and displaying Guix 866 (description "Toys is a search engine for collecting and displaying Guix
@@ -924,10 +923,6 @@ interface for interacting with the application.")
924 (native-inputs (list guile-3.0 923 (native-inputs (list guile-3.0
925 guile-xapian 924 guile-xapian
926 guix)) 925 guix))
927 ;; This is very important since we want the extension to be available
928 ;; without having to add a vanilla guix to the current profile.
929 (native-search-paths
930 (list $GUIX_EXTENSIONS_PATH))
931 (home-page "https://codeberg.org/Baleine/guix-xsearch") 926 (home-page "https://codeberg.org/Baleine/guix-xsearch")
932 (synopsis "Extension for Guix to provide faster search using Xapian") 927 (synopsis "Extension for Guix to provide faster search using Xapian")
933 (description 928 (description
diff --git a/gnu/system.scm b/gnu/system.scm
index 8b45d7a910a..a39917d49e6 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -1072,6 +1072,9 @@ export MANPATH=$HOME/.guix-profile/share/man:/run/current-system/profile/share/m
1072export INFOPATH=$HOME/.guix-profile/share/info:/run/current-system/profile/share/info 1072export INFOPATH=$HOME/.guix-profile/share/info:/run/current-system/profile/share/info
1073export XDG_DATA_DIRS=$HOME/.guix-profile/share:/run/current-system/profile/share 1073export XDG_DATA_DIRS=$HOME/.guix-profile/share:/run/current-system/profile/share
1074export XDG_CONFIG_DIRS=$HOME/.guix-profile/etc/xdg:/run/current-system/profile/etc/xdg 1074export XDG_CONFIG_DIRS=$HOME/.guix-profile/etc/xdg:/run/current-system/profile/etc/xdg
1075export GUIX_EXTENSIONS_PATH=\
1076$HOME/.guix-profile/share/guix/extensions
1077:/run/current-system/share/guix/extensions
1075 1078
1076# Make sure libXcursor finds cursors installed into user or system profiles. See <http://bugs.gnu.org/24445> 1079# Make sure libXcursor finds cursors installed into user or system profiles. See <http://bugs.gnu.org/24445>
1077export XCURSOR_PATH=$HOME/.icons:$HOME/.guix-profile/share/icons:/run/current-system/profile/share/icons 1080export XCURSOR_PATH=$HOME/.icons:$HOME/.guix-profile/share/icons:/run/current-system/profile/share/icons