Using save/ to keep downloads and partial progress
[rrq/tiniest.git] / README.adoc
1 = Project "tiniest"
2
3 This project is an experiment of building a tiny linux boot system
4 with a single, common syslinux boot configuration used for both legacy
5 bios and UEFI bios.
6
7 The script +mkit.sh+ prepares such a +bootimage.raw+ and the script
8 +vm.sh+ runs a Qemu VM for testing it. In addition, the script
9 +packit.sh+ runs xorriso to prepare an ISO with that boot image, to
10 boot either as cdrom for legacy bios or with EFI partition with for
11 UEFI bios.
12
13 .Program/packages used by mkit.sh, vm.sh and packiso.sh
14 ----
15 ar from binutils; gawk (as awk) from gawk; cat, chmod, cp, ln and rm
16 from coreutils; depmod from kmod; fakeroot from fakeroot; find from
17 findutils; mcopy, mkdir and mmd from mtools; mke2fs from e2fsprogs;
18 mkfs.fat from dosfstools; sed from sed; sfdisk from fdisk; syslinux
19 from syslinux; tar from tar; wget from wget; xzcat from xz-utils;
20 qemu-system-x86_64 from qemu-system-x86; and xorriso from xorriso
21 ----
22
23 * Kernel version +$VERSION+ is obtained from the linux-image-amd64
24   dependency.
25
26 .Downloaded packages
27 ----
28 busybox-static linux-image-$VERSION
29 syslinux syslinux-common syslinux-efi syslinux-utils isolinux
30 ----
31
32 '''
33
34 .Hown to build bootimage.raw
35 ----
36 $ ./mkit.sh
37 ----
38 Note that building will use +http_proxy+ if it's set.
39
40 .How to package bootimage.raw into tiniest.iso
41 ----
42 $ ./packiso.sh
43 ----
44
45 '''
46
47 .How to test hard disk legacy bios boot
48 ----
49 $ ./vm.sh
50 ----
51 Then push <escape> to select boot device menu; number 2 is
52 +bootimage.raw+.
53
54 .How to test cdrom legacy bios boot
55 ----
56 $ ISO=y ./vm.sh
57 ----
58 Then push <escape> to select boot device menu; number 4 is
59 +tiniest.iso+.
60
61 .How to test hard disk UEFI bios boot
62 ----
63 $ EFI=yes ./vm.sh
64 ----
65 Note that this uses +bootimage.raw+ as second disk.
66
67 .How to test cdrom UEFI bios boot
68 ----
69 $ EFI=yes ISO=y ./vm.sh
70 ----
71 Note that this uses +tiniest.iso+ as second disk.