I started hacking on the bootloader issue, decided to move out the various libraries into src/kern/ first, and completed that for zlib, began it for the rest. The other places – src/lib/libc/ src/sys/lib/ src/sys/arch/*/stand/lib* – now look much cleaner already, and in fact can do some better. I also merged bootloader and other improvements from OpenBSD before beginning the file move dance, but it still worked for me in qemu for testing, so I didn’t expect much breakage.
Furthermore, MirOS now officially has OPTU-8 locale (no more CESU-8), even if masqueraded as “en_US.UTF-8” for better application support. The CSUR had already, as posted about quite a few times, allocated us a PUA range, which mksh was already using, and now the base system and libc are beginning to catch up. Thanks to a pen and paper “game” I have sort of a defined finite machine modelling the conversion states, and found out I can get by with the mbstate_t we already were using. tr(1) already doesn’t wreck ISO-8859-1 accents any more (nor binary files), although that definitively needs some testing.
I’d just like to warn people that HEAD (MirOS-current) is a pretty moving target at the moment.