slitaz-doc-wiki-data rev 55

Update pages folder.
author Christopher Rogers <slaxemulator@gmail.com>
date Sun May 15 14:39:36 2011 +0000 (2011-05-15)
parents dbc6bd6fc5ee
children baa40fe17652
files pages/en/cookbook/devcorner.txt pages/en/cookbook/receipt.txt pages/en/cookbook/start.txt pages/en/cookbook/toolchain.txt pages/en/guides/bootguide.txt pages/en/guides/start.txt pages/en/scratchbook/base-system.txt pages/fr/cookbook/start.txt pages/fr/cookbook/toolchain.txt
line diff
     1.1 --- a/pages/en/cookbook/devcorner.txt	Sun May 08 14:01:28 2011 +0000
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,182 +0,0 @@
     1.4 -====== Developer's Corner ======
     1.5 -
     1.6 -SliTaz is an open source and community driven distribution. Everyone is welcome to join and contribute, from users, to hackers and developers, there is always something to do, i.e. proof-reading or writing documentation, sending bugs or patches to the [[http://www.slitaz.org/en/mailing-list.html|Mailing List]], gaining access to the wok and pushing some new packages or simply to help others on the [[http://www.slitaz.org/en/mailing-list.html|Mailing List]] or [[http://forum.slitaz.org/|forum]]. SliTaz has got [[http://hg.slitaz.org/|Mercurial repositories]] hosted on a SliTaz system. Developers can ask for a new repo if needed and contributors have write access to correct typos, scripts, etc. 
     1.7 -
     1.8 -SliTaz is a tiny community and listens to its users. There are several developers who are active on the [[http://forum.slitaz.org/|forum]] and the [[http://www.slitaz.org/en/mailing-list.html|Mailing List]]. 
     1.9 -
    1.10 -For artists there is a dedicated [[http://community.slitaz.org/image|website]] -- simply create an account and post your graphics or pictures. The site is managed by the community. If you want to lend a hand to administer the site, please contact a contributor or e-mail the discussion list.
    1.11 -
    1.12 -\\
    1.13 -
    1.14 -===== KISS & Comply to Standards =====
    1.15 -
    1.16 -  * First and foremost: keep it simple!
    1.17 -  * Follow the most reliable standards in coding, documenting and all other areas of development.
    1.18 -  * Carefully draft and write high quality documentation, including summarising complicated sections or processes, as well as detailed and informative tutorials.
    1.19 -  * Provide a stable and robust system, and aim to keep the rootfs on the LiveCD light enough to run on machines with as little as 128 MB RAM.
    1.20 -  * Use the range of tools available where possible; there is GTK+2, Dialog, SHell scripts and even PHP coding tools on the distribution and these are instantly available to everyone.
    1.21 -  * The idea is to think small and not to duplicate.
    1.22 -
    1.23 -\\
    1.24 -
    1.25 -===== Tank - Build Host & Home =====
    1.26 -
    1.27 -Each contributor may have an account on the project server with secure access, disk space, a public directory and all development tools. Developers can compile packages and maintainers of the mirror can handle synchronization. [[http://tank.slitaz.org|Tank]] also hosts the website, web boot and mercurial repositories.  
    1.28 -
    1.29 -[[en:cookbook:buildhost|Instructions]] on using the build host are described in the Cookbook.
    1.30 -
    1.31 -\\
    1.32 -
    1.33 -===== SliTaz Packages =====
    1.34 -
    1.35 -The TazPkg packages in SliTaz are automatically created via TazWok and a receipt in the wok. The Cookbook [[en:cookbook:wok|describes]] the use of tools and the format of [[en:cookbook:receipt|receipts]]. These are required reading before creating SliTaz packages!
    1.36 -
    1.37 -In terms of package selection, the idea is to offer a package by task or functionality, i.e. the lightest application in the field and not to provide another just on preference. Note that the current packages are not immutable, if you find an alternative that is lighter, with more features or more sexy for a few extra KB, you can suggest it on the [[http://www.slitaz.org/en/mailing-list.html|Mailing List]]. Particular attention is given to packages for the LiveCD, these should be stripped, removing unnecessary dependencies and compiler options. In general candidate packages for the core LiveCD are discussed on the [[http://www.slitaz.org/en/mailing-list.html|Mailing List]]. 
    1.38 -
    1.39 -Before you begin to compile and create packages for SliTaz, be sure that the work doesn't already exist in the [[http://hg.slitaz.org/wok-undigest/|undigest wok]]. Don't forget that the members of the mailing list are there to help you and that the documentation of the [[en:cookbook:wok|wok and tools]] exists to help you get started. 
    1.40 -
    1.41 -\\
    1.42 -
    1.43 -===== Naming of Packages =====
    1.44 -
    1.45 -In most cases the package name is the same as the source, except for Python, Perl, PHP, Ruby and Lua modules. For example, the package providing a //Kid// template system written in Python and XML is named: //python-kid//.
    1.46 -
    1.47 -\\
    1.48 -
    1.49 -===== Mercurial Repositories =====
    1.50 -
    1.51 -Mercurial, or Hg, repos can be browsed or cloned by anyone using the URL: [[http://hg.slitaz.org/|hg.slitaz.org]]. People with write access can directly use [[http://repos.slitaz.org/|repos.slitaz.org]] which requires authentication. Mercurial uses Python and is installable with:
    1.52 -
    1.53 -<code>
    1.54 - # tazpkg get-install mercurial
    1.55 -</code> 
    1.56 -
    1.57 -\\
    1.58 -
    1.59 -=== ~/.hgrc ===
    1.60 -
    1.61 -Before you push your first commit onto the server, be sure that you have a correct Hg configuration file with your name and email address, and remember to check that you are not root. Personal ~/.hgrc file example: 
    1.62 -
    1.63 -<file>
    1.64 -[ui]
    1.65 -username = FirstName LastName <you@example.org>
    1.66 -</file>
    1.67 -
    1.68 -\\
    1.69 -
    1.70 -=== Clone, Modify, Commit, Push ===
    1.71 -
    1.72 -<note important>You must be in the repository to be able to use 'hg' commands.</note>
    1.73 -
    1.74 -  * Clone a repo, example for wok: 
    1.75 -
    1.76 -   $ hg clone http://repos.slitaz.org/wok
    1.77 -
    1.78 -  * Check all logs, or just the last log:  
    1.79 -
    1.80 -   $ hg log
    1.81 -   $ hg head
    1.82 -
    1.83 -  * Add or modify one or more files and commit:
    1.84 -
    1.85 -   $ hg add
    1.86 -   $ hg status
    1.87 -   $ hg commit -m "Log message..."
    1.88 -   $ hg log
    1.89 -
    1.90 -<note tip>You can use the command //rollback// to roll back to the last transaction.</note>
    1.91 -
    1.92 -  * Before pushing changes to the server, it is safe to pull once:
    1.93 -
    1.94 -   $ hg pull
    1.95 -   $ hg push
    1.96 -
    1.97 -Done! Your changes, code or corrections are now on the server. 
    1.98 -
    1.99 -\\
   1.100 -
   1.101 -=== Updating a Local Wok ===
   1.102 -
   1.103 -To update your working directory with the changes that others have since committed to the server (//pull// the changes):
   1.104 -
   1.105 -   $ hg pull
   1.106 -   $ hg update
   1.107 -
   1.108 -\\
   1.109 -
   1.110 -=== Useful Commands ===
   1.111 -
   1.112 -There are a number of commands that you may find useful:
   1.113 -  * **hg help** -- Display the full list of commands.
   1.114 -  * **hg rollback** -- Undo the last action performed (commit, pull, push).
   1.115 -  * **hg log //<package>//** -- Display a package log.
   1.116 -  * **hg head** -- Display the last log.
   1.117 -
   1.118 -\\
   1.119 -
   1.120 -===== Implementation of iconv() =====
   1.121 -
   1.122 -SliTaz uses iconv() provided by GNU glibc - any packages that offer libiconv must use the library contained in glibc-locale. There is therefore no longer a libiconv package (1.2 MB) in SliTaz. 
   1.123 -
   1.124 -\\
   1.125 -
   1.126 -===== Website Management and Books =====
   1.127 -
   1.128 -The website and books (Handbook and Cookbook) are managed via a Mercurial repository, they can be cloned by: 
   1.129 -
   1.130 -   $ hg clone http://hg.slitaz.org/website
   1.131 -
   1.132 -Or if you have the proper permissions:
   1.133 -
   1.134 -   $ hg clone http://repos.slitaz.org/website
   1.135 -
   1.136 -\\
   1.137 -
   1.138 -===== xHTML Coding Style =====
   1.139 -
   1.140 -The website must have a consistent look-and-feel; this is also used in the wiki pages and local documentation. To achieve this:
   1.141 -
   1.142 -  * The pages and books are written in xHTML 1.0 Transitional.
   1.143 -
   1.144 -  * The colours for the body and the titles are placed directly on the page so the links are easy to follow.
   1.145 -    *  The title, a Level 1 heading, is used only once (at the top);
   1.146 -    *  Level 2 is the title of the document;
   1.147 -    *  Levels 3 and 4 are then used for the subtitles.
   1.148 -
   1.149 -  * If a list is used instead with smart anchors, it starts at the top just after the title of level 2.
   1.150 -
   1.151 -  * Paragraphs are always contained in <p> tags.
   1.152 -
   1.153 -  * For indentation, we use tabs. The reasons being semantics and to take up less space in terms of octets (bytes).
   1.154 -
   1.155 -  * To put code, like the name of a command inside a paragraph, <code> tags is the preferred method.
   1.156 -
   1.157 -  * Commands and terminal output are displayed with <pre> tags -- example:
   1.158 -
   1.159 -   $ command
   1.160 -
   1.161 -  * To view text that can be copied and pasted, such as scripts, bits of code, sample configuration files etc., use <pre> tags but with a CSS class named "script". Example: 
   1.162 -
   1.163 -<file>
   1.164 -<pre class="script">
   1.165 -code...
   1.166 -</pre>
   1.167 -</file>
   1.168 -
   1.169 -  * To emphasize words, use <em> tags.
   1.170 -
   1.171 -  * Internal links are relative.
   1.172 -
   1.173 -  * Remember to check the validity of the code with the online validator of the W3C.
   1.174 -
   1.175 -\\
   1.176 -
   1.177 -===== The diff and patch Commands =====
   1.178 -
   1.179 -The utilities //diff// and //patch// are command-line tools for creating and implementing a file containing differences between two files. This technique is often used for collaboration and the changes made to the original file can be clearly extracted. To create a diff file readable by humans in a simple text editor, you must supply the -u option: 
   1.180 -
   1.181 -   $ diff -u file.orig file.new > file.diff
   1.182 -
   1.183 -To apply a patch:
   1.184 -
   1.185 -   $ patch file.orig file.diff
   1.186 \ No newline at end of file
     2.1 --- a/pages/en/cookbook/receipt.txt	Sun May 08 14:01:28 2011 +0000
     2.2 +++ b/pages/en/cookbook/receipt.txt	Sun May 15 14:39:36 2011 +0000
     2.3 @@ -145,7 +145,9 @@
     2.4  }
     2.5  </file>
     2.6  
     2.7 -=== clean_wok() ===
     2.8 +=== clean_wok() (deprecated) ===
     2.9 +
    2.10 +This is useless with latest cookutils, source are all uncompreesed in wok/pkg/source to keep build wok clean and structured.
    2.11  
    2.12  This function helps to define additional commands to be run when cleaning the wok, it is useful to delete files or directories that are not supported by Tazwok:
    2.13  
     3.1 --- a/pages/en/cookbook/start.txt	Sun May 08 14:01:28 2011 +0000
     3.2 +++ b/pages/en/cookbook/start.txt	Sun May 15 14:39:36 2011 +0000
     3.3 @@ -6,7 +6,6 @@
     3.4  
     3.5  ==== Table of contents ====
     3.6  
     3.7 -    * [[en:cookbook:devcorner|Developer's Corner]]  - ReadMe page for Developers.
     3.8      * [[en:cookbook:receipt|Receipts]]  - Receipts (recipes) for creating (cooking) SliTaz packages.
     3.9      * [[en:cookbook:wok|Wok]]  - Creating SliTaz packages from source using Tazwok. (Uses a receipt.)
    3.10      * [[en:cookbook:buildbot|Build Bot]] - Automated cooking, testing and reporting of Wok packages.
    3.11 @@ -16,7 +15,7 @@
    3.12      * [[en:cookbook:releasetasks|Release Tasks]]  - List of things to do before publishing a new version.
    3.13      * [[en:cookbook:bootscripts|Boot Scripts]]  - The start-up and shut-down scripts.
    3.14      * [[en:cookbook:rootcd|Root cdrom (rootcd)]]  - Descriptions of files contained on the cdrom.
    3.15 -
    3.16 +    * [[en:cookbook:toolchain|Toolchain]] - The SliTaz toolchain used to build the entire system.
    3.17  ---- 
    3.18  \\
    3.19  ^  Page Review Section  ^^ 
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/pages/en/cookbook/toolchain.txt	Sun May 15 14:39:36 2011 +0000
     4.3 @@ -0,0 +1,16 @@
     4.4 +====== Toolchain ======
     4.5 +
     4.6 +
     4.7 +The Toolchain is the set of packages used to build the entire system. It consists of Binutils, GCC, Linux API headers and the GNU libc aka Glibc. SliTaz has an annual development cycle, so the toolchain gets a huge update once a year just after a stable release. When the toolchain changes we must rebuild all packages to ensure quality and consistency. 
     4.8 +
     4.9 +On SliTaz you have 2 ways to rebuild a toolchain from scratch: Cookutils and Tazwok. Tazwok is historically the first packages builder for SliTaz and over time has evolved into a powerful tool that can rebuild the full system from scratch. More info: http://doc.slitaz.org/en:devnotes:new-tazwok-illustrated
    4.10 +
    4.11 +Cookutils are the new tools, written from scratch as before and for SliTaz 4.0. The build tools needed an huge improvement since they were first written when SliTaz had 400-500 packages, when Cookutils was started SliTaz had 2960 packages, so the way to handle all these packages is even more complex than at the beginning of the project. Also the Cookutils have been written with simplicity and speed in mind and are used on the official SliTaz build host aka Tank. 
    4.12 +
    4.13 +To rebuild the official toolchain with Cookutils you must use the package slitaz-toolchain. This package is used to install the toolchain in a development environment and builds the Toolchain in the correct order with 2 passes for binutils and GCC. You will find some info in the slitaz-toolchain receipt itself and after building we keep a note in /usr/share/doc/slitaz/toolchain.txt 
    4.14 +
    4.15 +Recooking the full toolchain can be slow:
    4.16 +
    4.17 +<code>
    4.18 +# cook slitaz-toolchain
    4.19 +</code>
    4.20 \ No newline at end of file
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/pages/en/guides/bootguide.txt	Sun May 15 14:39:36 2011 +0000
     5.3 @@ -0,0 +1,45 @@
     5.4 +<code>
     5.5 +              CPU
     5.6 +               |
     5.7 +               V
     5.8 +   ----------BIOS--------
     5.9 +  /             |         \
    5.10 +  V             |         |
    5.11 +Hard Disk       V         V
    5.12 +CD-ROM  <--- Floppy ---> PXE
    5.13 +USB             |         |
    5.14 + V        (set) V        /
    5.15 +  \             /       /
    5.16 +    Boot Sector        /
    5.17 +          \           /
    5.18 +           V         V
    5.19 +          - Boot loader -
    5.20 +         /               \
    5.21 +Frugal or Uncommon:  Installed: load
    5.22 +     Kernel+rootfs   Kernel only
    5.23 +        |                |
    5.24 +        V                |
    5.25 +    Run /init            V 
    5.26 +        |            Mount root
    5.27 +        V            filesystem  
    5.28 +    Create tmpfs         |
    5.29 +      /    |    \        |
    5.30 +     V     |     V       |
    5.31 +  Loram:   | Uncommon:   V
    5.32 +Mount aufs | run script  |
    5.33 +& squashfs | or driver + |
    5.34 +    |      | mount root  |
    5.35 +     \     |     /       |
    5.36 +      V    V    V        |
    5.37 + Switch to new root     /
    5.38 +         \             /
    5.39 +          \           /
    5.40 +           \         /
    5.41 +            V        V    
    5.42 +          Run /sbin/init
    5.43 +                 |
    5.44 +                 V
    5.45 +          Run /etc/init.d/rcS
    5.46 +
    5.47 +(*) Uncommon is LVM, RAID, crypto, loop or subdir mount with preinit rootfs
    5.48 +</code>
    5.49 \ No newline at end of file
     6.1 --- a/pages/en/guides/start.txt	Sun May 08 14:01:28 2011 +0000
     6.2 +++ b/pages/en/guides/start.txt	Sun May 15 14:39:36 2011 +0000
     6.3 @@ -28,6 +28,7 @@
     6.4    * [[virtualbox | Virtualbox]]- SliTaz GNU/Linux with virtualbox
     6.5    * [[netstart|Net start usage and immediate installation on hard disk]]
     6.6    * [[http://blog.bodhizazen.net/linux/how-to-install-slitaz-with-ext4-and-grub2/|Grub2]] - Install SliTaz with grub2 (and ext4)
     6.7 +  * [[bootguide|Boot tree]] - What happens when you power on your slitaz box
     6.8  
     6.9  
    6.10  ===== Networking / LAN =====
     7.1 --- a/pages/en/scratchbook/base-system.txt	Sun May 08 14:01:28 2011 +0000
     7.2 +++ b/pages/en/scratchbook/base-system.txt	Sun May 15 14:39:36 2011 +0000
     7.3 @@ -28,7 +28,7 @@
     7.4  
     7.5    * Syslinux 3.35 (http://syslinux.zytor.com/).
     7.6  
     7.7 -   # wget ftp://ftp.kernel.org/pub/linux/boot/syslinux/syslinux-3.35.tar.gz
     7.8 +   # wget ftp://ftp.kernel.org/pub/linux/boot/syslinux/3.xx/syslinux-3.35.tar.gz
     7.9  
    7.10    * SliTaz tools 1.1. Download SliTaz tools, unpack, save the file in src/ and that's it:
    7.11  
     8.1 --- a/pages/fr/cookbook/start.txt	Sun May 08 14:01:28 2011 +0000
     8.2 +++ b/pages/fr/cookbook/start.txt	Sun May 15 14:39:36 2011 +0000
     8.3 @@ -16,5 +16,18 @@
     8.4      * [[fr:cookbook:releasetasks|Tâches de publication]] - Liste des tâches à effectuer avant de publier une nouvelle version (Cooking ou Stable).
     8.5      * [[fr:cookbook:bootscripts|Scripts de démarrage et d'arrêt]] - Description des fichiers de configuration rc.
     8.6      * [[fr:cookbook:rootcd|Racine du cdrom (rootcd)]] - Descriptions des fichiers contenus dans le cdrom, utilisation de GRUB pour booter le CD, installation de Memtest86.
     8.7 +    * [[fr:cookbook:toolchain|Toolchain]] - La Toolchain Slitaz utilisée pour construire tout le système.
     8.8  
     8.9 +\\
    8.10 +---- 
    8.11 +\\
    8.12 +^   Section Révision de la page  ^^ 
    8.13 +|Qualité| Bonne  |
    8.14 +|Revue|  |
    8.15 +|Priorité|  |
    8.16 +|Problèmes| |
    8.17 +|Comment améliorer|  |
    8.18  
    8.19 +
    8.20 +\\
    8.21 +----
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/pages/fr/cookbook/toolchain.txt	Sun May 15 14:39:36 2011 +0000
     9.3 @@ -0,0 +1,15 @@
     9.4 +====== Toolchain ======
     9.5 +
     9.6 +La Toolchain est l'ensemble des paquets utilisés pour construire le système entier. Il se compose de Binutils, GCC, Linux API headers et de la GNU libc c.a.d. Glibc. SliTaz a un cycle de développement annuel, donc l'ensemble des outils subit une mise à jour énorme une fois par an, juste après la sortie d'une version stable. Lorsque la toolchain change, il est nécessaire de reconstruire tous les paquets pour assurer qualité et cohérence.
     9.7 +
     9.8 +Sur SliTaz il y a 2 façons de reconstruire une toolchain à partir de zéro : Cookutils et Tazwok. Tazwok est historiquement le premier constructeur de paquets pour SliTaz et a au fil du temps évolué en un outil complexe qui peut reconstruire le système complet à partir de zéro. Plus d'infos: http://doc.slitaz.org/fr:devnotes:new-tazwok-illustrated
     9.9 +
    9.10 +Cookutils est un ensemble de nouveaux outils, écrits à partir de zéro comme avant et pour SliTaz 4.0. Les outils de construction ont eu besoin d'une amélioration énorme puisqu'ils ont été écrits quand SliTaz avait 400-500 paquets. Quand l'écriture de Cookutils a commencé SliTaz avait déjà 2960 paquets, de sorte que la façon de gérer tous ces paquets est encore plus complexe qu'au début du projet. Les cookutils ont aussi été écrits dans un esprit de simplicité, un but de rapidité et sont utilisés sur le site officiel SliTaz de construction c.a.d. tank.
    9.11 +
    9.12 +Pour reconstruire la chaîne de compilation officielle avec Cookutils vous devez utiliser le paquet slitaz-toolchain. Ce package est utilisé pour installer la toolchain dans un environnement de développement et construire l'ensemble des outils dans le bon ordre avec 2 passes pour binutils et GCC. Vous trouverez quelques informations dans la recette de slitaz-toolchain elle-même, et après la construction, des notes sont sauvegardées dans /usr/share/doc/slitaz/toolchain.txt 
    9.13 +
    9.14 +Reconstruire la toolchain en entier peut être long :
    9.15 +
    9.16 +<code>
    9.17 +# cook slitaz-toolchain
    9.18 +</code>
    9.19 \ No newline at end of file