diff options
author | Ludovic Courtès <ludo@gnu.org> | 2023-04-17 22:28:01 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2023-04-17 23:50:42 +0200 |
commit | 166a3e3fdeaa5279b2dd5000088f913c05af9558 (patch) | |
tree | e080138030a5ed5e7ee3ccac966d967b7311e91e | |
parent | 8136c1578eadbd0630695d86d52b6227db791539 (diff) | |
download | guix-166a3e3fdeaa5279b2dd5000088f913c05af9558.tar.gz |
ssh: Silence remote daemon messages when sending store items.
Fixes <https://issues.guix.gnu.org/61839>. Previously, when running 'guix-daemon --debug' on the remote machine, lots of debugging outputs would be printed to stderr; since the client wouldn't read it, we could eventually reach a deadlock where the 'guix repl' process would be stuck writing to stderr while the client is stuck waiting on its stdout. * guix/ssh.scm (store-import-channel)[import]: Parameterize 'current-build-output-port'.
-rw-r--r-- | guix/ssh.scm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/guix/ssh.scm b/guix/ssh.scm index 5b35f664d9..b7b9807ebf 100644 --- a/guix/ssh.scm +++ b/guix/ssh.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2021 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016-2021, 2023 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -367,7 +367,15 @@ can be written." (force-output) (setvbuf (current-input-port) 'none) + + ;; If 'guix-daemon' is running with '--debug', a lot of + ;; debugging info goes to 'current-build-output-port' (stderr + ;; by default). However, since nobody's reading it, this + ;; could lead to a deadlock. Thus, disable debugging output. + (set-build-options store #:verbosity 0) + (import-paths store (current-input-port)) + '(success)))) (lambda args (cons 'error args)))) |