So after doing some hardcore reading of most of the genode operating system manual today (excluding the build system, under the hood and functional specification parts) I think I have a better understanding of how guix and genode could complement each other and what steps could be taken. Here are my initial thoughts:
1. genode-build-system would be used for building genode components. 2. genode-operating-system would specify the configuration of genode components and generate their xml configuration and guix system vm would assemble a full bootable genode system. 3. guix-daemon component based on the nix-daemon component is needed. 4. using this new component support for generations and genode system reconfiguration can be added 5. a shepherd component is created and the genode-operating-system is extended to take one or more operating-system declarations to spawn guix userspaces. For a genode-operating-system implementing a headless hypervisor each application can run in it's own shepherd component, maybe requiring an additional shepherd-multiplexer component. If building a desktop os it can be run in a single shepherd component with exclusive access to the framebuffer and input components. I'll have to see if my time, skill and discipline is enough to materialize into something useful :)
