diary @ telent

Nothing to write /home about#

Sun 02 Apr 2023 05:10:43 PM UTC

Topics: liminix

This week in Liminix: a change in the plan. Much to think about, nothing to show

The original plan

In this phase we revisit this decision, and figure out how to gain the advantages of the Nixos options/type system while still allowing multiple instances of the same module

I spent a day or so thinking about this. The two fundamental tools for abstraction in Liminix are the module and the service.

With that in mind, I've decided to defer the redesign of modules until later down the line when I also need to do some serious thinking about services. There's no point considering one without the other.

Writable filesystem

So onto the next part of the plan. As of March 2023 the Liminix filesystem is a “squashfs” image, meaning that the filesystem is generated at build time and read-only at runtime. Any updates or reconfiguration must be made by producing and flashing an entire new image, which is fine if you're making a big change anyway but not very convenient if you just wanted to install netcat or change the wifi channel.

I don't have anything here in commitable form yet, but I note the following as bullet points:

Where I am right now, it looks like this means we'll be using initramfs to boot the system and then have an early userland that mounts the store from jffs2/ubifs and runs a script to recreate /etc and friends based on what's in it.

It ought to work, anyway. Next week maybe I can talk about it in the past tense and not the future conditional.