Hi,
I wanted to propose two new pioneer projects. Given that I can't Mentor
myself, I prefer to send an email here than to add it directly to the
wiki. I've left out the difficulty ratting, because I have literally no
idea. I will gladly help potential mentees (and I review everything
functoria-related anyway).
Unikernel galery (initial idea by mort)
By combining functoria and js_of_ocaml, it should be possible to make a
webpage that showcase a set of unikernels (for example,
mirage-skeleton). We could then go further and allow to run functoria in
the webpage directly (showing dots and description, and so on).
This project would involved several tasks: First, understand how
functoria works (and modify it if necessary). Then, become familiar with
js_of_ocaml and be able to make a pretty webpage with it. Finally,
improve visualisation and documentation informations that are available
through "mirage describe" (and the --dot option) and adapt them to a web
format.
High level devices
A good amount of the mirage devices that are implemented right now (in
mirage.ml) are fairly low level. Even the one related to web servers
need a rather large amount of boilerplate to setup (see the
static_website_tls unikernel in mirage-skeleton). The mirage-seal
project attempted to improve that by providing an external tool that
would emit the necessary code. It's also well known that using
js_of_ocaml in a unikernel is slightly nightmare-ish on the build system
side.
It should be possible to replace all that by new devices that provide
everything directly, using judicious functor applications and configure
scripts. This would involve studying the various idioms that are used
(in mirage-skeleton, mirage-www and other unikernels) and coming up with
an API that is flexible enough to cover all the use cases.
I expect this would make it much easier to create new unikernel that do
high level tasks.
_______________________________________________
MirageOS-devel mailing list
[email protected]
https://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel