slitaz-doc-wiki-data view pages/en/guides/manyinone.txt @ rev 7

Add pages/en folder.
author Christopher Rogers <slaxemulator@gmail.com>
date Sat Feb 26 12:17:18 2011 +0000 (2011-02-26)
parents
children
line source
1 ======= Create many-in-1 flavors =======
3 Slitaz LiveCDs run fully in RAM. The feature set depends on the available RAM size. You can build an auto adaptive LiveCD to ensure that the right feature set is launched according to the detected RAM size. You need to:
5 * define a flavor list (or an ISO list) where each flavor is nested in the previous one (like russian dolls),
6 * define the minimum RAM quantity necessary for each flavor.
8 The many-in-1 ISO may be a little bit larger than the largest
9 flavor. Sometimes the sizes are identical.
11 We will build the official slitaz-3in1 flavor which boots:
13 * the core flavor with 160MB or more
14 * the justx flavor with 96MB to 160MB
15 * the base flavor with 32MB to 96MB
16 * and displays an error message with less than 32MB...
18 The ISO images slitaz-3.0-3in1.iso and the largest flavor slitaz-3.0.iso share the same size : 31457280 bytes. (caused by the 1MB padding, it should be 123351 bytes larger otherwise).
20 ===== The best way: create a flavor =====
22 A flavor holds all the necessary information to build a LiveCD.
23 The [[http://bb.slitaz.org/|build bot]] will automagically keep the flavor file (.flavor) up to date and this tiny file will also be used by tazlito to (re)generate the ISO image.
25 [[http://hg.slitaz.org/flavors|flavors]] are like software sources for the flavor file: the [[http://bb.slitaz.org/|build bot]] is a make tool and **tazlito pack-flavor** the compiler. Providing flavors is like providing source files and providing ISOs is like providing executables only.
27 A meta flavor has no rootfs, rootcd or packages.list.
28 The **ROOTFS_SELECTION** in the receipt (see http://hg.slitaz.org/flavors/file/324757d594ef/core-3in1) gives the nested flavors with the according ram sizes from the largest to the smallest.
30 <code>
31 ROOTFS_SELECTION="160M core 96M justx 32M base"
32 </code>
34 The rootfs and the rootcd are taken from the largest flavor.
36 ===== The easy way: using tazlitobox =====
38 Launch **tazlitobox**, select tab **meta**. Enter the ISO file in **ISO input** and add the according necessary RAM size in **RAM needed** for each flavor with the **+** button. Fill the **ISO output** name and click **Build ISO**.
40 ===== The cmdline way: using tazlito =====
42 Usage: tazlito merge size1 iso size2 rootfs2 [sizeN rootfsN]...
44 The largest flavor is given as an ISO file to get the additional rootcd files and will get the resulting ISO.
46 <code>
47 tazlito merge 160M slitaz-core.iso 96M rootfs-justx.gz 32M rootfs-base.gz
48 </code>