website view pt/doc/cookbook/wok-tools.html @ rev 551

Fix c6b2d9c4e031, pt: localy browseable (with file://)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Oct 26 10:30:55 2009 +0100 (2009-10-26)
parents c6b2d9c4e031
children
line source
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt">
4 <head>
5 <title>Livro de Receitas do SliTaz - Wok &amp; Ferramentas</title>
6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
7 <meta name="description" content="slitaz portuguese cookbook" />
8 <meta name="expires" content="never" />
9 <meta name="modified" content="2008-07-16 21:45:00" />
10 <meta name="publisher" content="www.slitaz.org" />
11 <meta name="author" content="Christophe Lincoln, Paul Issot"/>
12 <link rel="shortcut icon" href="favicon.ico" />
13 <link rel="stylesheet" type="text/css" href="book.css" />
14 </head>
15 <body bgcolor="#ffffff">
17 <!-- Header and quick navigation -->
18 <div id="header">
19 <div align="right" id="quicknav">
20 <a name="top"></a>
21 <a href="receipts.html">Receitas</a> |
22 <a href="index.html">Conteúdo</a>
23 </div>
24 <h1><font color="#3E1220">SliTaz Cookbook (pt)</font></h1>
25 </div>
27 <!-- Content. -->
28 <div id="content">
29 <div class="content-right"></div>
31 <h2><font color="#DF8F06">Wok &amp; Ferramentas</font></h2>
33 <ul>
34 <li><a href="wok-tools.html#tazwok">Sumário</a></li>
35 <li><a href="wok-tools.html#wok">Ferramentas Wok</a></li>
36 <li><a href="wok-tools.html#cook">Compilação e geração de pacotes</a></li>
37 <li><a href="wok-tools.html#opts">Opções durante a compilação de um pacote</a></li>
38 <li><a href="wok-tools.html#files">Arquivos incluidos ou pacotes excluidos</a></li>
39 <li><a href="wok-tools.html#categories">Categorias de pacotes</a></li>
40 <li><a href="wok-tools.html#woktree">Estrutura dos pacotes no wok</a></li>
41 <li><a href="wok-tools.html#pkgtree">Estrutura de um pacote .tazpkg</a></li>
42 <li><a href="receipts.html">Receitas</a></li>
43 </ul>
45 <a name="tazwok"></a>
46 <h3>Sumário - Tazwok e o wok</h3>
47 <p>
48 A idéia é usar um diretório (wok) contendo todos os pacotes disponíveis, cada
49 um contendo ao menos uma receita que defina o download, desempacotamento,
50 compilação e geração de um binário. Para funcionar, o tazwok também precisa
51 criar um diretório para armazenar fontes baixados ($SOURCES_REPOSITORY) e um
52 repositório de pacotes gerados ($PACKAGES_REPOSITORY), valores que podem ser
53 configurados usando o arquivo <code>/etc/tazwok.conf</code>.
54 </p>
56 <a name="wok"></a>
57 <h3><font color="#6c0023">Ferramentas Wok</font></h3>
58 <p>
59 Para começar, o tazwok precisa estar instalado no sistema, assim como as
60 principais ferramentas de desenvolvimento (binutils, compilador, bibliotecas
61 de desenvolvimento, make), que devem ser baixadas do mirror. Para tanto, deve-se
62 instalar o meta-pacote <code>slitaz-toolchain</code>:
63 </p>
64 <pre> # tazpkg recharge
65 # tazpkg get-install slitaz-toolchain
66 </pre>
67 <h4>Obtenha o wok</h4>
68 <p>
69 Antes de iniciar o trabalho também é necessário recuperar o wok dos repositórios
70 Mercurial ou de um arquivo no mirror primário (TuxFamily). Exemplo usando o
71 SliTaz para ser construído no diretório <code>/home/slitaz</code>:
72 </p>
73 <pre> $ hg clone http://hg.slitaz.org/wok/ /home/slitaz/wok
74 </pre>
75 <p>
76 Os arquivos também estão disponíveis em:
77 <a href="ftp://download.tuxfamily.org/slitaz/wok/">
78 ftp://download.tuxfamily.org/slitaz/wok/</a>.
79 Obtenha a última versão dos diretórios cooking ou undigest. Antes de compilar
80 seu primeiro pacote, o tazwok precisa saber onde procurar os arquivos. Por padrão
81 o caminho é <code>/home/slitaz/wok</code>, mas você pode mudar isto ou renomear
82 o wok que deseja baixar. Para visualizar/checar os caminhos utilizados pelo
83 tazwok e o número de pacotes no wok, use o comando tazwok <code>stats</code>:
84 </p>
85 <pre> # tazwok stats
86 </pre>
88 <a name="cook"></a>
89 <h3>Compilação e geração de pacotes</h3>
90 <p>
91 Configure, compile, "limpe": a forma como o SliTaz gera os pacotes pode ser
92 colocada em um simples comando. Para evitar frustrações, é recomendável iniciar
93 a construção do pacote sem mudar sua receita ou dependências. M4 é um candidato
94 ideal para a sua primeira <code>geração</code>:
95 </p>
96 <pre> # tazwok cook m4
97 </pre>
98 <p>
99 Uma vez que o trabalho foi feito, o pacote é localizado no diretório especificado
100 pelo arquivo de configuração (o padrão é em <code>/home/slitaz/packages</code>).
101 Se tudo correu bem, você pode instalar o pacote no sistema anfitrião ou usa-lo
102 para gerar uma distribuição LiveCD com o Tazlito. Para criar um novo pacote
103 você pode usar o comando <code>new-tree</code> com a opção <code>--interactive</code>
104 e ler a documentação fornecida pela página de <a href="receipts.html">receitas</a>.
105 </p>
106 <h4>Cook-list - Lista de Geração</h4>
107 <p>
108 Para compilar vários pacotes com um único comando, você pode usar a lista de
109 geração. Há listas-exemplo em <code>usr/share/examples/tazwok/cooklists</code>,
110 que são somente arquivos texto com um nome de pacote por linha. Exemplo do
111 comando "cook-list" usando "mypkgs.cooklist":
112 </p>
113 <pre> # tazwok cook-list mypkgs.cooklist
114 </pre>
116 <a name="opts"></a>
117 <h3>Opções durante a compilação de um pacote</h3>
118 <p>
119 Você é livre para usar quaisquer opções que queira, somente respeitando a
120 Hierarquia do Sistema de Arquivos (FSH), os documentos em <code>/usr/share/doc</code>
121 e seguindos os padrões Freedesktop (.desktop). Então fica a seu critério, por
122 exemplo, disabilitar suporte a XML, tendo binários menores para o PHP e abrindo
123 mão da libxml2 mas, neste caso, diminuir o tamanho dos binários acaba resultando
124 em perda de funcionalidade. Se você tiver qualquer dúvida, olhe as receitas e
125 opções de compilação em <code>compile_rules</code>.
126 </p>
127 <h4>Otimização</h4>
128 <p>
129 Os pacotes oficiais do SliTaz são otimizados para i486, os argumentos de
130 otimização usados para a configuração estão especificados em <code>/etc/tazwok.conf</code>
131 e pode ser envocados pela variável <code>$CONFIGURE_ARGS</code>. Se você deseja
132 compilar um pacote com opções diferentes, pode modificar o arquivo de
133 configuração do tazwok:
134 </p>
135 <pre class="script">CONFIGURE_ARGS="--build=i486-pc-linux-gnu --host=i486-pc-linux-gnu"
136 </pre>
138 <a name="files"></a>
139 <h3>Arquivos incluidos ou pacotes excluidos</h3>
140 <p>
141 Geralmente os pacote base não contém as páginas man, info, os arquivos doc ou
142 bibliotecas estáticas, então precisamos criá-los por meio de um pacote-doc ou
143 um pacote-dev. Note que no SliTaz não se pretende incluir os comandos man ou
144 info, então não há nenhum manual ou arquivo info GNU. A criação de pacotes
145 contendo documentos é realmente opcional, especialmente se o material estiver
146 em inglês. No entanto, um trecho de texto sobre o pacote incluido no Manual
147 SliTaz seria bem apreciado.
148 </p>
149 <p>
150 Em termos de configuração, quando possível, o objetivo é oferecer arquivos
151 básicos de configuração para rodar o pacote diretamente. No caso do pacote do
152 servidor web LightTPD, o SliTaz fornece arquivos de configuração e scripts de
153 inicialização localizados em /etc/init.d/ (documentados no Manual SliTaz). Para
154 um pacote novo, você é livre para escolher a configuração padrão dependendo em
155 que você pensa ser mais fácil para o usuário final. No SliTaz existem exemplos
156 de configuração em <code>/usr/share/examples</code> e outros tipos de informações
157 úteis.
158 </p>
160 <a name="categories"></a>
161 <h3>Categorias de pacotes</h3>
162 <p>
163 As categorias de pacotes existem somente para propósitos de informação e não são
164 fixas, a idéia é classificar os pacotes para que uma página web possa ser gerada
165 toda noite, recuperando dados na receita do pacote. Em resumo, inclua pacotes
166 de desenvolvimento em "devel", o Xorg em "x-window" e novos pacotes variados
167 em "extra".
168 </p>
170 <a name="woktree"></a>
171 <h3>Estrutura dos pacotes no wok</h3>
172 <p>
173 A estrutura de um pacote no wok deve sempre ser respeitada para que o tazwok
174 possa encontrar arquivos e diretórios corretos. Possíveis conteúdos de um pacote
175 (note que o diretório /taz é criado no momento da geração):
176 </p>
177 <ul>
178 <li><code>stuff/</code> : O material usado para configurar, compilar e gerar
179 o pacote (patch(es), Makefile, pseudo fs, etc).</li>
180 <li><code>taz/</code> : Árvore de diretórios contendo o pacote tazpkg
181 gerado - o pacote comprimido é arquivado no diretório especificado em
182 $PACKAGES_REPOSITORY no arquivo de configuração do tazwok.</li>
183 <li><code>receipt</code> : A receita (veja
184 <a href="receipts.html">receitas</a>).</li>
185 <li><code>description.txt</code> : (opcional) A descrição do pacote é
186 copiada para a raíz do pacote tazpkg. Uma vez instalado, o tazpkg lida com
187 este arquivo por meio do comando "tazpkg desc nome-do-pacote".</li>
188 </ul>
190 <a name="pkgtree"></a>
191 <h3>Estrutura de um pacote .tazpkg</h3>
192 <p>
193 Os pacotes do SliTaz são arquivos cpio contendo arquivos e um sistema de
194 arquivos comprimidos com o gzip:
195 </p>
196 <ul>
197 <li><code>fs/</code> : Pseudo Sistema de Arquivos contendo todos os
198 arquivos a serem instalados.</li>
199 <li><code>receipt</code> : A receita (veja receipt.txt).</li>
200 <li><code>files.list</code> : Uma lista de arquivos do pacote.</li>
201 <li><code>description.txt</code> : A descrição do pacote (opcional).</li>
202 </ul>
204 <!-- End of content -->
205 </div>
207 <!-- Footer. -->
208 <div id="footer">
209 <div class="footer-right"></div>
210 <a href="wok-tools.html#top">Topo da Página</a> |
211 <a href="index.html">Conteúdo</a>
212 </div>
214 <div id="copy">
215 Copyright &copy; 2008 <a href="http://www.slitaz.org/pt/">SliTaz</a> -
216 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
217 Documentation is under
218 <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
219 and code is <a href="http://validator.w3.org/">valid xHTML 1.0</a>.
220 </div>
222 </body>
223 </html>