Subject: bug#39366: guix offload sometimes can use ~/.ssh/config, sometimes not

From: Ludovic Courtès <[email-masked]>
Date: Wed, 05 Feb 2020 12:11:09 +0100

Hi,

Maxim Cournoyer <[email-masked]> skribis:

> "hurd" is a host name defined in my ~/.ssh/config file.
>
> $ guix offload status
> guix offload: getting status of 1 build machines defined in '/etc/guix/machines.scm'...

[...]

> $ guix offload test
> guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> guix offload: Guix is usable on 'hurd' (test returned "/gnu/store/883yjkl46dxw9mzykykmbs0yzwyxm17z-test")

[...]

> $ guix build git --no-substitutes --check
> process 31348 acquired build slot '/var/guix/offload/hurd:22/0'
> guix offload: error: failed to connect to 'hurd': Failed to resolve hostname hurd (Name or service not known)

That is confusing indeed.  It comes from the fact that ‘guix offload’ in
the last case is running as root; thus, it sees a different
~/.ssh/config.

We could instruct ‘guix offload’ to always ignore ~/.ssh/config, but
that wouldn’t be great because using it can be useful.

Perhaps it should emit a warning when not running as root?

Thanks,
Ludo’.