Cloud VPS from "scratch"
I just successfully built a minimal Linux kernel, installed a SubX binary as init -- and ran the whole thing on a Linode.
It's not in https://github.com/akkartik/mu yet, but there will soon be step-by-step instructions.
This couldn't have happened without the education I received from http://minimal.linux-bg.org
Turn a set of .subx files into a bootable disk image.
$ git clone https://github.com/akkartik/mu
$ cd mu
# package up a "hello world" binary and Linux kernel into mu.iso
$ ./gen_iso examples/ex6.subx
# try it out
$ qemu-system-x86_64 -m 256M -cdrom mu.iso -boot d
The process is still fairly klunky, and I've added several large dependencies. But now that I have something working I can start polishing it.
One aspect that seems more broadly useful than just my own Assembly language project: how to deploy bootable disk images on Linode.
Now that I'm packaging Mu with a fork of bleeding-edge Linux, I have a tiger by the tail. I need to stay abreast of changes from upstream or risk bitrot, particularly as new security vulnerabilities are uncovered and patched.
I'm going to start changing the kernel soon, and I need a way to not kill myself merging patches from upstream. For starters: aggressively delete code Mu doesn't need. That'll reduce merge conflicts.
In the first run I just deleted non-x86 architectures. So far so good.
*Update on the Mu computer*
A few days ago I found out about a hobbyist OS called Soso: https://github.com/ozkl/soso
Today I've gotten Mu running on it well enough to make it a first-class supported platform alongside Linux.
LoC of C I depend on thus goes down from 12M to 33k.
It's not a complete replacement, though. I still plan to work with Linux, particularly for its networking support. But it's *so* cool to have a minimal stack supporting graphics!
Server run by the main developers of the project It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!