guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Questions and Notes regarding Offloading and Substitutes


From: Carlos Sosa
Subject: Questions and Notes regarding Offloading and Substitutes
Date: Wed, 27 May 2015 12:39:57 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hi,

for the past week I've been playing around with guix offloading, archive
and substitutes. I can tell you that authentication of an offloading
node is fairly straight forward just like the manual says.

What is a little bit confusing is how `guix build` and offloading works.
To be honest, in the begining, offloading was not that straight forward
since the manual lacks to point out that `guix offloading` is using
`lsh`. So there are certain steps that need to be addressed like,
creating a 'lsh' key and then exporting it to an openssh public key.
After that you might have a problem with the cyphers available in
OpenSSH and lsh, which are disabled by default in OpenSSH. After setting
all of that, builds offloading works flawlessly, I was really happy I
haven't encountered any problem.

Now what I don't get is why offloading mostly works for builds and not
for guix package installation. I might be confusing what builds are for,
but shouldn't an already finished build be used by `guix package` when
installing a package. For example, if I do 'guix build emacs' that will
build emacs and its dependencies, and I can call later `guix package -i
emacs`, right? When I do `guix package -i emacs` with the daemon with
'--max-jobs=0' instead of offloading the compilation and built to any of
the machines in 'machines.scm', it seems to offload some bits but still
compile some components in the machine. I think the latter is fine, but
I consider it's best if they did everything. In my case, I own two small
netbooks that I would love to offload all of the process of building and
compiling to a bigger node capable of doing that, but still keeping a
store and profile in those machines.

I'm having a couple of problems with substitutes, I can't seem to be
able to send all of the needed substitutes, for let us say the emacs
package, to the small netbooks from the big node at home. They do grab
some derivations and other elements, but seem to give me a Nix failure
from time to time. Are substitutes what I'm ultimately looking for,
having a build node build everything and send it as a substitute to the
smaller nodes?

Please let me know what I'm doing wrong. :)

- Carlos




reply via email to

[Prev in Thread] Current Thread [Next in Thread]