guile-ssh@0.18 breaks offloading

  • Done
  • quality assurance status badge
Details
3 participants
  • Dariqq
  • Ludovic Courtès
  • Tomas Volf
Owner
unassigned
Submitted by
Dariqq
Severity
normal
D
D
Dariqq wrote on 11 Dec 2024 13:55
(address . bug-guix@gnu.org)
2a5dd1c0-6548-46f6-9e31-9bc21811d252@posteo.net
Hello,

Today I reconfigured my system and after a reboot offloading no longer
works.

When i try to build something that could be offloaded it instead tries
to build it locally instead and fails with

unsupported-platform
while setting up the build environment: a `*' is required to build `*',
but I am a `*'

However 'guix offload test' is still succeeding

Toggle snippet (15 lines)
sudo guix offload test

guix offload: testing 1 build machines defined in
'/etc/guix/machines.scm'...
guix offload: Guix is usable on '*' (test returned "/gnu/store/*-test")
guix offload: '*' is running GNU Guile 3.0.9
guix offload: sending 1 store item (0 MiB) to '*'...
exporting path `/gnu/store/*-export-test'
guix offload: '*' successfully imported '/gnu/store/*-export-test'
retrieving 1 store item from '*'...
guix offload: successfully imported '/gnu/store/*-import-test' from '*'



I tracked this down to the guile-ssh update in
da3c8a963f83c044568d99921480259eaa26a923

Reverting that restores offloading for me.


This might also be the cause for the 'guix deploy' error described in
T
T
Tomas Volf wrote on 11 Dec 2024 17:27
[PATCH] remote: Do not double-quote the repl-command.
(name . Tomas Volf)(address . ~@wolfsden.cz)
a70564a4793380970c1005a3813a432d98a2ef2c.1733934475.git.~@wolfsden.cz
In 0.18.0, the `open-remote-pipe*' now correctly quotes the arguments, so the
double quoting that was done by `shell-quote' is not harmful and breaks at
least offloading and deploy.

* guix/remote.scm (remote-pipe-for-gexp): Call object->string just once.

Change-Id: Id922d26d318bfdd4714e267687c1b27461196d90
---
I checked all places where the changed procedures are used and those look
correct. Nothing else in the NEWS file for 0.18.0 jumps out as a potential
issue.

guix/remote.scm | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

Toggle diff (23 lines)
diff --git a/guix/remote.scm b/guix/remote.scm
index a58ec2103c..9423f9af12 100644
--- a/guix/remote.scm
+++ b/guix/remote.scm
@@ -48,9 +48,6 @@ (define-module (guix remote)
(define* (remote-pipe-for-gexp lowered session #:optional become-command)
"Return a remote pipe for the given SESSION to evaluate LOWERED. If
BECOME-COMMAND is given, use that to invoke the remote Guile REPL."
- (define shell-quote
- (compose object->string object->string))
-
(define repl-command
(append (or become-command '())
(list
@@ -65,7 +62,7 @@ (define* (remote-pipe-for-gexp lowered session #:optional become-command)
`("-C" ,directory))
(lowered-gexp-load-path lowered))
`("-c"
- ,(shell-quote (lowered-gexp-sexp lowered)))))
+ ,(object->string (lowered-gexp-sexp lowered)))))

(let ((pipe (apply open-remote-pipe* session OPEN_READ repl-command)))
(when (eof-object? (peek-char pipe))
--
2.46.0
D
D
Dariqq wrote on 11 Dec 2024 21:57
Re: guile-ssh@0.18 breaks offloading
(address . 74787@debbugs.gnu.org)
27ad57f4-efab-4b23-8322-d1d8d5c7a584@posteo.net
Another problem (other than the open-input-pipe* change) related to the
guile-ssh update is that the GUIX_CHECK_GUILE_SSH macro now fails
resulting in the guix-daemon not having offload support. I openend
L
L
Ludovic Courtès wrote on 12 Dec 2024 12:45
Re: bug#74787: guile-ssh@0.18 breaks offloading
(name . Tomas Volf)(address . ~@wolfsden.cz)
87y10l9laj.fsf_-_@gnu.org
Hi Tomas and Dariqq,

Tomas Volf <~@wolfsden.cz> skribis:

Toggle quote (8 lines)
> In 0.18.0, the `open-remote-pipe*' now correctly quotes the arguments, so the
> double quoting that was done by `shell-quote' is not harmful and breaks at
> least offloading and deploy.
>
> * guix/remote.scm (remote-pipe-for-gexp): Call object->string just once.
>
> Change-Id: Id922d26d318bfdd4714e267687c1b27461196d90

Added the “Fixes” and “Reported-by” lines to the log and committed.

Thanks!

Ludo’.
?
Your comment

This issue is archived.

To comment on this conversation send an email to 74787@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 74787
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch