website diff fr/doc/cookbook/wok-tools.html @ rev 499

FR: fixed typos
author Pierre ROMILLON <pierre.romillon@slitaz.org>
date Mon Jun 01 22:45:41 2009 +0200 (2009-06-01)
parents
children c3685915bdf3
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/fr/doc/cookbook/wok-tools.html	Mon Jun 01 22:45:41 2009 +0200
     1.3 @@ -0,0 +1,260 @@
     1.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     1.5 +    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     1.6 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     1.7 +<head>
     1.8 +	<title>SliTaz Cookbook - Wok &amp; Tools</title>
     1.9 +	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    1.10 +	<meta name="description" content="" />
    1.11 +	<meta name="expires" content="never" />
    1.12 +	<meta name="modified" content="2007-12-24 17:00:00" />
    1.13 +	<meta name="publisher" content="www.slitaz.org" />
    1.14 +	<meta name="author" content="Christophe Lincoln"/>
    1.15 +	<link rel="shortcut icon" href="favicon.ico" />
    1.16 +	<link rel="stylesheet" type="text/css" href="book.css" />
    1.17 +</head>
    1.18 +<body bgcolor="#ffffff">
    1.19 +
    1.20 +<!-- Header and quick navigation -->
    1.21 +<div id="header">
    1.22 +<div align="right" id="quicknav">
    1.23 +	<a name="top"></a>
    1.24 +	<a href="index.html">Table des matières</a> |
    1.25 +	<a href="receipts.html">Receipts</a>
    1.26 +</div>
    1.27 +<h1><font color="#3E1220">SliTaz Cookbook</font></h1>
    1.28 +</div>
    1.29 +
    1.30 +<!-- Content. -->
    1.31 +<div id="content">
    1.32 +<div class="content-right"></div>
    1.33 +
    1.34 +
    1.35 +<h2><font color="#DF8F06">Wok &amp; Tools</font></h2>
    1.36 +<ul>
    1.37 +	<li><a href="#utils">Les utilitaires du projet.</a></li>
    1.38 +	<li><a href="#wok">Woking</a> - Utiliser le wok.</li>
    1.39 +	<li><a href="#cook">Compiler et générer des paquets.</a></li>
    1.40 +	<li><a href="#opts">Options de compilations des paquets.</a></li>
    1.41 +	<li><a href="#files">Fichiers inclus ou exclus des paquets.</a></li>
    1.42 +	<li><a href="#categories">Catégories des paquets.</a></li>
    1.43 +	<li><a href="#woktree">Structure d'un paquet dans le wok.</a></li>
    1.44 +	<li><a href="#pkgtree">Structure d'un paquet tazpkg.</a></li>
    1.45 +	<li><a href="receipts.html">Recettes des paquets.</a></li>
    1.46 +</ul>
    1.47 +
    1.48 +<a name="utils"></a>
    1.49 +<h3>Les utilitaires du projet</h3>
    1.50 +<p>
    1.51 +Au file du temps le projet SliTaz à créer divers petits utilitaires permettant
    1.52 +de reconstruire le système depuis les sources et de façon automatique.
    1.53 +<a href="http://www.slitaz.org/get/tazwok.html">Tazwok</a> est utilisé pour
    1.54 +compiler et générer des paquets (<em>cook</em> pour cuire) via 
    1.55 +les intructions trouvées dans <a href="receipts.html">les recettes</a>. Le 
    1.56 +projet propose aussi une archive d'outils contenant divers petits utilitaires,
    1.57 +des exemples et des fichiers de configuration. Le générateur de distribution
    1.58 +<em>Live</em> Tazlito (SliTaz Live Tool), déstiné aux utilisateurs
    1.59 +et développeurs. Tazlito permet d'extraire et reconstruire une image ISO 
    1.60 +de LiveCD et de générer des distributions à saveure depuis une liste de
    1.61 +paquets, un fichier de configuration et une description. Les utilitaires sont
    1.62 +tous distribués sous forme d'archive source et sont installés par défaut sur
    1.63 +SliTaz. Les développeurs ou futur contributeurs peuvent se référencer à la page 
    1.64 +<a href="http://www.slitaz.org/devel/forge.html">forge</a> donnant des
    1.65 +informations sur la gestion du projet SliTaz.
    1.66 +</p>
    1.67 +<h4>Tazwok et le wok</h4>
    1.68 +<p>
    1.69 +L'idée est d'utiliser un répertoire (wok) contenant tous les paquets
    1.70 +disponibles, chaque paquet contient au minimum une recette (receipt) servant
    1.71 +à télécharger, désarchiver, compiler et générer le paquet binaire. Pour
    1.72 +fonctionner, Tazwok a aussi besoin d'un répertoire pour stocker les sources
    1.73 +téléchargées ($SOURCES_REPOSITORY) et d'un répertoire pour les paquets générés
    1.74 +($PACKAGES_REPOSITORY), ces valeurs peuvent être configurées via le fichier :
    1.75 +/etc/tazwok.conf.
    1.76 +</p>
    1.77 +
    1.78 +<a name="wok"></a>
    1.79 +<h3><font color="#6c0023">Woking - Utiliser le wok</font></h3>
    1.80 +<p>
    1.81 +Woking ou comment utiliser le wok pour construire des paquets. Pour commencer
    1.82 +il faut que <a href="http://www.slitaz.org/get/tazwok.html">Tazwok</a> soit
    1.83 +installé sur votre système et que les principaux outils de développement le
    1.84 +soit aussi (binutils, compilateur, librairies-dev, make), sur Slitaz il suffit
    1.85 +d'installer le meta-paquet <code>slitaz-toolchain</code> :
    1.86 +</p>
    1.87 +<pre>
    1.88 + # tazpkg recharge
    1.89 + # tazpkg get-install slitaz-toolchain
    1.90 +</pre>
    1.91 +<h4>Récupérer le wok</h4>
    1.92 +<p>
    1.93 +Pour travailler il faut récupérer le wok depuis le dépôt Mercurial ou depuis
    1.94 +une archive sur le miroir principale (TuxFamily) de Slitaz. En supposant que 
    1.95 +SliTaz se construit dans <code>/home/slitaz</code> :
    1.96 +</p>
    1.97 +<pre>
    1.98 + $ hg clone http://hg.slitaz.org/wok/ /home/slitaz/wok
    1.99 +</pre>
   1.100 +<p>
   1.101 +Les archives sont aussi récupérable depuis l'URL : 
   1.102 +<a href="ftp://download.tuxfamily.org/slitaz/wok/">ftp://download.tuxfamily.org/slitaz/wok/</a>.
   1.103 +Il suffit de prendre la dernière version et de la désarchiver où bon vous
   1.104 +semble. Avant de compiler son premier paquet il faut configurer Tazwok pour 
   1.105 +qu'il trouve le wok préalablement téléchargé. Par défaut le chemin est
   1.106 +<code>/home/slitaz/wok</code>, vous pouvez le changer ou renommer le wok
   1.107 +téléchargé. Pour afficher/vérifier les chemins que Tazwok va utiliser et
   1.108 +le nombres de paquet disponibles dans le wok, vous pouvez utiliser la
   1.109 +commande <code>stats</code> de Tazwok :
   1.110 +</p>
   1.111 +<pre>
   1.112 + # tazwok stats
   1.113 +</pre>
   1.114 +
   1.115 +<a name="cook"></a>
   1.116 +<h3>Compiler et générer des paquets</h3>
   1.117 +<p>
   1.118 +Configuer, compiler, striper, générer le paquet SliTaz et le compresser peut
   1.119 +se faire en une seule commandes. Pour éviter toute frustration... il est
   1.120 +conseillé de commencer par construire un paquet, sans modifier sa recette, et
   1.121 +ne demandant pas de dépendances. M4 est idéal pour se lancer et cuire (cook) :
   1.122 +</p>
   1.123 +<pre>
   1.124 + # tazwok cook m4
   1.125 +</pre>
   1.126 +<p>
   1.127 +Une fois le travail fini, le paquet SliTaz se trouvent dans le repositoire
   1.128 +spécifié dans la configuration (Par défaut <code>/home/slitaz/packages</code>).
   1.129 +Si tout c'est bien passé, vous pouvez installer le paquet sur le système hôte
   1.130 +ou l'utiliser pour générer votre distribution LiveCD via
   1.131 +<a href="http://www.slitaz.org/doc/manuals/tazlito.html">Tazlito</a>. Pour
   1.132 +créer un nouveau paquet vous pouvez utiliser la commande <code>new-tree</code>
   1.133 +avec l'option <code>--interactive</code> et lire la document au sujet des
   1.134 +possibilités proposée par <a href="receipts.html">les recettes</a> des paquets.
   1.135 +Toutes les commandes disponibles avec Tazwok sont décrite dans :
   1.136 +<a href="http://www.slitaz.org/doc/manuals/tazwok.html">Tazwok manual</a>
   1.137 +</p>
   1.138 +<h4>Cooklists - Liste de cuisson</h4>
   1.139 +<p>
   1.140 +Pour compiler plusieurs paquets en une seule commande, on peut utiliser des 
   1.141 +listes de cuisson. Il y a des listes exemples dans le répertoire 
   1.142 +/usr/share/examples/tazwok/cooklists sur SliTaz, c'est juste un fichier texte
   1.143 +avec un paquet par ligne. Exemple avec mypkgs.cooklist :
   1.144 +</p>
   1.145 +<pre>
   1.146 + # tazwok cook-list mypkgs.cooklist
   1.147 +</pre>
   1.148 +
   1.149 +<a name="opts"></a>
   1.150 +<h3>Options de compilations des paquets</h3>
   1.151 +<p>
   1.152 +Vous êtes libre d'utiliser les options de compilation que vous désirez, il faut
   1.153 +juste respecter le FSH, la doc dans /usr/share/doc par exemple et suivre les
   1.154 +standards de Freedesktop (.desktop en autre). Ensuite c'est une questions de 
   1.155 +choix, on peut par exemple désactiver le support XML pour avoir un binaire PHP
   1.156 +plus petit et se débarasser de libxml2, mais dans le cas de PHP le gain de 
   1.157 +place ne vaut pas le coup par rapport aux pertes de fonctionnailtés. Si vous
   1.158 +avez des doutes, regardez des recettes existantes et leure options de
   1.159 +compilation dans <code>compile_rules</code>.
   1.160 +</p>
   1.161 +<h4>Optimisation</h4>
   1.162 +<p>
   1.163 +Les paquets SliTaz officiels sont optimisés pour i486, les options
   1.164 +d'optimisation passées en arguments à configure sont spécifiées dans le 
   1.165 +fichier de configuration de Tazwok (<code>/etc/tazwok.conf</code>) et peuvent 
   1.166 +être appelées via la variable <code>$CONFIGURE_ARGS</code>. Si vous voulez 
   1.167 +compiler un paquet avec des arguments différents, vous pouvez modifier le
   1.168 +fichier de configuration de Tazwok :
   1.169 +</p>
   1.170 +<pre class="script">
   1.171 +CONFIGURE_ARGS="--build=i486-pc-linux-gnu --host=i486-pc-linux-gnu"
   1.172 +</pre>
   1.173 +
   1.174 +<a name="files"></a>
   1.175 +<h3>Fichiers inclus ou exclus des paquets</h3>
   1.176 +<p>
   1.177 +Au sujet des fichiers à inclures ou exclures du paquet, l'idée et de mettre le
   1.178 +minimum dans le paquet de base et de créer des paquets séparés pour les
   1.179 +fichiers optionnels ou de développement. En général, les paquets de base ne
   1.180 +contiennent pas de man, info, doc ou librairies statique, il faut créer un
   1.181 +paquet-doc ou paquet-dev. A noter que SliTaz ne propose pas la commande man ou
   1.182 +info, donc pas de manuel ou fichier GNU info et que la création de paquets
   1.183 +contenant la doc est vraiment en option, surtout si la documentation est en
   1.184 +English. Par contre, un bout de texte au sujet du paquet dans le Handbook est
   1.185 +plus qu'apprécié.
   1.186 +</p>
   1.187 +<p>
   1.188 +Au niveau des fichiers de configuration, quand c'est possible, le but est de
   1.189 +proposer des fichiers de configurations de base permettant de faire fonctionner
   1.190 +directement le paquet. Dans le cas du serveur Web LightTPD, le paquet SliTaz
   1.191 +fourni des fichiers de configuration fait maison et le script de démarrage du
   1.192 +démon situé dans /etc/init.d, le tout documenté dans le Handbook. Pour un
   1.193 +nouveau paquet, vous êtes libre de choisir sa configuration par défaut en
   1.194 +fonction de ce qui vous semble le plus simple pour l'utilisateur final. Sur
   1.195 +SliTaz vous disposez aussi d'un répertoire /usr/share/examples destiné à des
   1.196 +exemples de configuration ou autres types d'exemples utiles.
   1.197 +</p>
   1.198 +
   1.199 +<a name="categories"></a>
   1.200 +<h3>Catégories des paquets</h3>
   1.201 +<p>
   1.202 +Les catégories des paquets existent à titre d'information et ne sont pas encore
   1.203 +vraiment figée. L'idée est de classer les paquets pour une futur interface web
   1.204 +dont les pages seraient générée chaque nuit depuis le wok en récupérant les
   1.205 +données dans les recettes des paquets. Dans l'immédiat, les paquets de 
   1.206 +développement dans 'devel', Xorg et compagnie dans 'x-window' et la plus part
   1.207 +des nouveautés dans 'extra'.
   1.208 +</p>
   1.209 +
   1.210 +<a name="woktree"></a>
   1.211 +<h3>Structure d'un paquet dans le wok</h3>
   1.212 +<p>
   1.213 +La structure des paquets dans le wok devraient être respectée si l'on veut que
   1.214 +Tazwok trouve les bons fichiers et répertoires. Contenu possible d'un paquet
   1.215 +(le répertoire taz/ est créé lors le la cuission) :
   1.216 +</p>
   1.217 +<ul>
   1.218 +	<li><code>stuff/</code> : Le matériel utilisé pour configurer, compiler et
   1.219 +	générer le paquet (patche(s), Makefile, pseudo fs, etc).</li>
   1.220 +	<li><code>taz/</code> : Répertoire contenant l'arbre du paquet Tazpkg 
   1.221 +	généré, le paquet compressé est stocké dans le répertoire spécifié par 
   1.222 +	$PACKAGES_REPOSITORY du fichier de configuration de Tazwok.</li>
   1.223 +	<li><code>receipt</code> : La recette de cuisine (voir 
   1.224 +	<a href="receipts.html">receipts</a>).</li>
   1.225 +	<li><code>description.txt</code> : La description du paquet (en option) est copiée
   1.226 +	à la racine du paquet Tazpkg. Une fois installé, 'tazpkg' sait
   1.227 +	traiter ce fichier via la commande 'tazpkg desc pkgname'.</li>
   1.228 +</ul>
   1.229 +
   1.230 +<a name="pkgtree"></a>
   1.231 +<h3>Structure d'un paquet tazpkg</h3>
   1.232 +<p>
   1.233 +Les paquets SliTaz sont des archives cpio contenant un système de fichiers
   1.234 +compressé avec gzip et des fichiers :
   1.235 +</p>
   1.236 +<ul>
   1.237 +	<li><code>fs/</code> : Pseudo système de fichiers contenant tous les
   1.238 +	fichiers à installer.</li>
   1.239 +	<li><code>receipt</code> : La recette de cuisine (voir receipt.txt).</li>
   1.240 +	<li><code>files.list</code> : Liste des fichiers contenus dans le paquet.</li>
   1.241 +	<li><code>description.txt</code> : La description du paquet (en option).</li>
   1.242 +</ul>
   1.243 +
   1.244 +<!-- End of content -->
   1.245 +</div>
   1.246 +
   1.247 +<!-- Footer. -->
   1.248 +<div id="footer">
   1.249 +	<div class="footer-right"></div>
   1.250 +	<a href="#top">Haut de la page</a> | 
   1.251 +	<a href="index.html">Table des matières</a>
   1.252 +</div>
   1.253 +
   1.254 +<div id="copy">
   1.255 +    Copyright © 2007 <a href="http://www.slitaz.org/">SliTaz</a> -
   1.256 +    <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
   1.257 +    Documentation publiées sous
   1.258 +    <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
   1.259 +    et codée en <a href="http://validator.w3.org/">xHTML 1.0 valide</a>.
   1.260 +</div>
   1.261 +
   1.262 +</body>
   1.263 +</html>