Progress Update

I felt like the container stuff was getting in the way, so I pulled all that out for Variant D and intend to reintroduce that layer when I have a functional system being generated.

Source Code is at: https://github.com/cmpunches/Foster-D

At this point a functional CHROOT is compiled and I’m in the process of bootstrapping the rex call to a second stage rex execution from inside the context of the chroot.

One of the reasons Rex is really good at this is that it allows you to create a different environment for different scripts, and change the executing user and other factors that allow you to turn otherwise manual processes across several environments and contexts into just one that’s configured.

Kudos to the LFS project for the progress so far, as creating the toolchains for the chroot would have been much harder to learn if I hadn’t studied and borrowed chunks of their book’s process. Also special thanks to DJ Lucas from that project, whose patient guidance and training early on was invaluable to just getting to this point. I have frequently through this process run into obstacles and remembered conversations with him, that ended up helping to solve those obstacles.

From here it looks like I’m kind of on my own, as I had to change how some things are done, particularly the order in which components are made available on the chroot system in order to make rex able to even be executed. So, this is crossing a bit of a landmark of sorts into what seems to me to be uncharted (or at least undocumented) territory.

Fortunately, the D-Variant got this project almost to the M3 milestone, so, it’s almost out of the “endlessly f*cking with gcc and glibc build scripts” phase. I’m pretty excited about that part, because it’s the least interesting and least fun thing I can imagine being done on a linux system. I want to work on the package pipelines.

Things are moving rapidly now, but, I don’t want to promise on a timeline. It feels like 2-6 months for a bootable demo.

I’ve lost and regained my desire to work on this project several times since it started.