SliTaz GNU/Linux official and community documentation wiki.
.png
Translations of this page:

This is an old revision of the document!


Create many-in-1 flavors

Slitaz live CD are fully running in RAM. The feature set depends on the available RAM size. You can build an auto adaptative live CD to ensure that the right feature set is launched according to the detected RAM size. You need to :

  • define a flavor list (or an ISO list) where each flavor is nested in the previous one (like russian dolls),
  • define the minimum RAM quantity necessary for each flavor.

We will build the official slitaz-3in1 flavor which boots:

  • the core flavor with 160MB or more
  • the justx flavor with 96MB to 160MB
  • the base flavor with 32MB to 96MB
  • and display an error message with less than 32MB…

The best way: create a flavor

A flavor holds all the necessary informations to build a live CD. The build bot will keep automagically the flavor file (.flavor) up to date and this tiny file will be used by tazlito to (re)generate the ISO image.

flavors are like software sources for the flavor file and the build bot is a make tool. Providing flavors is like providing source files and providing ISO is like providing executables only.

A meta flavor has no rootfs, rootcd or packages.list. The ROOTFS_SELECTION in the receipt (see http://hg.slitaz.org/flavors/file/324757d594ef/core-3in1) gives the nested flavors and the according ram sizes from the largest to the smallest.

ROOTFS_SELECTION="160M core 96M justx 32M base"

The rootfs and the rootcd are taken from the largest flavor.

The easy way: using tazlitobox

Launch tazlitobox, select tab meta. Enter the ISO file in ISO input and the according necessary RAM size in RAM needed for each flavor with the + button. Fill ISO output name en klick Build ISO.

The cmdline way: using tazlito

Usage: tazlito merge size1 iso size2 rootfs2 [sizeN rootfsN]…

The largest flavor is given as an ISO file to get the additional rootcd files and will get the resulting ISO.

tazlito merge 160M slitaz-core.iso 96M rootfs-justx.gz 32M rootfs-base.gz
 
en/guides/manyinone.1288647146.txt.gz · Last modified: 2010/11/01 22:32 by bellard