NOM
Tazlito — SliTaz Live Tool.
SYNTAXE
tazlito [command] [list|iso|flavor] [dir]
DESCRIPTION
Tazlito est un petit utilitaire permettant d'extraire le LiveCD, reconstruire l'image ISO ou regénérer le système racine du LiveCD de SliTaz. Tazlito donne aussi la possibilité de générer une distribution depuis une liste de paquets préalablements téléchargés et stockés dans un répertoire. Pour fonctionner, l'application Tazlito utilise un fichier de configuration système /etc/tazlito/tazlito.conf ou un fichier tazlito.conf se trouvant dans le répertoire courant. Ce fichier de configuration peut facilement être généré automatiquement par Tazlito, il spécifie le nom de l'image ISO, le nom du volume, le préparateur, le chemin vers le repositoire des paquets et celui vers la distribution. Tazlito permet aussi de configurer un répertoire contenant des fichiers additionnels, qui seront copiés dans le LiveCD lors de la génération de la distribution.
Tazlito est, distribué sous licence libre GNU GPL v.3, installé par défaut sur SliTaz et installé/testé avec succès sur Debian GNU/Linux. Vous trouverez aussi un complément d'informations au sujet de création de sa propre version du LiveCD, via le livre de cuisine (Cookbook) de SliTaz et le Handbook.
COMMANDES
usage
La commande usage
affiche une liste des commandes disponibles
avec une courte description :
# tazlito usage
stats
stats
affiche les variables de configuration, le chemin vers
les différents fichiers et répertoires et les informations sur l'image ISO :
# tazlito stats
gen-config
La commande gen-config
vous permet de générer une fichier
de configuration prêt à être édité. Par défaut le fichier est créé dans
le répertoire courant et peut aussi l'être dans un autre répertoire si
spécifié :
# tazlito gen-config # tazlito gen-config /path/to/distro
configure
La commande configure
permet de configurer le fichier
de configuration système ou celui trouvé dans le répertoire courant :
# tazlito configure
gen-iso
La commande gen-iso
pour Generate ISO permet de générer
une nouvelle image ISO du LiveCD suite à des modifications et ajouter dans
le système racine du CD-ROM. Pour fonctionner cette commande a besoin d'un
répertoire contenant la structure du système Live, cette structure peur
facilement être construite avec la commande
extract-distro
, modifiée et
reconstruite via :
# tazlito gen-iso
gen-initiso
La commande gen-initiso
va faire le même travail que
gen-iso
mais en reconstruisant préalablement l'initramfs compressé
du système. L'initramfs contient tous le système racine de la distribution
et doit être reconstruite en cas de modifications sur les fichiers.
# tazlito gen-initiso
list-flavors
La commande list-flavors
télécharge si nécessaire et affiche
la liste des différentes saveurs disponibles. On peut forcer le téléchargement
avec --recharge
.
# tazlito list-flavors # tazlito list-flavors --recharge
get-flavor
La commande get-flavor
télécharge si nécessaire et prépare
les fichiers nécessaires à gen-distro
pour refabriquer une saveur.
# tazlito get-flavor saveur-particuliere
show-flavor
La commande show-flavor
affiche les caractéristiques d'une
saveur et ses dimensions après refabrication. Les options --brief
et --noheader
réduisent l'affichage produit.
# tazlito show-flavor saveur-particuliere # tazlito show-flavor saveur-particuliere --brief # tazlito show-flavor saveur-particuliere --brief --noheader
gen-flavor
La commande gen-flavor
crée un fichier de description d'une
nouvelle saveur à partir des résultats de fabrication de
gen-distro
. Le fichier .flavor
produit pourra être ensuite envoyé à slitaz.org.
# tazlito gen-flavor nouvelle-saveur
gen-liveflavor
La commande gen-liveflavor
crée une image ISO et un fichier
de description d'une nouvelle saveur à partir de la distribution courante.
Un fichier texte optionnel permetde décrire les modifications à faire par
rapport à la distribution courante. Le format de chacune de ses lignes est
[code][tabulation][caractères]. Les valeurs possibles de code sont
+, -, @, ! et ? pour ajouter
un paquet, le retirer, décrire la saveur, ajouter un paquet non libre,
et afficher un message à l'écran.
# tazlito gen-liveflavor nouvelle-saveur # tazlito gen-liveflavor autre-saveur mes-modifications # cat mes-modifications @ Developper tools and some non-free packages + slitaz-toolchain + mercurial ! skype ! flash-plugin
upgrade-flavor
La commande upgrade-flavor
raffraîchit une saveur consue pour
une ancienne version de SliTaz en mettant à jour la liste des paquets avec
les dernières versions des paquets disponibles.
# tazlito upgrade-flavor une-saveur
extract-flavor
La commande extract-flavor
convertit une saveur en
une arborescence facilement modifiable dans
/home/slitaz/VERSION/flavors qui pourra être gérée avec Mercurial dans
http://hg.slitaz.org/flavors.
Par exemple sur une cooking le répértoire de travail sera
/home/slitaz/cooking/flavors.
# tazlito extract-flavor une-saveur
pack-flavor
La commande pack-flavor
convertit une arborescence de
/home/slitaz/VERSION/flavors en saveur (.flavor). Soit
l'opération inverse de
tazlito extract-flavor
.
# tazlito pack-flavor une-saveur
extract-distro
La commande extract-iso
sert à extraire les fichiers
d'une images ISO du LiveCD, pour en reconstruire la structure (Racine du CD-ROM
et du système). Il est ensuite possible de faire les modifications ou ajouts
souhaités, pour reconstruire l'image ISO via les commandes
gen-iso
ou
gen-initiso
. Exemple d'utilisation :
# tazlito extract-distro slitaz-cooking.iso
gen-distro
La commande Generate Distribution permet de générer la structure
du système Live et une image ISO via une liste de paquets. Pour fonctionner,
cette commande a besoin d'une liste de paquets, d'un répertoire contenant tous
les paquets (.tazpkg) de la liste et d'un répertoire pour générer
la distribution. La liste de paquets peut être extraite d'une saveur par
la commande get-flavor
. Si l'on utilise
le Live-CD, les options --cdrom
et --iso='image-iso'
permettent de refabriquer les packets qui placent des fichiers dans
/boot sans être obligé de les télécharger et récupère les fichiers
additionnels du Live-CD. Le chemin vers les différents répertoires sont
à configurer dans le fichier de configuration utilisé et les paquets peuvent
être téléchargés depuis les miroirs de SliTaz ou générés par Cookutils. Pour
générer une distro :
# tazlito gen-distro # tazlito gen-distro --cdrom # tazlito gen-distro --iso=slitaz.iso # tazlito gen-distro package-list
clean-distro
Supprime tous les fichiers générés ou extraits de la structure du LiveCD :
# tazlito clean-distro
check-distro
Cette commande permet simplement de vérifier si les fichiers non installés par des paquets, sont bien présents dans la distro :
# tazlito check-distro
writeiso
Cette commande sauvegarde le système de fichier dans une archive cpio (rootfs.gz) et génère une image ISO bootable. Writeiso peut être utilisé avec une installation sur disque dur ou en mode live. Il sauvegarde aussi votre répertoire /home. Cette commande vous permet de modifier de refabriquer facilement votre propre LiveCD. Il suffit de démarrer le LiveCD, de modifier les fichiers que vous voulez et de faire :
# tazlito writeiso [gzip|lzma|none] # tazlito writeiso gzip # tazlito writeiso gzip image-name
check-list
Vérifie si distro-packages.list est à jour avec les dernières version des paquets.
# tazlito check-list
repack
Recompresse le(s) rootfs avec la meilleure compression possible.
# tazlito repack slitaz.iso
merge
Réunit plusieurs saveurs imbriquées comme des poupées russes. Chaque rootfs est un sous ensemble du précédent. Le premier rootfs est extrait de l'image ISO en 3e paramètre. La saveur à lancer sera choisie au démarrage suivant la quantité de RAM disponible.
# tazlito merge 160M slitaz-core.iso 96M rootfs-justx.gz 32M rootfs-base.gz
build-loram
Crée une image ISO pour les machines avec peu de mémoire. Le système de fichier racine peut soit être toujours chargé en mémoire ou peut éventuellement rester sur le cdrom selon la mémoire disponible.
# tazlito build-loram slitaz.iso loram.iso # tazlito build-loram slitaz.iso loram-cdrom.iso cdrom
emu-iso
La commande emu-iso va utiliser l'émulateur Qemu pour démarrer et lançer SliTaz. Qemu permet de tester l'image ISO fraîchement construite sans la graver sur CD-ROM ou redémarrer en mode frugal.
# tazlito emu-iso # tazlito emu-iso path/to/image.iso
burn-iso
Burn ISO va deviner le périphérique de CD-ROM, sa vitesse de gravure et lancer l'outils Wodim pour graver une image ISO. L'image ISO par défaut est celle du fichier de configuration courant, mais il est possible de spécifier une autre image via la ligne de commande :
# tazlito burn-iso # tazlito burn-iso slitaz-hacked.iso
SAVEURS
Les fichiers .flavor contiennent en quelques Ko toutes les informations nécessaires pour refabriquer un LiveCD customisé de SliTaz.
Refabriquer une saveur
On choisit la saveur à refabriquer parmi celles disponibles.
# tazlito list-flavors List of flavors ================================================================================ Name ISO Rootfs Description ================================================================================ base 6.9M 13.1M Minimal set of packages to boot core-3in1 31.5M 105.6M SliTaz core system with justX and base alternatives core 31.5M 104.6M SliTaz core system eeepc 31.2M 105.4M SliTaz eeepc system justX 16.1M 51.2M SliTaz with a minimal X environnement
Nous allons refabriquer la saveur eeepc dont le système de fichier utilise 105.4M de RAM et le CD-ROM fait 31.2M.
# tazlito clean-distro # tazlito get-flavor eeepc # tazlito gen-distro
Créer une saveur
Pour créer une saveur, il faut :
- Soit créer une image ISO avec
tazlito gen-distro
puis créer la saveur correspondante avectazlito gen-flavor
. - Soit créer directement l'arboscence qui définie la saveur (voir
la commande
tazlito extract-flavor
) puis créer la saveur avectazlito pack-flavor
. - Soit utiliser le générateur de saveur en ligne :
Publier une saveur
Les fichiers .flavor ne font généralement que quelques Ko. Ils peuvent être envoyés via la liste de diffusion de SliTaz.
Le résultat de tazlito
extract-flavor
peut aussi être mis dans
mercurial. Cette méthode est
préférable car l'arborescence sera directement visible avec
l'interface web de
mercurial.
Cette arborescence comprend :
- Le fichier receipt décrit la saveur grâce aux variables :
- FLAVOR : le nom de la saveur.
- SHORT_DESC : la description en une ligne.
- VERSION : format libre.
- MAINTAINER : adresse email.
- FRUGAL_RAM : optionnel (peut être estimé), RAM minimum nécessaire.
- ROOTFS_SIZE : optionnel (peut être estimé). Taille de rootfs.gz décompressé en RAM.
- INITRAMFS_SIZE : optionnel (peut être estimé). Taille de rootfs.gz sur le CD-ROM.
- ISO_SIZE : optionnel (peut être estimé). Taille du CD-ROM.
- ROOTFS_SELECTION : optionnel, voir Meta saveur plus bas.
- Le fichier packages.list contenant la liste des paquets sans préciser leur version (tazlito utilisera la dernière disponible) Ce fichier est absent si ROOTFS_SELECTION est précisé dans receipt.
- Le fichier optionnel mirrors contenant la liste des miroirs non officiels (undigest) à ajouter pour inclure des paquets personnels.
- Le répertoire optionnel rootfs contenant l'arborescence à ajouter dans le système de fichier racine rootfs.gz (des fichiers de configuration habituellement).
- Le répertoire optionnel rootcd contenant l'arborescence à ajouter dans la racine du CD-ROM.
Adapter une saveur
Il est souvent plus simple de modifier une saveur existante que d'en créer une ex-nihilo. Pour adapter la saveur eeepc par exemple :
# tazpkg get-install mercurial # cd /home/slitaz # hg clone http://hg.slitaz.org/flavors # cd flavors # cp -a eeepc myslitaz
Les fichiers dans myslitaz peuvent être adaptés, puis
# tazlito pack-flavor myslitaz
Créera simplement la nouvelle saveur.
Astuce: on peut éviter l'installation de mercurial en extrayant une saveur. L'exemple précédent dévient:
# tazlito get-flavor eeepc # tazlito extract-flavor eeepc.flavor # cd /home/slitaz/flavors # cp -a eeepc myslitaz
Meta saveur
Une meta saveur contient plusieurs saveurs imbriquées comme des poupées russes. La saveur à lancer sera choisie au démarrage suivant la quantité de RAM disponible. La variable ROOTFS_SELECTION définit les couples (quantité de RAM minimun, saveur correspondante), exemple :
ROOTFS_SELECTION="160M core 96M justX 32M base"
Une meta saveur n'a pas de liste de paquets (packages.list). Les noyaux SliTaz antérieurs à la version 2.6.30 ne supportaient pas les meta saveurs.
MAINTENEUR
Christophe Lincoln <pankso at slitaz.org>
Pascal Bellard <pascal.bellard at slitaz.org>