This project is an experiment of building a tiny linux boot system with a single, common syslinux boot configuration used for both legacy bios and UEFI bios.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Ralph Rönnquist 4787f88fb3
some more testing
4 weeks ago
init Minor cleanup 4 weeks ago
.gitignore added 4 weeks ago
.gitweb added 6 months ago
README.adoc fixup (removing dpkg and fakechroot) 6 months ago
boot.jpg A boot splah image for qemu's boot menu; doesn't seem to work though. 6 months ago
bootmenu.cfg Updated but now unused. 4 weeks ago
copy_and_run.sh added 6 months ago
mkit.sh Set up for testing lua on uefi 4 weeks ago
muffin.lua some more testing 4 weeks ago
packiso.sh Firm up the iso boot variant. 4 weeks ago
repack.sh Include full building as well as populating a ventoy usb 4 weeks ago
splash.png use lighter colour 4 weeks ago
syslinux-iso.cfg separate, specialised config files for the different boot equipments. 4 weeks ago
syslinux-legacy.cfg some more testing 4 weeks ago
syslinux-uefi.cfg some more testing 4 weeks ago
vm.sh Minor generalisation to allow testing ventoy use cases. 4 weeks ago

README.adoc

Project "tiniest"

This project is an experiment of building a tiny linux boot system with a single, common syslinux boot configuration used for both legacy bios and UEFI bios.

The script mkit.sh prepares such a bootimage.raw and the script vm.sh runs a Qemu VM for testing it. In addition, the script packit.sh runs xorriso to prepare an ISO with that boot image, to boot either as cdrom for legacy bios or with EFI partition with for UEFI bios.

Program/packages used by mkit.sh, vm.sh and packiso.sh
ar from binutils; gawk (as awk) from gawk; cat, chmod, cp, ln and rm
from coreutils; depmod from kmod; fakeroot from fakeroot; find from
findutils; mcopy, mkdir and mmd from mtools; mke2fs from e2fsprogs;
mkfs.fat from dosfstools; sed from sed; sfdisk from fdisk; syslinux
from syslinux; tar from tar; wget from wget; xzcat from xz-utils;
qemu-system-x86_64 from qemu-system-x86; and xorriso from xorriso
  • Kernel version $VERSION is obtained from the linux-image-amd64 dependency.

Downloaded packages
busybox-static linux-image-$VERSION
syslinux syslinux-common syslinux-efi syslinux-utils isolinux

Hown to build bootimage.raw
$ ./mkit.sh

Note that building will use http_proxy if it’s set.

How to package bootimage.raw into tiniest.iso
$ ./packiso.sh

How to test hard disk legacy bios boot
$ ./vm.sh

Then push <escape> to select boot device menu; number 2 is bootimage.raw.

How to test cdrom legacy bios boot
$ ISO=y ./vm.sh

Then push <escape> to select boot device menu; number 4 is tiniest.iso.

How to test hard disk UEFI bios boot
$ EFI=yes ./vm.sh

Note that this uses bootimage.raw as second disk.

How to test cdrom UEFI bios boot
$ EFI=yes ISO=y ./vm.sh

Note that this uses tiniest.iso as second disk.