all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* offload: error: failed to connect to `#<input-output... Protocol error
@ 2019-01-21 16:07 zimoun
  2019-01-21 21:56 ` Matthew Brooks
  0 siblings, 1 reply; 5+ messages in thread
From: zimoun @ 2019-01-21 16:07 UTC (permalink / raw)
  To: help-guix

Dear,

I am not able to setup the offloading hook.

I mimmick the example:
(list
      (build-machine
        (name "my-machine.example.org")
        (system "x86_64-linux")
        (host-key "ssh-ed25519 AAAAB3Nza…")
        (user "simon")
        (private-key
         (string-append (getenv "HOME")
                        "/.ssh/identity-for-guix"))))

Then I get the error:  guix offload test

guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
guix offload: Guix is usable on 'my-machine.example.org' (test
returned "/gnu/store/883yjkl46dxw9mzykykmbs0yzwyxm17z-test")
guix offload: 'my-machine.example.org is running GNU Guile 2.2.4
guix offload: error: failed to connect to `#<input-output: channel
(open) 2b76fc0>': Protocol error

I am not able to find what is wrong.

Moreover, if I try: guix build emacs --no-substitutes

process 4189 acquired build slot '/var/guix/offload/my-machine.example.org/0'
;;; [2019/01/21 16:58:01.231460, 0] private-key-from-file: [GSSH
ERROR] The file does not exist or permission denied:
"/root/.ssh/identity-for-guix"

I do not understand:
 1. between who is the key pairing? root or daemon or user?
 2. in which $PATH Guile needs to be in? which profile?

Thank you in advance for any insights.

All the best,
simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offload: error: failed to connect to `#<input-output... Protocol error
  2019-01-21 16:07 offload: error: failed to connect to `#<input-output... Protocol error zimoun
@ 2019-01-21 21:56 ` Matthew Brooks
  2019-01-22 14:00   ` zimoun
  0 siblings, 1 reply; 5+ messages in thread
From: Matthew Brooks @ 2019-01-21 21:56 UTC (permalink / raw)
  To: help-guix

>          (string-append (getenv "HOME")
>                         "/.ssh/identity-for-guix"))))
>...
>
> ERROR] The file does not exist or permission denied:
> "/root/.ssh/identity-for-guix"


The SSH connection is to a regular user on the offload machine. In your example, it is configured to connect to the "simon" account on the offload machine, in the '(user "simon")' part.

The issue is that the guix daemon runs as root, so when it evaluates '(getenv "home")' it points to root's home and not the user's home (thus it looking for the file in "/root/"). If the "identity-for-guix" file is in "/home/simon/.ssh/identity-for-guix", then you must specify that whole path, or specify that you mean the home path for some other user in the (getenv) part. I do not know how to specify someone else's home with getenv though, so I'd suggest that you try manually entering the full path to see if that works.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offload: error: failed to connect to `#<input-output... Protocol error
  2019-01-21 21:56 ` Matthew Brooks
@ 2019-01-22 14:00   ` zimoun
  2019-01-23 15:41     ` Ricardo Wurmus
  0 siblings, 1 reply; 5+ messages in thread
From: zimoun @ 2019-01-22 14:00 UTC (permalink / raw)
  To: Matthew Brooks; +Cc: help-guix

Dear Matthew,

Thank you for your help.

Hum? it does not work; whole path specified.
I still have the same error:

guix offload: error: failed to connect to `#<input-output: channel
(open) 2b76fc0>': Protocol error

I do not understand:
 1. between who is the key pairing? root or daemon or user?
 2. in which $PATH Guile needs to be in? which profile?

If the SSH connection is to a regular user on the offload machine and
in the same time the guix daemon runs as root, then something does not
appear clear to me.
Maybe, it is dummy and I miss the point. I have carefully read more
than twice the manual and your explanations. :-)
I should miss an obvious point...

Thank you for any insights.

All the best,
simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offload: error: failed to connect to `#<input-output... Protocol error
  2019-01-22 14:00   ` zimoun
@ 2019-01-23 15:41     ` Ricardo Wurmus
  2019-01-28 17:13       ` zimoun
  0 siblings, 1 reply; 5+ messages in thread
From: Ricardo Wurmus @ 2019-01-23 15:41 UTC (permalink / raw)
  To: zimoun; +Cc: help-guix


zimoun <zimon.toutoune@gmail.com> writes:

> I still have the same error:
>
> guix offload: error: failed to connect to `#<input-output: channel
> (open) 2b76fc0>': Protocol error

Make sure that you are using a recent daemon, just in case.

> I do not understand:
>  1. between who is the key pairing? root or daemon or user?

When authorizing a signing key it ends up in /etc/guix/acl.  This is
used by the daemon.

>  2. in which $PATH Guile needs to be in? which profile?

This may no longer be needed with newer versions of Guix as it uses
“guix repl” instead.


-- 
Ricardo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: offload: error: failed to connect to `#<input-output... Protocol error
  2019-01-23 15:41     ` Ricardo Wurmus
@ 2019-01-28 17:13       ` zimoun
  0 siblings, 0 replies; 5+ messages in thread
From: zimoun @ 2019-01-28 17:13 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: help-guix

Dear Matthew and Ricardo,

I have tried to update (guix pull) on the both machines, in user
profile and root profile.
Still the same error about connect.

If I understand well, it should come from the daemon? So how can I update it?

On the both machines, the version is:

guix-daemon (GNU Guix) 0.16.0-8.7ba2b27

The version configured in /etc/systemd/system/guix-daemon.service, then:
/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon --version


Thank you for your insight.

All the best,
simon

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-01-28 17:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-21 16:07 offload: error: failed to connect to `#<input-output... Protocol error zimoun
2019-01-21 21:56 ` Matthew Brooks
2019-01-22 14:00   ` zimoun
2019-01-23 15:41     ` Ricardo Wurmus
2019-01-28 17:13       ` zimoun

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.