playing with the boot process or initrd (etc)...
https://github.com/arsv/minibase
What is this project
~~~~~~~~~~~~~~~~~~~~
This is an alternative base system / early userspace for Linux.
The role of this project in a system is similar to that of busybox
in small custom distributions. Boot the system, load modules, mount
partitions, establish networking, provide basic services. It is aimed
more at personal devices running GUIs however, more like systemd.
The project builds into small statically-linked executables with no
external dependencies. There are no build-time library dependencies
either, not even libc. It can be built with any toolchain that can
build the kernel.
Supported targets: x86_64 arm aarch64 rv64 mips mips64 i386.
(anything else will not work even if toolchain is available)
This project should be mostly useful for people building their own
custom systems, distribution, or maybe even looking for tools to put
into initrd.
Project status
~~~~~~~~~~~~~~
The project is ONGOING but not yet complete or even stable.
Components currently included in the package:
* batch command runner / script interpreter (msh)
* early-stage boot utils (switchroot, modprobe, mount).
* non-encrypted block device locator (findblk).
* encrypted device locator and passphrase prompt (passblk).
* support tooling for disk encryption (dektool, dmcrypt).
- no fsck for any file system yet.
* process supervision suite (svhub, reboot).
* udev event monitor (udevmod).
* syslogd and related tools.
* non-privileged mount service (mountd, pmount).
* controlled privilege escalation service (suhub, sudo)
* VT/DRI/input multiplexer (vtmux)
* simple non-graphical greeter (ctrlvt).
* network interface monitor (ifmon)
* DHCP client (dhcp)
* Wi-Fi client and connection manager (wsupp) [WPA2-PSK only]
* manual interface setup tools (ip4cfg, ip4info) [incomplete]
- no sntpd yet.
* simple interactive shell (cmd).
* basic command line tools (cat, ls, du, df etc).
* small linux-specific tools (systime, sync, dmesg etc).
- no package manager / download tool yet.
- no audio tools of any kind.
With everything in place, the system should boot on kernel and minibase alone
to the point where it can run X or Wayland GUI, establish internet connection
and start downloading packages.