unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* offloading trouble on GuixSD->Debian
@ 2018-02-24 21:37 ng0
  2018-02-24 21:52 ` Marius Bakke
  2018-02-24 22:41 ` Chris Marusich
  0 siblings, 2 replies; 8+ messages in thread
From: ng0 @ 2018-02-24 21:37 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1565 bytes --]

Hi,

I have run into yet another familar(?) problem with offloading.

My build host for the first time is Debian, so instead of GuixSD master offloading
to an GuixSD build node I'm offloading from GuixSD master to an Debian build
node.
This is a minimal, basic Debian install in the Hetzner cloud.

I've come as far as:

user@abyayala ~$ guix offload test
guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
guix offload: 'yt' is running guile (GNU Guile) 2.2.3
offload: error: Guile modules not found on remote host 'yt'
hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
`ssh yt env | grep GUILE_LOAD_PATH' to check.

On the serer itself, the Guix modules are in the path.
Guile-ssh, guile, and guile-readline are installed in the profile of the
offloading user on the build node.
guix pull has been run at least once for the user profile.

~/.bashrc ends with:

source /etc/profile
GUIX_PROFILE="$HOME/.guix-profile"
. "$HOME/.guix-profile/etc/profile"

and I have created .bash_profile as Debian just provides .profile

I have experimented with the content of files and what is exported.

ssh yt env | grep GUILE_
GUILE_LOAD_COMPILED_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/lib/guile/2.2/site-ccache:/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2
GUILE_LOAD_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2



-- 
ng0 ::  https://n0.is | https://crash.cx
A88C8ADD129828D7EAC02E52E22F9BBFEE348588

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 21:37 offloading trouble on GuixSD->Debian ng0
@ 2018-02-24 21:52 ` Marius Bakke
  2018-02-24 21:57   ` ng0
  2018-02-24 22:41 ` Chris Marusich
  1 sibling, 1 reply; 8+ messages in thread
From: Marius Bakke @ 2018-02-24 21:52 UTC (permalink / raw)
  To: ng0, guix-devel

[-- Attachment #1: Type: text/plain, Size: 856 bytes --]

ng0 <ng0@crash.cx> writes:

> Hi,
>
> I have run into yet another familar(?) problem with offloading.
>
> My build host for the first time is Debian, so instead of GuixSD master offloading
> to an GuixSD build node I'm offloading from GuixSD master to an Debian build
> node.
> This is a minimal, basic Debian install in the Hetzner cloud.
>
> I've come as far as:
>
> user@abyayala ~$ guix offload test
> guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> guix offload: 'yt' is running guile (GNU Guile) 2.2.3
> offload: error: Guile modules not found on remote host 'yt'
> hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
> `ssh yt env | grep GUILE_LOAD_PATH' to check.

The "guix" package must be available on GUILE_LOAD_PATH.

Does 'guile -c "(use-modules (guix))"' work for the offloading user?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 21:52 ` Marius Bakke
@ 2018-02-24 21:57   ` ng0
  2018-02-25 10:35     ` Ricardo Wurmus
  0 siblings, 1 reply; 8+ messages in thread
From: ng0 @ 2018-02-24 21:57 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1238 bytes --]

Marius Bakke transcribed 1.4K bytes:
> ng0 <ng0@crash.cx> writes:
> 
> > Hi,
> >
> > I have run into yet another familar(?) problem with offloading.
> >
> > My build host for the first time is Debian, so instead of GuixSD master offloading
> > to an GuixSD build node I'm offloading from GuixSD master to an Debian build
> > node.
> > This is a minimal, basic Debian install in the Hetzner cloud.
> >
> > I've come as far as:
> >
> > user@abyayala ~$ guix offload test
> > guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> > guix offload: 'yt' is running guile (GNU Guile) 2.2.3
> > offload: error: Guile modules not found on remote host 'yt'
> > hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
> > `ssh yt env | grep GUILE_LOAD_PATH' to check.
> 
> The "guix" package must be available on GUILE_LOAD_PATH.
> 
> Does 'guile -c "(use-modules (guix))"' work for the offloading user?

As I've written, yes, locally it works (guix is available when I log in via ssh and
execute the command for guile to use the module). via remote non-interactive shell
it doesn't.

-- 
ng0 ::  https://n0.is | https://crash.cx
A88C8ADD129828D7EAC02E52E22F9BBFEE348588

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 21:37 offloading trouble on GuixSD->Debian ng0
  2018-02-24 21:52 ` Marius Bakke
@ 2018-02-24 22:41 ` Chris Marusich
  2018-02-24 22:53   ` ng0
  1 sibling, 1 reply; 8+ messages in thread
From: Chris Marusich @ 2018-02-24 22:41 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1765 bytes --]

ng0 <ng0@crash.cx> writes:

> user@abyayala ~$ guix offload test
> guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> guix offload: 'yt' is running guile (GNU Guile) 2.2.3
> offload: error: Guile modules not found on remote host 'yt'
> hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
> `ssh yt env | grep GUILE_LOAD_PATH' to check.
>
> On the serer itself, the Guix modules are in the path.
> Guile-ssh, guile, and guile-readline are installed in the profile of the
> offloading user on the build node.
> guix pull has been run at least once for the user profile.
> 
> ...
>
> I have experimented with the content of files and what is exported.
>
> ssh yt env | grep GUILE_
> GUILE_LOAD_COMPILED_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/lib/guile/2.2/site-ccache:/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2
> GUILE_LOAD_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2

Are the Guix modules actually present at those paths in
"/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile"?  You can find out
by running this command on the Debian host:

find -L /gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile -name guix

If they aren't present, then according to the "guix offload" hint,
you'll need to add the Guix modules to it.  One way to accomplish that
might be to add either the system installation or the build user's
installation of Guix (the latter should be at ~/.config/guix/latest) to
the GUILE_LOAD_PATH in your build user's ~/.bashrc on the Debian host.
Another way might be to run "guix package -i guix" as the build user on
the Debian host.

Hope that helps!  Good luck.

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 22:41 ` Chris Marusich
@ 2018-02-24 22:53   ` ng0
  2018-02-25 23:40     ` Chris Marusich
  0 siblings, 1 reply; 8+ messages in thread
From: ng0 @ 2018-02-24 22:53 UTC (permalink / raw)
  To: Chris Marusich; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 2124 bytes --]

Chris Marusich transcribed 2.7K bytes:
> ng0 <ng0@crash.cx> writes:
> 
> > user@abyayala ~$ guix offload test
> > guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> > guix offload: 'yt' is running guile (GNU Guile) 2.2.3
> > offload: error: Guile modules not found on remote host 'yt'
> > hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
> > `ssh yt env | grep GUILE_LOAD_PATH' to check.
> >
> > On the serer itself, the Guix modules are in the path.
> > Guile-ssh, guile, and guile-readline are installed in the profile of the
> > offloading user on the build node.
> > guix pull has been run at least once for the user profile.
> > 
> > ...
> >
> > I have experimented with the content of files and what is exported.
> >
> > ssh yt env | grep GUILE_
> > GUILE_LOAD_COMPILED_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/lib/guile/2.2/site-ccache:/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2
> > GUILE_LOAD_PATH=/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile/share/guile/site/2.2
> 
> Are the Guix modules actually present at those paths in
> "/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile"?  You can find out
> by running this command on the Debian host:
> 
> find -L /gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile -name guix

indeed, this returned an empty result.

> If they aren't present, then according to the "guix offload" hint,
> you'll need to add the Guix modules to it.  One way to accomplish that
> might be to add either the system installation or the build user's
> installation of Guix (the latter should be at ~/.config/guix/latest) to
> the GUILE_LOAD_PATH in your build user's ~/.bashrc on the Debian host.

None of the above worked,

> Another way might be to run "guix package -i guix" as the build user on
> the Debian host.

but this did. Too bad, I wanted avoid installing guix into the profile.

> Hope that helps!  Good luck.
> 
> -- 
> Chris



-- 
ng0 ::  https://n0.is | https://crash.cx
A88C8ADD129828D7EAC02E52E22F9BBFEE348588

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 21:57   ` ng0
@ 2018-02-25 10:35     ` Ricardo Wurmus
  2018-02-25 11:16       ` ng0
  0 siblings, 1 reply; 8+ messages in thread
From: Ricardo Wurmus @ 2018-02-25 10:35 UTC (permalink / raw)
  To: ng0; +Cc: guix-devel


ng0 <ng0@crash.cx> writes:

> Marius Bakke transcribed 1.4K bytes:
>> ng0 <ng0@crash.cx> writes:
>> 
>> > Hi,
>> >
>> > I have run into yet another familar(?) problem with offloading.
>> >
>> > My build host for the first time is Debian, so instead of GuixSD master offloading
>> > to an GuixSD build node I'm offloading from GuixSD master to an Debian build
>> > node.
>> > This is a minimal, basic Debian install in the Hetzner cloud.
>> >
>> > I've come as far as:
>> >
>> > user@abyayala ~$ guix offload test
>> > guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
>> > guix offload: 'yt' is running guile (GNU Guile) 2.2.3
>> > offload: error: Guile modules not found on remote host 'yt'
>> > hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
>> > `ssh yt env | grep GUILE_LOAD_PATH' to check.
>> 
>> The "guix" package must be available on GUILE_LOAD_PATH.
>> 
>> Does 'guile -c "(use-modules (guix))"' work for the offloading user?
>
> As I've written, yes, locally it works (guix is available when I log in via ssh and
> execute the command for guile to use the module). via remote non-interactive shell
> it doesn't.

You may want to set GUILE_LOAD_PATH and GUILE_COMPILED_LOAD_PATH in
/etc/environment on the target machine.

Also make sure to kill the Guile process that listens on the target
machine after making changes to the environment or else they won’t have
any effect.

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
https://elephly.net

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-25 10:35     ` Ricardo Wurmus
@ 2018-02-25 11:16       ` ng0
  0 siblings, 0 replies; 8+ messages in thread
From: ng0 @ 2018-02-25 11:16 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1937 bytes --]

Ricardo Wurmus transcribed 1.5K bytes:
> 
> ng0 <ng0@crash.cx> writes:
> 
> > Marius Bakke transcribed 1.4K bytes:
> >> ng0 <ng0@crash.cx> writes:
> >> 
> >> > Hi,
> >> >
> >> > I have run into yet another familar(?) problem with offloading.
> >> >
> >> > My build host for the first time is Debian, so instead of GuixSD master offloading
> >> > to an GuixSD build node I'm offloading from GuixSD master to an Debian build
> >> > node.
> >> > This is a minimal, basic Debian install in the Hetzner cloud.
> >> >
> >> > I've come as far as:
> >> >
> >> > user@abyayala ~$ guix offload test
> >> > guix offload: testing 1 build machines defined in '/etc/guix/machines.scm'...
> >> > guix offload: 'yt' is running guile (GNU Guile) 2.2.3
> >> > offload: error: Guile modules not found on remote host 'yt'
> >> > hint: Make sure `GUILE_LOAD_PATH' includes Guix' own module directory.  Run
> >> > `ssh yt env | grep GUILE_LOAD_PATH' to check.
> >> 
> >> The "guix" package must be available on GUILE_LOAD_PATH.
> >> 
> >> Does 'guile -c "(use-modules (guix))"' work for the offloading user?
> >
> > As I've written, yes, locally it works (guix is available when I log in via ssh and
> > execute the command for guile to use the module). via remote non-interactive shell
> > it doesn't.
> 
> You may want to set GUILE_LOAD_PATH and GUILE_COMPILED_LOAD_PATH in
> /etc/environment on the target machine.
> 
> Also make sure to kill the Guile process that listens on the target
> machine after making changes to the environment or else they won’t have
> any effect.
> 
> -- 
> Ricardo
> 
> GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
> https://elephly.net

I've read in an old thead that you've done this on a couple of machines,
I'll try it soon.
Thanks for the advice.

-- 
ng0
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
http://krosos.org | https://n0.is/~ng0/ | https://crash.cx

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

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

* Re: offloading trouble on GuixSD->Debian
  2018-02-24 22:53   ` ng0
@ 2018-02-25 23:40     ` Chris Marusich
  0 siblings, 0 replies; 8+ messages in thread
From: Chris Marusich @ 2018-02-25 23:40 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1170 bytes --]

ng0 <ng0@crash.cx> writes:

>> Are the Guix modules actually present at those paths in
>> "/gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile"?  You can find out
>> by running this command on the Debian host:
>> 
>> find -L /gnu/store/63p2z4sx3j6y8xs4sff423fl12qh1m0p-profile -name guix
>
> indeed, this returned an empty result.
>
>> If they aren't present, then according to the "guix offload" hint,
>> you'll need to add the Guix modules to it.  One way to accomplish that
>> might be to add either the system installation or the build user's
>> installation of Guix (the latter should be at ~/.config/guix/latest) to
>> the GUILE_LOAD_PATH in your build user's ~/.bashrc on the Debian host.
>
> None of the above worked,
>
>> Another way might be to run "guix package -i guix" as the build user on
>> the Debian host.
>
> but this did. Too bad, I wanted avoid installing guix into the profile.

Glad it worked.  To figure out precisely why only the last method worked
for you, I guess it would be necessary to debug the exact logic that is
importing the modules.  It's probably somewhere in
guix/scripts/offload.scm, maybe?

-- 
Chris

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

end of thread, other threads:[~2018-02-25 23:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-24 21:37 offloading trouble on GuixSD->Debian ng0
2018-02-24 21:52 ` Marius Bakke
2018-02-24 21:57   ` ng0
2018-02-25 10:35     ` Ricardo Wurmus
2018-02-25 11:16       ` ng0
2018-02-24 22:41 ` Chris Marusich
2018-02-24 22:53   ` ng0
2018-02-25 23:40     ` Chris Marusich

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).