website diff pt/doc/cookbook/receipts.html @ rev 142
pt: Add newly translated pages (Many thanks Cladinei)
author | Paul Issott <paul@slitaz.org> |
---|---|
date | Mon Aug 25 22:36:03 2008 +0000 (2008-08-25) |
parents | |
children | b8d706d40d1e |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/pt/doc/cookbook/receipts.html Mon Aug 25 22:36:03 2008 +0000 1.3 @@ -0,0 +1,237 @@ 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="pt" lang="pt"> 1.7 +<head> 1.8 + <title>Livro de Receitas do SliTaz - Receitas</title> 1.9 + <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 1.10 + <meta name="description" content="slitaz portuguese cookbook" /> 1.11 + <meta name="expires" content="never" /> 1.12 + <meta name="modified" content="2008-07-16 21:45: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="wok-tools.html">Wok & Ferramentas</a> | 1.25 + <a href="index.html">Conteúdo</a> 1.26 +</div> 1.27 +<h1><font color="#3E1220">SliTaz Cookbook (pt)</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">Receitas</font></h2> 1.36 + 1.37 +<p> 1.38 +Este documento descreve as oportunidades oferecidas pela receita usada pelo 1.39 +Tazwok para compilar e gerar pacotes para o SliTaz e o Tazpkg por meio do 1.40 +<a href="wok-tools.html">wok e ferramentas</a>. A receita para um pacote é 1.41 +também usada pelo Tazpkg para instalar/desinstalar e prover informações sobre 1.42 +um pacote .tazpkg. Cada receita começa com um comentário em inglês: 1.43 +</p> 1.44 +<pre class="script"> 1.45 +# SliTaz package receipt. 1.46 +</pre> 1.47 + 1.48 +<h3>Variáveis</h3> 1.49 +<p> 1.50 +As 5 primeiras variáveis devem sempre estar presentes e definidas. Elas, 1.51 +respectivamente, configuram o pacote ($PACKAGE), sua versão, sua categoria, 1.52 +fornecem uma curta descrição e o nome do mantenedor. Exemplo para um pacote, 1.53 +o gerenciador de arquivos Clex: 1.54 +</p> 1.55 +<pre class="script"> 1.56 +PACKAGE="clex" 1.57 +VERSION="3.16" 1.58 +CATEGORY="base-apps" 1.59 +SHORT_DESC="Text mode file manager." 1.60 +MAINTAINER="pankso@slitaz.org" 1.61 +</pre> 1.62 + 1.63 +<h3>Variáveis (opcionais)</h3> 1.64 +<p> 1.65 +O Tazwok também lida com diversas variáveis opcionais. Pode, por exemplo, usar 1.66 +o nome de outro pacote fonte. Também há variáveis que são usadas pelo Tazpkg 1.67 +para gerenciar dependências ou prover informações sobre o pacote. 1.68 +</p> 1.69 +<p> 1.70 +<code>$DEPENDS</code>: Define dependências - pode haver muitas dependências 1.71 +separada por um espaço ou por linhas. Esta variável é usada principalmente pelo 1.72 +Tazpkg ao instalar o pacote e pelo Tazwok para construir grandes pacotes como 1.73 +o Xorg. Exemplo para o Clex que depende do ncurses: 1.74 +</p> 1.75 +<pre class="script"> 1.76 +DEPENDS="ncurses" 1.77 +</pre> 1.78 +<p> 1.79 +<code>$BUILD_DEPENDS</code>: Define as dependências de compilação, novamente 1.80 +separadas por espaços ou por linhas. Esta variável é usada pelo Tazwok durante 1.81 +a geração de um pacote. Exemplo: 1.82 +</p> 1.83 +<pre class="script"> 1.84 +BUILD_DEPENDS="ncurses-dev" 1.85 +</pre> 1.86 +<p> 1.87 +<code>$TARBALL</code> : O arquivo é um fonte com a extensão (tar.gz, tgz ou 1.88 +tar.bz2). Em geral, as variáveis $PACKAGE e $VERSION são usadas somente para 1.89 +mudar a extensão, ajudando a atualizar o pacote sem mudar a variável $VERSION. 1.90 +Um exemplo genérico (veja também o exemplo para a variável $SOURCE): 1.91 +</p> 1.92 +<pre class="script"> 1.93 +TARBALL="$PACKAGE-$VERSION.tar.gz" 1.94 +</pre> 1.95 +<p> 1.96 +<code>$WEB_SITE</code> : 1.97 +O website oficial do pacote. Pode ocorrer que algumas bibliotecas não possuam 1.98 +um website, neste caso não há necessidade de especificar uma URL. Note que tanto 1.99 +o Tazwok e o Tazpkg esperam encontram uma URL completa: 1.100 +</p> 1.101 +<pre class="script"> 1.102 +WEB_SITE="http://www.clex.sk/" 1.103 +</pre> 1.104 +<p> 1.105 +<code>$WGET_URL</code> : 1.106 +URL para baixar o arquivo fonte. Em geral, a variável $TARBALL pode ser usada 1.107 +para facilitar a atualização de um pacote sem mudar a variável $VERSION. Usando 1.108 +o arquivo de configuração, o Tazwok pode também configurar por padrão 3 mirrors: 1.109 +$GNU_MIRROR para o mirror GNU, $SF_MIRROR para o SourceForge e $XORG_MIRROR para 1.110 +o mirror do servidor gráfico Xorg. Exemplo para o Clex: 1.111 +</p> 1.112 +<pre class="script"> 1.113 +WGET_URL="http://www.clex.sk/download/$TARBALL" 1.114 +</pre> 1.115 +<p> 1.116 +<code>$WANTED</code> : 1.117 +Os pacotes do SliTaz normalmente dependem da compilação de um pacote fonte. 1.118 +Algumas vezes a receita de um pacote não depende de compilação de regras, então 1.119 +a variável $WANTED é usada para copiar arquivos do fonte para outro pacote 1.120 +usando a variável $src. 1.121 +</p> 1.122 +<p> 1.123 +<code>$SOURCE</code> : Pode ocorrer de o nome do pacote .tazpkg ser diferente 1.124 +do nome do pacote fonte. Um exemplo é o dos pacotes Xorg: o nome da biblioteca 1.125 +X11 é "xorg-libX11" e o nome do pacote fonte é "libX11". Esta variável permite 1.126 +usar as variáveis $src e $_pkg durante a geração de um pacote. Pode-se notar 1.127 +que no caso da libX11, o nome do arquivo fonte torna-se $SOURCE-$VERSION.tar.gz. 1.128 +</p> 1.129 + 1.130 +<h3>Variáveis usadas em funções</h3> 1.131 +<p> 1.132 +O Tazwok configura diversas variáveis que facilitam a compilação e construção 1.133 +de pacotes .tazpgk. Estas são controladas automaticamente pelo Tazwok usando 1.134 +as informações contidas na receita: elas podem ser usadas pela funções 1.135 +compile_rules e genpkg_rules descritas no capítulos Funções. 1.136 +</p> 1.137 +<p> 1.138 +<code>$src</code> : Define o caminho para o diretório de fontes ainda não arquivados. 1.139 +</p> 1.140 +<p> 1.141 +<code>$_pkg</code> : Define o caminho para os binários compilados instalados via 1.142 +"make DESTDIR=$PWD/_pkg install". Esta variável é usada para copiar os arquivos 1.143 +gerados e criar pacotes .tazpkg. 1.144 +</p> 1.145 +<p> 1.146 +<code>$fs</code> : Define o caminho para o pseudo sistema de arquivos (fs) em 1.147 +cada pacote. O "fs" de cada pacote corresponde à raiz do sistema, como se, por 1.148 +exemplo, o Clex estivesse em $fs/usr/bin/clex. Note a necessidade de criar 1.149 +os diretórios necessários por meio da função genpkg_rules() antes de copiar os 1.150 +arquivos. 1.151 +</p> 1.152 +<p> 1.153 +<code>$CONFIGURE_ARGS</code> : Variável definida no arquivo de configuração do 1.154 +Tazwok (tazwok.conf). Permite que sejam especificados argumentos de otimização 1.155 +genéricos durante a construção do pacote. O padrão é o argumento para a 1.156 +arquitetura i486. 1.157 +</p> 1.158 + 1.159 +<h3>Funções</h3> 1.160 +<p> 1.161 +Uma receita deve conter 4 funções. O Tazwok lida com as funções contendo as 1.162 +regras de compilação (compile_rules) e as regras usadas para gerar um pacote 1.163 +(genpkg_rules). Estas funções podem conter todos os tipos de comandos padrão 1.164 +GNU/Linux, como sed, awk, patch e variáveis automaticamente configuradas. 1.165 +</p> 1.166 +<h4>compile_rules()</h4> 1.167 +<p> 1.168 +Para compilar um pacote pode-se usar a variável $src para mudar (cd) o diretório 1.169 +de fontes e usar a variável $CONFIGURE_ARGS para incluir argumentos do arquivo 1.170 +de configuração do Tazwok. Para construir um pacote normalmente se roda o "make" 1.171 +sem argumentos, e para instalar um pacote no diretório _pkg é necessário usar 1.172 +o comando "make DESTDIR=$PWD/_pkg install". Um exemplo genérico: 1.173 +</p> 1.174 +<pre class="script"> 1.175 +# Regras para configurar e criar um pacote. 1.176 +compile_rules() 1.177 +{ 1.178 + cd $src 1.179 + ./configure --prefix=/usr --infodir=/usr/share/info \ 1.180 + --mandir=/usr/share/man $CONFIGURE_ARGS 1.181 + make 1.182 + make DESTDIR=$PWD/_pkg install 1.183 +} 1.184 +</pre> 1.185 +<h4>genpkg_rules()</h4> 1.186 +<p> 1.187 +Para gerar um pacote .tazpkg deve-se especificar comandos na função 1.188 +<code>genpkg_rules</code>. Neste exemplo criamos um pseudo diretório 1.189 +<code>usr/</code> no sistema de arquivos do pacote, copiamos todos os binários 1.190 +e por fim usamos "strip" para limpar os arquivos: 1.191 +</p> 1.192 +<pre class="script"> 1.193 +# Rules to gen a SliTaz package suitable for Tazpkg. 1.194 +genpkg_rules() 1.195 +{ 1.196 + mkdir -p $fs/usr 1.197 + cp -a $_pkg/usr/bin $fs/usr 1.198 + strip -s $fs/usr/bin/* 1.199 +} 1.200 +</pre> 1.201 +<h4>pre_install() e post_install()</h4> 1.202 +<p> 1.203 +Estas duas funções são iniciadas pelo Tazpkg ao instalar algum pacote. Elas 1.204 +devem ser definidas antes da geração do pacote .tazpkg pelo Tazwok. Se nenhuma 1.205 +regra é passada a estas funções, não há razão para mantê-las e elas podem ser 1.206 +removidas. Exemplo usando o comando "echo" para mostrar algum texto (nenhuma 1.207 +função pode estar vazia): 1.208 +</p> 1.209 +<pre class="script"> 1.210 +# Comandos de pré e pós-instalação para o Tazpkg. 1.211 +pre_install() 1.212 +{ 1.213 + echo "Processing pre-install commands..." 1.214 +} 1.215 +post_install() 1.216 +{ 1.217 + echo "Processing post-install commands..." 1.218 +} 1.219 +</pre> 1.220 + 1.221 +<!-- End of content --> 1.222 +</div> 1.223 + 1.224 +<!-- Footer. --> 1.225 +<div id="footer"> 1.226 + <div class="footer-right"></div> 1.227 + <a href="#top">Topo da Página</a> | 1.228 + <a href="index.html">Conteúdo</a> 1.229 +</div> 1.230 + 1.231 +<div id="copy"> 1.232 + Copyright © 2008 <a href="http://www.slitaz.org/pt/">SliTaz</a> - 1.233 + <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br /> 1.234 + Documentation is under 1.235 + <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a> 1.236 + and code is <a href="http://validator.w3.org/">valid xHTML 1.0</a>. 1.237 +</div> 1.238 + 1.239 +</body> 1.240 +</html>