paperlined.org
dev > oss > kexec-based_bootloader
document updated 14 years ago, on Sep 8, 2009

scope

When new users visit the site, we'll provide them with a stock-ISO, as well as a ROM-O-Matic/build-your-own-SLAX style customizable image.

But I'm not sure which distro to choose yet. And really, a lot of our value-add is in the "glue" module that 1) parses the config file, 2) ties all the pre-existing components together, and 3) makes all the available hard-to-learn wizardry available in a single easy-to-use package. So we're more like Linux Router Project or Clonezilla than we are GRUB. That is, one significant deliverable will be the single central script that calls all the other available utilties. At the same time, it's important to deliver a very polished distro to the end-user, so that may become an important deliverable as well.

That said, I think that Micro Core is the obvious distro to base our work on right now.

design decision

Do we do the main script in C, or Perl? Or maybe Lua?

Answer: Nobody uses Perl/Lua in initrds. Bash/C, sure. Space is definitely still an issue for us, even if we're targetting ~10mb.

What languages get used for heavy embedded scripting? Ksh? (zsh is 0.5mb, while the bare Perl interpretter is 1.0mb, and libruby.so is 0.75mb)

GRUB2 uses Lua.

phase 1

Have the same functionality that boot.kernel.org and similar ones do, that is, be able to boot a handful of distros (although, unlike boot.kernel.org, we should have NO pre-modified files locally).

phase 2