diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-09-19 16:26:44 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-09-19 22:52:36 +0200 |
commit | 1b179d7876f19f04009a2f9e248ac10711f4c660 (patch) | |
tree | d3dfb99a2c0eaee62c32f647b93ceb65b9a2a778 /guix/scripts/repl.scm | |
parent | 0996fcc657593955845c2761d7eb0f656149fe11 (diff) | |
download | guix-patches-1b179d7876f19f04009a2f9e248ac10711f4c660.tar guix-patches-1b179d7876f19f04009a2f9e248ac10711f4c660.tar.gz |
describe: Save the original value of (program-arguments).
Fixes <https://bugs.gnu.org/42688>.
Reported by pkill9 <pkill9@runbox.com>.
This ensures that 'guix repl -s SCRIPT' give SCRIPT the right value
of (current-profile), which in turn ensures that (%package-module-path)
is initialized with the right set of channels.
* guix/describe.scm (initial-program-arguments): New variable.
(current-profile): Use it.
* guix/scripts/repl.scm (guix-repl): Call 'current-profile' before
'set-program-arguments'.
Diffstat (limited to 'guix/scripts/repl.scm')
-rw-r--r-- | guix/scripts/repl.scm | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/guix/scripts/repl.scm b/guix/scripts/repl.scm index 7d4e474e92..9f20803efc 100644 --- a/guix/scripts/repl.scm +++ b/guix/scripts/repl.scm @@ -27,6 +27,7 @@ #:use-module (srfi srfi-37) #:use-module (ice-9 match) #:use-module (rnrs bytevectors) + #:autoload (guix describe) (current-profile) #:autoload (system repl repl) (start-repl) #:autoload (system repl server) (make-tcp-server-socket make-unix-domain-server-socket) @@ -176,6 +177,13 @@ call THUNK." ;; Run script (save-module-excursion (lambda () + ;; Invoke 'current-profile' so that it memoizes the correct value + ;; based on (program-arguments), before we call + ;; 'set-program-arguments'. This in turn ensures that + ;; (%package-module-path) will contain entries for the channels + ;; available in the current profile. + (current-profile) + (set-program-arguments script) (set-user-module) |