It's been a while since the last Tuesday Update and a lot has happened in Serpent OS on the design and development front in the mean time.
First and foremost, the team has held ongoing design and development discussions related to tooling and release engineering design, which have helped unblock the implementation of various aspects of our tooling and is paving the way for our upcoming pre-alpha MVP.
This has allowed @Ikey to get a bunch of stuff scoped out and squared away:
- He has finished his rewrite of moss-db to use the LMDB database backend.
- He recently finished his from-scratch rewrite of our moss package manager on top of the new moss-db, which has allowed him to significantly rework the internals in terms of both design, code approach and CLI UX.
- He contributed an early linux-kvm kernel recipe which he used to boot (an early and incredibly rough) Serpent OS instance in QEMU. He plans to tweak this and use it to smoke test the Serpent OS self-hosting base system going forward.
- Recently, he has wrapped up a prototype of our Avalanche "Boulder as a Service" component. This work allows us to send build requests to remote Avalanche Builder instances and subsequently have them report back with logs and how to fetch the finished binary artefacts each build job exposes. The goal is to be able to use a distributed set of known and trusted Avalanche Builders (each internally controlling a Boulder instance which builds .stones) to chug through (re)build queues as fast as possible.
- Finally, he has now begun working on Vessel, which is our Binary Collection (of .stone packages) manager. Vessel is responsible for fetching, storing and indexing finished builds and associated build manifest metadata in such a way that moss can be configured to consume these Binary Collections via their Vessel-generated Indices.
@ermo has been busy helping set up and document the scope and workflow for a short-lived, separate community recipe repo appropriately named "venom". The goal is to get a feel for the papercuts in the current Serpent OS tooling and to subsequently generate bugreports and PRs that help inform boulder and moss development. So far, it has been a resounding success, to the point where our awesome community "snekwrangler" packagers are planning to create and maintain their own Binary Collection of .stones built with the recipes they have contributed to the venom recipe repo.
In addition, he has contributed both small QoL and UX fixes for moss and boulder (many resulting from bug reports made by our intrepid group of snekwranglers) as well as merged quality PRs from enthusiastic contributors (you know who you are 👏 ).
@sunnyflunk is back from an extended vacation and is slowly getting back into the swing of things. Poor internet in the interrim has prevented him from being able to contribute as much as he would have probably preferred, but it appears that things are looking up slightly on the ISP front. He is continually monitoring toolchain mailing lists for useful optimisations etc., so expect to hear more on this front in the coming Tuesday Updates and upcoming blog posts.
@ulaas is still snowed under with IRL related stuff, but once that is sorted, he has stated that he is really looking forward to getting back and being part of the fun.
Preferred sponsorship is now GH Sponsors
A quick note that @Ikey now prefers that people sponsor him and the project via his GH Sponsor page. As he is currently working full time on Serpent OS, any funds you send his way will be greatly appreciated and will go directly towards allowing him to continue working on Serpent OS moving forward.
See The Tuesday Update #1