unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Paul Boddie <paul@boddie.org.uk>
Cc: help-guix@gnu.org
Subject: Re: Cross-building GuixSD (and maybe using pre-built toolchains)
Date: Thu, 01 Sep 2016 10:10:15 +0200	[thread overview]
Message-ID: <87shtkujko.fsf@gnu.org> (raw)
In-Reply-To: <201608312349.49957.paul@boddie.org.uk> (Paul Boddie's message of "Wed, 31 Aug 2016 23:49:49 +0200")

Paul Boddie <paul@boddie.org.uk> skribis:

> On Wednesday 31. August 2016 22.04.35 Ludovic Courtès wrote:

[...]

>> > I noticed that Arch Linux and its relative Parabola GNU/Linux support the
>> > target machine using distcc as a client and having distcc servers cross-
>> > compile code for the target architecture. That seems to require the
>> > coordinating host to be running Arch/Parabola, which then means that some
>> > bootstrapping needs to be done already. Could a similar thing be done
>> > with GuixSD?
>> 
>> Yes, using offloading:
>> 
>>  
>> https://www.gnu.org/software/guix/manual/html_node/Daemon-Offload-Setup.html
>> 
>> If your master node is x86_64 and its machines.scm lists a mips64el
>> machine as in the example above, then “guix build foo -s mips64el-linux”
>> automatically offloads to that mips machine.  (This is the mechanism our
>> hydra.gnu.org build farm uses.)
>
> But this seems like the opposite of the approach in Arch/Parabola: there, the 
> target machine (mips64el) coordinates the build, with the farm machines 
> (x86_64) cross-compiling the sources. The benefit is that architectures with 
> less powerful hardware can have their packages built for them, but this would 
> presumably be contrary to the principles employed by Guix, where native builds 
> are mandatory for viability and, I guess, reproducibility reasons.

I should mention that native builds are also subject to offloading.  So
if your main machine is x86_64 and has a machines.scm file that lists
other x86_64 machines, then native builds can be offloaded to them.

If you cross-compile from x86_64, it’s a native build that can be
offloaded to another x86_64 machine.

Hope this clarifies things!

Ludo’.

  reply	other threads:[~2016-09-01  8:10 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-30 21:26 Cross-building GuixSD (and maybe using pre-built toolchains) Paul Boddie
2016-08-31 20:04 ` Ludovic Courtès
2016-08-31 21:49   ` Paul Boddie
2016-09-01  8:10     ` Ludovic Courtès [this message]
2016-09-01 15:51       ` Paul Boddie
2016-09-01 19:43         ` Ludovic Courtès
2016-09-02 18:52         ` David Craven
2016-09-03 12:56           ` Ludovic Courtès
2016-09-03 12:59             ` David Craven
2016-09-03 21:18               ` Ludovic Courtès
2016-09-03 21:27                 ` David Craven
  -- strict thread matches above, loose matches on Subject: below --
2016-08-31 16:15 David Craven
2016-08-31 20:08 ` Ludovic Courtès
2016-08-31 22:01   ` David Craven
2016-08-31 22:13     ` David Craven
2016-09-01  8:17     ` Ludovic Courtès
2016-09-01 10:11       ` David Craven
2016-09-01 11:16         ` Ludovic Courtès
2016-09-01 11:59       ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shtkujko.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=help-guix@gnu.org \
    --cc=paul@boddie.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).