It’s not really something that is supposed to be part of coreboot, but it is something the payload used in coreboot could assist with.
Another thing with this recovery stuff is that it’s very OS and even distribution-dependant. With Android, this is done by having user data and a static ROM separate, and a factory reset doesn’t do much besides deleing the user data. For Arch, I would imagine you need another running linux system to chroot into the existing installation and fix it that way, which is traditionally done with different boot media. On a Pi3 this is ready since you can take out the SD card, plug it into a different system and fix it that way.
There is one thing that can be done as a payload for Coreboot which is the heads project which uses a minimal linux kernel with embedded initramfs to give a very basic preboot environment. This replaces a classic boot loader like Grub or Lilo, and uses kexec to launch the actual kernel with the correct parameters. Because heads can be modified, you can include some basic tools to mount arbitrary filesystems and chroot in to fix things.
To illustrate somewhat further why this is not really something that would be ‘part of’ coreboot: coreboot is like the first part of a classical BIOS, it doesn’t do actual BIOS things, bootloader things of anything else for that matter. All it is designed to do is get the system to a minimal state where it can run more sophisticated code with a somewhat common starting state (i.e. you need specific coreboot per motherboard but a payload like SeaBIOS can* run on all boards that have coreboot without modifications).
On the other hand, some pointers to where such a recovery environment could be loaded might help with comparable questions. Most answers will, hoever, be along the lines of “add an extra partition on your storage device with an extra OS on it” because you’d simply select the alternate OS from your bootloader (which is not coreboot but something else like GRUB) and fix your main OS form there. You could even just load an install/recovery ISO image and emulate a live CD in there.
John
On 18 Sep 2018, at 21:04, Sebastian sebcherek@gmail.com wrote:
Could there be some mechanism to repair broken OS setups? Maybe chroot or like android does with factory reset?
I mean, I've been using Arch on Pi3 and updated libidn but not systemd and now I've got access to Coreboot only. My fault, but some mechanism for repairing broken installs seems vital as various things might happen.
On the other hand I could just forget all that and...-- coreboot mailing list: coreboot@coreboot.org https://mail.coreboot.org/mailman/listinfo/coreboot