Tazwok - Documentation dveloppeur.                                        2007
===============================================================================


Ce document dcrit le fonctionnement gnral de Tazwok, il est principalement
dstin aux personnes dsirant devenir dveloppeur SliTaz/Tazwok. Ce documents
runit aussi divers notes utiles, des ides et des astuces. Les discussions
au sujet de Tazwok peuvent se faire sur la Mailing list de SliTaz, toutes les
informations d'inscription sont sur le site Web : http://www.slitaz.org/


Intoduction
-----------
L'ide est d'utiliser un rpertoire (wok) contenant tous les paquets
disponibles, chaque paquet contient au minimum une recette (receipt) servant
 tlcharger, dsarchiver, compiler et gnrer le paquet binaire. Pour
fonctionner, Tazwok a aussi besoin d'un rpertoire pour stocker les sources
tlcharges ($SOURCES_REPOSITORY) et d'un rpertoire pour les paquets gnrs
($PACKAGES_REPOSITORY), ces valeurs peuvent tre configures via le fichier :
/etc/tazwok.conf.


Coding style
------------
Tazwok est crit en script SHell, compatible avec ash du projet Busybox qui
est le SHell par dfaut sur SliTaz. Le code est ident avec des tabulations,
cela donne un script plus lger (en terme de octect). Les commentaires se
mettent en English et devraient aider a s'y retouver. On peut crer de
nouvelles fonctions si ncessaire et ajouter des commandes qu'il faut et tout
de suite documenter (voir mme avant pour en discuter sur la liste).


BUGS et amliorations
---------------------
Si vous dcouvez un bug dans le code, ou des commandes qui pourraient tre
plus courtes et mieux penses, n'hsitez pas  vous inscrire sur la liste de
SliTaz ou  envoyer directement un mail au mainteneur actuel de Tazwok (voir
le fichier AUTHORS contenu dans les sources).


Cookbook et Tazwok
------------------
Tazwok a t inspir des techniques utilises dans le Cookbook de SliTaz, les
rgles de compilation et celles pour gner le paquet sont largement dcrites
dans le livre. Pour plus d'infos : http://www.slitaz.org/doc/cookbook/


Wok
---
Le wok est tlchargeable depuis le miroir de SliTaz, c'est une archive
contenant toutes les recettes et fichiers ncessaire  la compilation et
gnration des paquets. Le wok principalement utilis est celui de la version
Cooking (en cuisson), il contient les dernires recettes et fichiers. Pour
installer un wok, on peut tlcharger l'archive, dsarchiver et configurer
Tazwok pour qu'il trouve les fichiers du wok ou cloner le dpt Mercurial.
Toute les infos d'utilisation du wok sont dcrites sur la page Forge du site :

    http://www.slitaz.org/devel/forge.html


Cooklists - Liste de cuisson
----------------------------
Pour compiler plusieurs paquets en une seule commande, on peut utiliser des 
listes de cuisson. Il y a des listes exemples dans le rpertoire examples/
de cette archive et dans le rpertoire /usr/share/examples/tazwok/cooklists
sur SliTaz.


Structure d'un paquet dans le wok - $WOK/$PACKAGE/*
---------------------------------------------------
La structure des paquets dans le wok devraient tre respecte si l'on veut que
Tazwok trouve les bons fichiers et rpertoires. Contenu possible d'un paquet :

 * stuff/ : Le matriel utilis pour configurer, compiler et gnrer
   le paquet (patche(s), Makefile, pseudo fs, etc).
 * taz/ : Rpertoire contenant l'arbre du paquet Tazpkg gnr, le paquet
   compress est stock dans le rpertoire spcifi par $PACKAGES_REPOSITORY.
 * receipt : La recette de cuisine (voir receipt.txt).
 * description.txt : La description du paquet (en option) est copie
    la racine du paquet Tazpkg. Une fois install, 'tazpkg' sait
   traiter ce fichier via la commande 'tazpkg desc pkgname'.


Structure d'un paquet tazpkg - $WOK/$PACKAGE/taz/$PACKAGE-$VERSION/*
----------------------------

 * fs/ : Pseudo systme de fichiers contenant tous les fichiers
    installer.
 * receipt : La recette de cuisine (voir receipt.txt).
 * files.list : Liste des fichiers contenus dans le paquet.
 * description.txt : La description du paquet (en option).


===============================================================================
                                                         http://www.slitaz.org/
