An experimental minimal Linux boot chain - a step toward rl-lang's long-arc goal of building an OS userspace in rl-lang.
Currently: custom-built kernel + a minimal initramfs booting into a shell.
Init is C for now; userspace binaries include rl running inside the
environment. rl-lang's own coreutils/shell (rlsh, core-utils)
are the intended long-term replacement for busybox.
- Kernel builds and boots in QEMU
- Minimal initramfs (mount proc/sys/dev, console setup, exec into a shell)
- busybox as interim shell
-
rlbinary runs inside the environment - rl-lang shell (
rlsh) as PID 1's shell, replacing busybox - Init rewritten in rl-lang
Clone and build the kernel, using the config in this repo:
./compile_kernel.sh./compile_init.shCompiles init.c.
./build_rootfs.sh./compile_initramfs.sh./run_qemu.shMIT - see LICENSE.