[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Guix System for embedded systems roadmap.
From: |
Mathieu Othacehe |
Subject: |
Guix System for embedded systems roadmap. |
Date: |
Sun, 15 Mar 2020 13:39:13 +0100 |
User-agent: |
mu4e 1.2.0; emacs 26.3 |
Hello,
At Fosdem 2020, I gave a talk about using GNU Guix as an alternative to
Yocto, focusing on cross-compiling a Guix System. Here's a status and
my personal roadmap on this topic.
* On core-updates, since commit
d594963856690f1aacf228c8a83e406d33bc44ce, cross-compiling a bare-bones
Guix System disk-image for Pine A64 works. This is propably true for
other boards too.
* On the same commit, the produced disk-image weights 1.9 GiB, which is
obviously too big. I'm working on reducing this closure size. See:
https://issues.guix.info/issue/39941 and
https://issues.guix.info/issue/40071.
* While cross-compilation is important, Guix also supports emulated
compilation with --system. Producing a Guix System disk-image with
--system is currently broken and needs to be fix. See
https://lists.gnu.org/archive/html/guix-devel/2019-12/msg00099.html.
* Somehow related to the previous point, producing a disk-image,
currently means spawning a virtual machine. This can be very slow, and
using --system, we currently emulate the execution of a virtual
machine for a foreign architecture.
I'd like to propose an alternative mechanism which would be faster and
not involving virtual machines. Maybe producing the disk-image in a
container?
* Increase board support catalog, even if it's tricky because many
boards need proprietary blobs to boot (such as Raspberry Pis). The
effort started by Danny on wip-buildroot could be resumed.
* Finally, as we discussed during Guix Days[1], it would be nice to have
a webservice, where you could select your board, the packages/services
you want to install, and a disk-image, cross-compiled or not, would be
generated for you! It implies that all the points listed above are
solved, but it could be quite nice :)
Feedback welcome!
Thanks,
Mathieu
[1]:
http://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/doc/guix-days-2020/growing-guix.org
- Guix System for embedded systems roadmap.,
Mathieu Othacehe <=