[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [GCD] Set search paths without program wrappers
From: |
pelzflorian (Florian Pelz) |
Subject: |
Re: [GCD] Set search paths without program wrappers |
Date: |
Sun, 23 Feb 2025 00:46:51 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Hi 宋文武.
Help me understand. What you are inventing here is search path
configuration files as a preferred alternative to environment
variables.
So GUIX_XDG_DATA_DIRS is a new environment variable created to be used
instead of XDG_DATA_DIRS and set by creating a file
etc/search-paths.d/GUIX_XDG_DATA_DIRS rather than by calling setenv to
ensure it does not propagate to child processes.
Same for GUIX_GI_TYPELIB_PATH etc.
Also because it does not propagate, it will not have duplicate entries.
Not propagating sounds quite appropriate for krusader, gnome-commander
or such, which launch other binaries.
I like your proposal.
When we do need to propagate to child processes, e.g. when environment
variables should apply to launching plug-ins in child processes, we
can still wrap-program as before? Not sure if such might be needed in
gnome-builder.
Does this mean we can no longer refer to a 'glib-or-gtk-wrap phase?
Judging from Maxim’s comment <https://issues.guix.gnu.org/75688#34>,
> In its current form, this phase should be renamed
> 'write-search-path-files' or similar; we could introduce a deprecated
> symbol for wrap-all-programs for backward compatibility.
we would rename the phase.
Which is possible, but might impact third-party channels. No more:
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'glib-or-gtk-wrap 'wrap-binaries
[…]
I am thinking of Guile scripts, which still need wrap-program for
GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH.
(wrap-program installed-binary
`("GUILE_LOAD_PATH" prefix
(,(string-append g-golf scm)
,(string-append gcairo scm)))
`("GUILE_LOAD_COMPILED_PATH" prefix
(,(string-append g-golf go)
,(string-append gcairo go)))
;; Library path for libraries loaded from Guile.
`("LD_LIBRARY_PATH" prefix
(,(string-append gcairo "/lib"))))
Regards,
Florian
Re: [GCD] Set search paths without program wrappers, Hartmut Goebel, 2025/02/21
Re: [GCD] Set search paths without program wrappers,
pelzflorian (Florian Pelz) <=