tazlito view man/flavor.5 @ rev 413
tazlito update_bootconfig() fix isolinux.cfg creation
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Sun Feb 21 04:51:59 2016 +0200 (2016-02-21) |
parents | |
children |
line source
1 .TH "TazLiTo flavor" "1" "17.02.2016"
2 .SH NAME
3 Tazlito flavor file (\fB.flavor\fR).
4 .SH SYNOPSIS
5 \fIname\fB.flavor\fR
6 .SH DESCRIPTION
7 A \fB.flavor\fR is a small file contains information needed to (re)manufacture
8 a custom LiveCD of SliTaz.
9 .PP
10 .IB flavor .flavor
11 file is a cpio.gzip archive that contains next files inside:
12 .TP
13 .IB flavor .receipt
14 File describing the flavor using the variables:
15 .Bl -bullet
16 .It
17 FLAVOR: the flavor name
18 .It
19 SHORT_DESC: short description
20 .It
21 VERSION: free format
22 .It
23 MAINTAINER: e-mail address of the flavor maintainer
24 .It
25 FRUGAL_RAM: minimum RAM required (optional)
26 .It
27 ROOTFS_SIZE: size of rootfs.gz decompressed into RAM (optional)
28 .It
29 INITRAMFS_SIZE: size of rootfs.gz on the CD-ROM (optional)
30 .It
31 ISO_SIZE: size of CD-ROM (optional)
32 .It
33 ROOTFS_SELECTION: optional, see \fBMeta flavor below\fR.
34 .El
35 Receipt may contain function \fIcustom_rules()\fR executed after installing all
36 packages, adding custom rootfs files, and executing \fIdistro.sh\fR script.
37 .TP
38 .IB flavor .desc
39 File describing the flavor (the most of the information is taken from the
40 receipt): flavor name, description, version, maintainer e-mail, Live CD RAM
41 size, build date, number of the packages, rootFS size, initRAMFS size, ISO
42 image size.
43 .TP
44 .IB flavor .pkglist
45 List of packages without specifying the version (tazlito uses the latest
46 available). This file is missing if ROOTFS_SELECTION exists in the receipt.
47 .TP
48 .IB flavor .nonfree
49 Optional list of non-free packages.
50 .TP
51 .IB flavor -distro.sh
52 Optional script executed after installing all packages and adding custom rootfs
53 files to perform tasks in the rootfs before compression. Script executed with
54 argument $DISTRO defined in the tazlito.conf(5).
55 .TP
56 .IB flavor .mirrors
57 Optional file containing the list of undigest (unofficial) mirrors to be added
58 to include personal packages.
59 .TP
60 .IB flavor .rootfs
61 Optional cpio.gzip archive containing the root filesystem tree (so it should
62 contain all the necessary top-level directories such as bin, etc, usr...).
63 Files contained in this archive will be directly extracted to the root
64 filesystem of the prepared flavor (configuration files usually).
65 .TP
66 .IB flavor .rootcd
67 Optional cpio.gzip archive that files and folders will be directly extracted to
68 the root of the CD-ROM.
69 .SH WORKING WITH FLAVORS
70 .SS Manufacture a flavor
71 You can choose the flavor to (re)manufacture from among those available:
72 .nf
73 $ tazlito list-flavors
74 .fi
75 .B List of flavors
76 .TS
77 l r r l.
78 \fBName\fR \fBISO\fR \fBRootfs\fR \fBDescription\fR
79 _
80 base 12.0M 21.0M Minimal set of packages to boot
81 core-4in1 42.0M 152.4M SliTaz core system with justX and base alternatives
82 core 31.5M 104.6M SliTaz core system
83 eeepc 31.2M 105.4M SliTaz eeepc system
84 justX 16.1M 51.2M SliTaz with a minimal X environment
85 .TE
86 .PP
87 We will start by remanufacturing the
88 .I eeepc
89 flavor which uses 105.4M of RAM and has a CD-ROM size of 31.2M:
90 .nf
91 # tazlito clean-distro
92 # tazlito get-flavor \fIeeepc\fR
93 # tazlito gen-distro
94 .fi
95 .SS Create a flavor
96 To create a flavor, you must:
97 .Bl -bullet
98 .It
99 Either create an ISO image with
100 .B tazlito gen-distro
101 and then create a flavor file with
102 .B tazlito gen-flavor
103 .It
104 Either directly create the tree structure that defines the flavor (see
105 .BR "tazlito extract-flavor" )
106 and then create the flavor with
107 .B tazlito pack-flavor
108 .It
109 Either use the
110 .B online builder
111 http://pizza.slitaz.org/
112 .El
113 .SS Post a flavor
114 Because a
115 .I .flavor
116 file contains just a few KB, it can be easily sent via the
117 mailing list
118 .RI ( http://www.slitaz.org/en/mailing-list.php ).
119 .PP
120 The results of
121 .B tazlito extract-flavor
122 can also be put in mercurial
123 .RI ( http://hg.slitaz.org/flavors ).
124 This method is preferred because the tree will be directly visible with the
125 mercurial web interface
126 .RI ( http://hg.slitaz.org/flavors/file/tip ).
127 .PP
128 This tree includes:
129 .Bl -bullet
130 .It
131 A \fBreceipt\fR file describing the flavor thanks to the variables:
132 .Bl -bullet
133 .It
134 FLAVOR: The flavor name.
135 .It
136 SHORT_DESC: Short description.
137 .It
138 VERSION: Free format.
139 .It
140 MAINTAINER: Email address of maintainer.
141 .It
142 FRUGAL_RAM: Minimum RAM required (optional).
143 .It
144 ROOTFS_SIZE: Size of rootfs.gz decompressed into RAM (optional).
145 .It
146 INITRAMFS_SIZE: Size of rootfs.gz on the CD-ROM (optional).
147 .It
148 ISO_SIZE: Size of CD-ROM (optional).
149 .It
150 ROOTFS_SELECTION: Optional, see \fBMeta flavor\fR below.
151 .El
152 .It
153 The file \fBpackages.list\fR containing the list of packages without specifying
154 the version (tazlito uses the latest available). This file is missing if
155 ROOTFS_SELECTION exists in the receipt.
156 .It
157 The optional \fBmirrors\fR file containing the list of unofficial mirrors
158 (undigest) to be added to include personal packages.
159 .It
160 The optional directory \fBrootfs\fR containing the tree to add to the root
161 filesystem rootfs.gz (configuration files usually).
162 .It
163 The optional directory \fBrootcd\fR containing the tree to add to the root of
164 the CD-ROM.
165 .El
166 .SS Adapt a flavor
167 It is often easier to modify an existing flavor than to create one from
168 scratch. To adapt the eeepc flavor for example:
169 .nf
170 # tazpkg get-install mercurial
171 # cd /home/slitaz
172 # hg clone http://hg.slitaz.org/flavors
173 # cd flavors
174 # cp -a \fIeeepc myslitaz\fR
175 .fi
176 Files in \fImyslitaz\fR can then be changed, and:
177 .nf
178 # tazlito pack-flavor \fImyslitaz\fR
179 .fi
180 Will simply create the new flavor.
181 .PP
182 Tip: you can skip mercurial installation by extracting a flavor. Using the
183 previous example:
184 .nf
185 # tazlito get-flavor \fIeeepc\fR
186 # tazlito extract-flavor \fIeeepc.flavor\fR
187 # cd /home/slitaz/flavors
188 # cp -a \fIeeepc myslitaz\fR
189 .fi
190 .SS Meta flavor
191 A meta flavor contains several flavors like nested Russian dolls. The flavor
192 will be launched at startup according to the amount of RAM available. The
193 ROOTFS_SELECTION variable defines the minimum RAM and corresponding flavor
194 parameters, example
195 .RI ( http://hg.slitaz.org/flavors/file/tip/core-4in1/receipt ):
196 .nf
197 ROOTFS_SELECTION="160M core 96M justX 32M base"
198 .fi
199 A meta flavor doesn't contain a list of packages (\fIpackages.list\fR). SliTaz
200 kernels prior to 2.6.30 do not support meta flavors.
201 .SH SEE ALSO
202 tazlito(1), tazlito.conf(5).