Recoding the configuration for live-build images
richard.purdie at linuxfoundation.org
Sat Sep 4 09:04:02 UTC 2021
On Sat, 2021-09-04 at 09:18 +0200, Jan Nieuwenhuizen wrote:
> John Gilmore writes:
> > Does the GNU Mes bootstrap-reducing team have a plan to replace Grub and
> > the Linux kernel and init (and perhaps a BIOS?) with something tiny that
> > runs on bare metal and implements a file system, the mount command, and
> > processes? Many realtime OS's are much smaller than Linux or BSD and
> > yet have those capabilities. eCos might be a great start, and is free,
> > highly portable, and includes a POSIX layer (and TCP/IP for debugging),
> > though it currently lacks fork/exec/wait. The original V7 UNIX kernel
> > would work, if process sizes and filename sizes are patched, and a few
> > device drivers written for modern disk and CDROM drives. Such a
> > bootstrap kernel would enable the Scheme bootstrap programs to run well
> > enough to build gcc, then use gcc to build the Linux kernel, then boot
> > it, and continue building.
> This is a valid concern and these are nice pointers. In my FOSDEM21
> talk (https://fosdem.org/2021/schedule/event/gnumes/) I mention the fact
> that we still have work to do here. However, there are no concrete
> plans that I know of just yet, at least not as a basis for real world
> bootstrap of a full GNU/Linux system.
> GNU Mes is being deployed in the GNU Guix bootstrap and a new effort has
> just started to port the reduced binary seed bootstrap to NixOS. We are
> still working to integrate the "full source bootstrap" into GNU Guix.
> The plans after that are to replace critical usage of GNU Guile with GNU
> Mes. There is also work on ARM, RISC-V and the Hurd going on. This
> probably means, e.g., backporting RISC-V support to gcc-4.6, in short:
> lots of work todo here.
> The fact remains that the team is still quite small and GNU Guix and
> even NixOS I think are niche distributions. It would be amazing to get
> a GNU Mes based reduced binary seed bootstrap into Debian. That could
> increase our exposure a lot and may free up some development time for
> doing more wild stuff. Alas, except for chats some of us had I do not
> know of concrete plans here either.
You may want to consider Yocto Project in that area. The strength YP has is that
it is a cross compiled and customised Linux (and other RTOS) built reproducibly
from source with tightly controlled host dependencies. It can "self host", i.e.
build itself reproducibily from within its own tools too.
As such, there would be a very specific target that would need to be built to
achieve bootstrap and the system could take it from there. There are also
probably ways to minimise the bootstrap needed, that just hasn't been too much
of a focus for the project.
More information about the rb-general