packaging-tutorial 0.10 - en to pt translation catalogue (515 entries)

note: Translators: change debiantutorial to debiantutorial.$lang to use translated file, and append to this string all commands to load localisation packages, e.g.: \\usepackage{debiantutorial.fr} \\usepackage[french]{babel} \\frenchsetup{...} type: Plain text
en: \usepackage{debiantutorial}
pt: \usepackage{debiantutorial.pt}

note: type: title{#2}
en: Debian Packaging Tutorial
pt: Manual de Empacotamento de Debian

note: Translators: leave \\version unchanged: this will a variable containing the actual version To translate the date, use \\today or a string containing \\year, \\month, \\day (numeric values). DATE - use debian/rules update-version-date type: date{#1}
en: version 0.14 -- 2014-08-31
pt: versão 0.14 -- 2014-08-31

note: type: frame{#2}
en: About this tutorial
pt: Acerca deste manual

note: type: itemize
en: Goal: \textbf{tell you what you really need to know about Debian packaging}
pt: Objectivo: \textbf{dizer o que você precisa mesmo saber sobre empacotamento de Debian}

note: type: itemize
en: Modify existing packages
pt: Modificar pacotes existentes

note: type: itemize
en: Create your own packages
pt: Criar os seus próprios pacotes

note: type: itemize
en: Interact with the Debian community
pt: Interagir com a comunidade Debian

note: type: itemize
en: Become a Debian power-user
pt: Tornar-se um utilizador avançado de Debian

note: type: itemize
en: Covers the most important points, but is not complete
pt: Cobre os pontos mais importantes, mas não é completo

note: type: itemize
en: You will need to read more documentation
pt: Você irá precisar de ler mais documentação

note: type: itemize
en: Most of the content also applies to Debian derivative distributions
pt: A maioria do conteúdo também se aplica a distribuições derivadas da Debian

note: type: itemize
en: That includes Ubuntu
pt: Isso inclui Ubuntu

note: type: frame{#2}
en: Outline
pt: Esboço

note: type: section{#2}
en: Introduction
pt: Introdução

note: type: textbf{#1}
en: GNU/Linux distribution
pt: Distribuição de GNU/Linux

note: type: itemize
en: 1st major distro developed ``openly in the spirit of GNU''
pt: 1ª grande distribuição desenvolvida ''abertamente ao espírito de GNU''

note: type: itemize
en: \textbf{Non-commercial}, built collaboratively by over 1,000 volunteers
pt: \textbf{Não-comercial}, construída em colaboração por mais de 1000 voluntários

note: type: itemize
en: 3 main features:
pt: 3 funcionalidades principais:

note: type: itemize
en: \textbf{Quality} -- culture of technical excellence\\ {\small\sl We release when it's ready}
pt: \textbf{Qualidade} -- cultura de excelência técnica\\ {\small\sl Nós lançamos quando está tudo pronto}

note: type: itemize
en: \textbf{Freedom} -- devs and users bound by the \textsl{Social Contract}\\ Promoting the culture of Free Software since 1993
pt: \textbf{Liberdade} -- desenvolvedores e utilizadores unidos pelo \textsl{Contracto Social}\\ Promovendo a cultura do Software Livre desde 1993

note: type: itemize
en: \textbf{Independence} -- no (single) company babysitting Debian\\ And open decision-making process (\textsl{do-ocracy} + \textsl{democracy})
pt: \textbf{Independência} -- nenhuma (nem uma) companhia toma conta da Debian\\ E processo de decisão-trabalho aberto (\textsl{do-ocracy} + \textsl{democracy})

note: type: itemize
en: \textbf{Amateur} in the best sense: done for the love of it
pt: \textbf{Amador} no melhor sentido: feito com amor

note: type: frame{#2}
en: Debian packages
pt: Pacotes Debian

note: type: itemize
en: \textbf{.deb} files (binary packages)
pt: ficheiros \textbf{.deb} (pacotes binários)

note: type: itemize
en: A very powerful and convenient way to distribute software to users
pt: Uma maneira muito poderosa e conveniente de distribuir software aos utilizadores

note: type: itemize
en: One of the two most common package formats (with RPM)
pt: Um dos dois formatos de pacotes mais comuns (com o RPM)

note: type: itemize
en: 30,000 binary packages in Debian\\ $\rightarrow$ most of the available free software is packaged in Debian!
pt: 30000 pacotes binários em Debian\\ $\rightarrow$ a maioria do software livre disponível está empacotado em Debian!

note: type: itemize
en: For 12 ports (architectures), including 2 non-Linux (Hurd; KFreeBSD)
pt: Para 12 portes (arquitecturas), incluindo 2 não-Linux (Hurd; KFreeBSD)

note: type: itemize
en: Also used by 120 Debian derivative distributions
pt: Também usado por 120 distribuições derivadas de Debian

note: type: frame{#2}
en: The Deb package format
pt: O formato de pacotes Deb

note: type: itemize
en: \texttt{.deb} file: an \texttt{ar} archive
pt: Ficheiro \texttt{.deb}: um arquivo \texttt{ar}

note: $ type: itemize
en: \texttt{debian-binary}: version of the deb file format, \texttt{"2.0\textbackslash{}n"}
pt: \texttt{debian-binary}: versão do formato de ficheiro deb, \texttt{"2.0\textbackslash{}n"}

note: type: itemize
en: \texttt{control.tar.gz}: metadata about the package\\ {\small \texttt{\textbf{control}, md5sums, (pre|post)(rm|inst), triggers, shlibs}, \ldots}
pt: \texttt{control.tar.gz}: meta-dados acerca do pacote\\ {\small \texttt{\textbf{control}, md5sums, (pre|post)(rm|inst), triggers, shlibs}, \ldots}

note: type: itemize
en: \texttt{data.tar.gz}: data files of the package
pt: \texttt{data.tar.gz}: ficheiros de dados do pacote

note: type: itemize
en: You could create your \texttt{.deb} files manually\\ {\footnotesize \url{http://tldp.org/HOWTO/html\_single/Debian-Binary-Package-Building-HOWTO/}}
pt: Você poderia criar os seus ficheiros \texttt{.deb} manualmente\\ {\footnotesize \url{http://tldp.org/HOWTO/html\_single/Debian-Binary-Package-Building-HOWTO/}}

note: type: itemize
en: But most people don't do it that way
pt: Mas a maioria das pessoas não o faz dessa maneira

note: type: textbf{#1}
en: This tutorial: create Debian packages, the Debian way
pt: Este manual: criar pacotes Debian, à maneira Debian

note: type: frame{#2}
en: Tools you will need
pt: Ferramentas que irá precisar

note: type: itemize
en: A Debian (or Ubuntu) system (with root access)
pt: Um sistema Debian (ou Ubuntu) (com acesso a root)

note: type: itemize
en: Some packages:
pt: Alguns pacotes:

note: type: itemize
en: \textbf{build-essential}: has dependencies on the packages that will be assumed to be available on the developer's machine (no need to specify them in the \texttt{Build-Depends:} control field of your package)
pt: \textbf{build-essential}: tem dependências nos pacotes que irão ser assumidas para estarem disponíveis na máquina do desenvolvedor (não é preciso especificá-las no campo de controle  \texttt{Build-Depends:} do seu pacote)

note: type: itemize
en: includes a dependency on \textbf{dpkg-dev}, which contains basic Debian-specific tools to create packages
pt: Inclui a dependência de \textbf{dpkg-dev}, a qual contém ferramentas básicas específicas de Debian para criar pacotes

note: type: itemize
en: \textbf{devscripts}: contains many useful scripts for Debian maintainers
pt: \textbf{devscripts}: contém muitos scripts úteis para mantenedores de Debian

note: type: frame
en: Many other tools will also be mentioned later, such as \textbf{debhelper}, \textbf{cdbs}, \textbf{quilt}, \textbf{pbuilder}, \textbf{sbuild}, \textbf{lintian}, \textbf{svn-buildpackage}, \textbf{git-buildpackage}, \ldots\\ Install them when you need them.
pt: Muitas outras ferramentas serão também mencionadas mais tarde, tais como \textbf{debhelper}, \textbf{cdbs}, \textbf{quilt}, \textbf{pbuilder}, \textbf{sbuild}, \textbf{lintian}, \textbf{svn-buildpackage}, \textbf{git-buildpackage}, \ldots\\ instale-as quando precisar delas.

note: type: frame{#2}
en: General packaging workflow
pt: Fluxo de trabalho de empacotamento geral

note: \draw[arr,->] (bin) -- (-1,-6) node[pos=0.5,left] {upload (\textttc{dput})}; hack hack hack type: tikzpicture
en: \node[node1] (www) at (0, 0) {Web}; \node[node1] (us) at (2.5, 0) {upstream source}; \node[node1] (da) at (-2.5, 0) {Debian mirror}; \node[node1] (sp) at (0, -2) {source package}; \draw[arr,<-,dashed,thick] (sp) -- (2.5,-2) node[right=0cm,text width=2.98cm,text centered,font=\small\sl] {where most of the manual work is done}; \node[node1] (bin) at (0, -4) {one or several binary packages}; \draw[arr,<-,dashed,thick] (bin) -- (3.5,-4) node[right,text centered,font=\small\ttfamily\sl] {.deb\normalfont}; \draw[arr,->] (us) -- (sp) node[pos=0.5,right,command] {dh\_make}; \draw[arr,->] (da) -- (sp) node[pos=0.5,left,command] {apt-get source}; \draw[arr,->] (www) -- (sp) node[pos=0.5,left,command] {dget}; \draw[arr,->] (sp) -- (bin) node[pos=0.5,right,text width=6cm] {\textttc{debuild} (build and test with \textttc{lintian}) or \textttc{dpkg-buildpackage}}; \draw[arr,->] (bin) -- (1,-6) node[pos=0.5,right] {install (\textttc{debi})}; \draw[transparent] (bin) -- (-1,-6) node[pos=0.5,left,opaque] {upload (\textttc{dput})}; \draw[arr,->,rounded corners] (bin) -- (-1,-6) -- (-4.5,-6) -- (-4.5,0) -- (da); \useasboundingbox (-4,-6) rectangle (6,0);
pt: \node[node1] (www) at (0, 0) {Web}; \node[node1] (us) at (2.5, 0) {upstream source}; \node[node1] (da) at (-2.5, 0) {Debian mirror}; \node[node1] (sp) at (0, -2) {source package}; \draw[arr,<-,dashed,thick] (sp) -- (2.5,-2) node[right=0cm,text width=2.98cm,text centered,font=\small\sl] {onde a maioria do trabalho manual é feito}; \node[node1] (bin) at (0, -4) {um ou vários pacotes binários}; \draw[arr,<-,dashed,thick] (bin) -- (3.5,-4) node[right,text centered,font=\small\ttfamily\sl] {.deb\normalfont}; \draw[arr,->] (us) -- (sp) node[pos=0.5,right,command] {dh\_make}; \draw[arr,->] (da) -- (sp) node[pos=0.5,left,command] {apt-get source}; \draw[arr,->] (www) -- (sp) node[pos=0.5,left,command] {dget}; \draw[arr,->] (sp) -- (bin) node[pos=0.5,right,text width=6cm] {\textttc{debuild} (compilar e testar com \textttc{lintian}) ou \textttc{dpkg-buildpackage}}; \draw[arr,->] (bin) -- (1,-6) node[pos=0.5,right] {install (\textttc{debi})}; \draw[transparent] (bin) -- (-1,-6) node[pos=0.5,left,opaque] {upload (\textttc{dput})}; \draw[arr,->,rounded corners] (bin) -- (-1,-6) -- (-4.5,-6) -- (-4.5,0) -- (da); \useasboundingbox (-4,-6) rectangle (6,0);

note: type: subsection{#2}
en: Rebuilding dash
pt: Recompilando o dash

note: type: frame{#2}
en: Example: rebuilding dash
pt: Exemplo: recompilando o dash

note: type: enumerate
en: Install packages needed to build dash, and devscripts\\ {\texttt{sudo apt-get build-dep dash}\\ (requires \texttt{deb-src} lines in \texttt{/etc/apt/sources.list})}\\ {\texttt{sudo apt-get install -{}-no-install-recommends devscripts fakeroot}}
pt: Instale os pacotes necessários para compilar dash, e devscripts\\ {\texttt{sudo apt-get build-dep dash}\\ (requer linhas \texttt{deb-src} em \texttt{/etc/apt/sources.list})}\\ {\texttt{sudo apt-get install -{}-no-install-recommends devscripts fakeroot}}

note: type: enumerate
en: Create a working directory, and get in it:\\ \texttt{mkdir /tmp/debian-tutorial ; cd /tmp/debian-tutorial}
pt: Crie um directório de trabalho, e vá para ele :\\ \texttt{mkdir /tmp/debian-tutorial ; cd /tmp/debian-tutorial}

note: type: enumerate
en: Grab the \texttt{dash} source package\\ \texttt{apt-get source dash}\\ {\small (This needs you to have \texttt{deb-src} lines in your \texttt{/etc/apt/sources.list})}
pt: Obtenha o pacote fonte do \texttt{dash}\\ \texttt{apt-get source dash}\\ {\small (Para isto precisa de ter linhas \texttt{deb-src} no seu \texttt{/etc/apt/sources.list})}

note: type: enumerate
en: Build the package\\ {\texttt{cd dash-*\\ debuild -us -uc}} ~~~(\texttt{-us -uc} disables signing the package with GPG)
pt: Compile o pacote\\ {\texttt{cd dash-*\\ debuild -us -uc}} ~~~(\texttt{-us -uc} desactiva a assinatura do pacote com GPG)

note: type: enumerate
en: Check that it worked
pt: Verifique que funcionou

note: type: itemize
en: There are some new \texttt{.deb} files in the parent directory
pt: Existem alguns ficheiros \texttt{.deb} novos no directório pai

note: type: enumerate
en: Look at the \texttt{debian/} directory
pt: Observe o directório \texttt{debian/}

note: type: itemize
en: That's where the packaging work is done
pt: É onde o trabalho de empacotamento é feito

note: type: section{#2}
en: Creating source packages
pt: Criar pacotes fonte

note: type: subsection{#2}
en: Source packages basics
pt: Bases dos pacotes fonte

note: type: frame{#2}
en: Source package
pt: Pacote fonte

note: type: itemize
en: One source package can generate several binary packages\\ {\small e.g. the \texttt{\bfseries libtar} source generates the \texttt{\bfseries libtar0} and \texttt{\bfseries libtar-dev} binary packages}
pt: Um pacote fonte pode gerar vários pacotes binários\\ {\small ex, a fonte \texttt{\bfseries libtar} gera pacotes binários \texttt{\bfseries libtar0} e \texttt{\bfseries libtar-dev}}

note: type: itemize
en: Two kinds of packages: (if unsure, use non-native)
pt: Dois tipos de pacotes: (em caso de dúvida, use não-nativo)

note: type: itemize
en: Native packages: normally for Debian specific software (\textsl{dpkg}, \textsl{apt})
pt: Pacotes nativos: normalmente para software específico de Debian (\textsl{dpkg}, \textsl{apt})

note: type: itemize
en: Non-native packages: software developed outside Debian
pt: Pacotes não-nativos: software desenvolvido fora de Debian

note: type: itemize
en: Main file: \texttt{.dsc} (meta-data)
pt: Ficheiro principal: \texttt{.dsc} (meta-dados)

note: type: itemize
en: Other files depending on the version of the source format
pt: Outros ficheiros que dependem da versão do formato fonte

note: type: itemize
en: 1.0 or 3.0 (native): \texttt{package\_version.tar.gz}
pt: 1.0 or 3.0 (nativo): \texttt{package\_version.tar.gz}

note: type: itemize
en: 1.0 (non-native):
pt: 1.0 (não-nativo):

note: type: itemize
en: \texttt{pkg\_ver.orig.tar.gz}: upstream source
pt: \texttt{pkg\_ver.orig.tar.gz}: fonte da autoria (upstream)

note: type: itemize
en: \texttt{pkg\_debver.diff.gz}: patch to add Debian-specific changes
pt: \texttt{pkg\_debver.diff.gz}: patch para adicionar alterações específicas de Debian

note: type: itemize
en: \texttt{pkg\_debver.debian.tar.gz}: tarball with the Debian changes
pt: \texttt{pkg\_debver.debian.tar.gz}: tarball com as alterações de Debian

note: type: frame
en: (See \texttt{dpkg-source(1)} for exact details)
pt: (Veja \texttt{dpkg-source(1)} para detalhes exactos)

note: type: frame{#2}
en: Source package example (wget\_1.12-2.1.dsc)
pt: Exemplo de pacote fonte (wget\_1.12-2.1.dsc)

note: type: subsection{#2}
en: Retrieving source packages
pt: Obtendo pacotes fonte

note: type: frame{#2}
en: Retrieving an existing source package
pt: Obtendo um pacote fonte existente

note: type: itemize
en: From the Debian archive:
pt: Do arquivo Debian:

note: type: itemize
en: \texttt{apt-get source \textsl{package}}
pt: \texttt{apt-get source \textsl{pacote}}

note: type: itemize
en: \texttt{apt-get source \textsl{package=version}}
pt: \texttt{apt-get source \textsl{pacote=versão}}

note: type: itemize
en: \texttt{apt-get source \textsl{package/release}}
pt: \texttt{apt-get source \textsl{pacote/lançamento}}

note: type: itemize
en: (You need \texttt{deb-src} lines in \texttt{sources.list})
pt: (Você precisa de linhas \texttt{deb-src} em \texttt{sources.list})

note: type: itemize
en: From the Internet:
pt: Da Internet:

note: type: itemize
en: \texttt{dget http://snapshot.debian.org/archive/debian-archive/\\20090802T004153Z/debian/dists/bo/main/source/web/\\ wget\_1.4.4-6.dsc}\\ (\href{http://snapshot.debian.org/}{\ttfamily snapshot.d.o} provides all packages from Debian since 2005)
pt: \texttt{dget http://snapshot.debian.org/archive/debian-archive/\\20090802T004153Z/debian/dists/bo/main/source/web/\\ wget\_1.4.4-6.dsc}\\ (\href{http://snapshot.debian.org/}{\ttfamily snapshot.d.o} disponibiliza todos os pacotes de Debian desde 2005)

note: type: itemize
en: From the (declared) version control system:
pt: Do sistema de controlo de versão (declarado):

note: type: itemize
en: \texttt{debcheckout \textsl{package}}
pt: \texttt{debcheckout \textsl{pacote}}

note: type: itemize
en: Once downloaded, extract with \texttt{dpkg-source -x \textsl{file.dsc}}
pt: Após a descarga, extraia com \texttt{dpkg-source -x \textsl{file.dsc}}

note: type: frame{#2}
en: Creating a basic source package
pt: Criar um pacote fonte básico

note: type: itemize
en: Download the upstream source\\ (\textsl{upstream source} = the one from the software's original developers)
pt: Descarregue a fonte do autor (upstream)\\ (\textsl{upstream source} = aquela dos desenvolvedores originais do software)

note: type: itemize
en: Rename to \texttt{<\textsl{source\_package}>\_<\textsl{upstream\_version}>.orig.tar.gz}\\ (example: \texttt{simgrid\_3.6.orig.tar.gz})
pt: Renomeie para \texttt{<\textsl{source\_package}>\_<\textsl{upstream\_version}>.orig.tar.gz}\\ (exemplo: \texttt{simgrid\_3.6.orig.tar.gz})

note: type: itemize
en: Untar it
pt: Descompacte-o

note: type: itemize
en: Rename the directory to \texttt{<\textsl{source\_package}>-<\textsl{upstream\_version}>}\\ (example: \texttt{simgrid-3.6})
pt: Renomeie o directório para \texttt{<\textsl{source\_package}>-<\textsl{upstream\_version}>}\\ (exemplo: \texttt{simgrid-3.6})

note: type: itemize
en: \texttt{cd \texttt{<\textsl{source\_package}>-<\textsl{upstream\_version}>} \&\& dh\_make}\\ (from the \textbf{dh-make} package)
pt: \texttt{cd \texttt{<\textsl{source\_package}>-<\textsl{upstream\_version}>} \&\& dh\_make}\\ (do pacote \textbf{dh-make})

note: type: itemize
en: There are some alternatives to \texttt{dh\_make} for specific sets of packages: \textbf{dh-make-perl}, \textbf{dh-make-php}, \ldots
pt: Existem algumas alternativas ao \texttt{dh\_make} para conjuntos específicos de pacotes: \textbf{dh-make-perl}, \textbf{dh-make-php}, \ldots

note: type: itemize
en: \texttt{debian/} directory created, with a lot of files in it
pt: Directório \texttt{debian/} criado, com muitos ficheiros lá dentro

note: type: frame{#2}
en: Files in debian/
pt: Ficheiros em debian/

note: type: frame
en: All the packaging work should be made by modifying files in \texttt{debian/}
pt: Todo o trabalho de empacotamento deve ser feito ao modificar ficheiros em \texttt{debian/}

note: type: itemize
en: Main files:
pt: Ficheiros principais:

note: type: itemize
en: \textbf{control} -- meta-data about the package (dependencies, etc.)
pt: \textbf{control} -- meta-dados acerca do pacote (dependências, etc)

note: type: itemize
en: \textbf{rules} -- specifies how to build the package
pt: \textbf{rules} -- especifica como compilar o pacote

note: type: itemize
en: \textbf{copyright} -- copyright information for the package
pt: \textbf{copyright} -- informação de copyright para o pacote

note: type: itemize
en: \textbf{changelog} -- history of the Debian package
pt: \textbf{changelog} -- história do pacote Debian

note: type: itemize
en: Other files:
pt: Outros ficheiros:

note: type: itemize
en: maintainer scripts\\ {\small *.postinst, *.prerm, \ldots}
pt: scripts do mantenedor\\ {\small *.postinst, *.prerm, \ldots}

note: type: itemize
en: source/format
pt: fonte/formato

note: type: itemize
en: patches/ -- if you need to modify the upstream sources
pt: patches/ -- se você precisar de modificar as fontes do autor

note: type: itemize
en: Several files use a format based on RFC 822 (mail headers)
pt: Vários ficheiros usam um formato baseado em RFC 822 (cabeçalhos principais)

note: type: itemize
en: Lists the Debian packaging changes
pt: Lista as alterações de empacotamento Debian

note: type: itemize
en: Gives the current version of the package
pt: Dá a versão actual do pacote

note: % type: itemize
en: Edited manually or with \textttc{dch}
pt: Editado manualmente ou com \textttc{dch}

note: type: itemize
en: Create a changelog entry for a new release: \textttc{dch -i}
pt: Crie uma entrada no changelog para um novo lançamento: \textttc{dch -i}

note: type: itemize
en: Special format to automatically close Debian or Ubuntu bugs\\ Debian: \texttt{Closes:~\#595268}; Ubuntu: \texttt{LP:~\#616929}
pt: Formato especial para fechar automaticamente bugs de Debian ou Ubuntu\\ Debian: \texttt{Closes:~\#595268}; Ubuntu: \texttt{LP:~\#616929}

note: type: itemize
en: Installed as \texttt{/usr/share/doc/\textit{package}/changelog.Debian.gz}
pt: Instalado como \texttt{/usr/share/doc/\textit{pacote}/changelog.Debian.gz}

note: type: itemize
en: Package metadata
pt: Meta dados do pacote

note: type: itemize
en: For the source package itself
pt: Para o próprio pacote fonte

note: type: itemize
en: For each binary package built from this source
pt: Para cada pacote binário compilado desta fonte

note: type: itemize
en: Package name, section, priority, maintainer, uploaders, build-dependencies, dependencies, description, homepage, \ldots
pt: Nome do pacote, secção, prioridade, mantenedor, quem faz os uploads, dependências de compilação, dependências, descrição, página do projecto, \ldots

note: type: itemize
en: Documentation: Debian Policy chapter 5\\ \url{http://www.debian.org/doc/debian-policy/ch-controlfields}
pt: Documentação: Politica Debian capítulo 5\\ \url{http://www.debian.org/doc/debian-policy/ch-controlfields}

note: type: frame{#2}
en: Architecture: all or any
pt: Arquitectura: todas ou nenhuma

note: type: frame
en: Two kinds of binary packages:
pt: Dois tipos de pacotes binários:

note: type: itemize
en: Packages with different contents on each Debian architecture
pt: Pacotes com conteúdos diferentes para cada arquitectura Debian

note: type: itemize
en: Example: C program
pt: Exemplo: programa C

note: type: itemize
en: \texttt{Architecture:\ any} in \texttt{debian/control}
pt: \texttt{Architecture:\ any} em \texttt{debian/control}

note: type: itemize
en: Or, if it only works on a subset of architectures:\\ \texttt{Architecture:\ amd64 i386 ia64 hurd-i386}
pt: Ou, se apenas funcionar num sub-conjunto de arquitecturas:\\ \texttt{Architecture:\ amd64 i386 ia64 hurd-i386}

note: type: itemize
en: buildd.debian.org: builds all the other architectures for you on upload
pt: buildd.debian.org: compila todas as outras arquitecturas para si ao submeter

note: type: itemize
en: Named \texttt{\textsl{package}\_\textsl{version}\_\textsl{architecture}.deb}
pt: Chamado \texttt{\textsl{pacote}\_\textsl{versão}\_\textsl{arquitectura}.deb}

note: type: itemize
en: Packages with the same content on all architectures
pt: Pacotes com o mesmo conteúdo para todas as arquitecturas

note: type: itemize
en: Example: Perl library
pt: Exemplo: biblioteca Perl

note: type: itemize
en: \texttt{Architecture:\ all} in \texttt{debian/control}
pt: \texttt{Architecture:\ all} em \texttt{debian/control}

note: type: itemize
en: Named \texttt{\textsl{package}\_\textsl{version}\_\textbf{all}.deb}
pt: Chamado \texttt{\textsl{pacote}\_\textsl{versão}\_\textbf{todas}.deb}

note: type: frame
en: A source package can generate a mix of \texttt{Architecture:\ any} and \texttt{Architecture:\ all} binary packages
pt: Um pacote fonte pode gerar uma mistura de pacotes binários de \texttt{Arquitectura:\ any} e \texttt{Arquitectura:\ all}

note: type: itemize
en: Interface used to build Debian packages
pt: Interface usada para compilar pacotes Debian

note: type: itemize
en: Documented in Debian Policy, chapter 4.8\\ {\small \url{http://www.debian.org/doc/debian-policy/ch-source\#s-debianrules}}
pt: Documentado em Politica Debian, capitulo 4.8\\ {\small \url{http://www.debian.org/doc/debian-policy/ch-source\#s-debianrules}}

note: type: itemize
en: Required targets:
pt: Alvos necessários:

note: type: itemize
en: \texttt{build, build-arch, build-indep}: should perform all the configuration and compilation
pt: \texttt{build, build-arch, build-indep}: deve executar toda a configuração e compilação

note: type: itemize
en: \texttt{binary, binary-arch, binary-indep}: build the binary packages
pt: \texttt{binary, binary-arch, binary-indep}: compila os pacotes binários

note: type: itemize
en: \texttt{dpkg-buildpackage} will call \texttt{binary} to build all the packages, or \texttt{binary-arch} to build only the \texttt{Architecture:~any} packages
pt: \texttt{dpkg-buildpackage} irá chamar \texttt{binary} para compilar todos os pacotes, ou \texttt{binary-arch} para compilar apenas os pacotes de \texttt{Arquitectura:~any}

note: type: itemize
en: \texttt{clean}: clean up the source directory
pt: \texttt{clean}: limpa o directório fonte

note: type: subsection{#2}
en: Packaging helpers
pt: Ajudantes de empacotamento

note: type: frame{#2}
en: Packaging helpers -- debhelper
pt: Ajudantes de empacotamento -- debhelper

note: type: itemize
en: You could write shell code in \texttt{debian/rules} directly
pt: Você podia escrever código de shell directamente em \texttt{debian/rules}

note: type: itemize
en: See the \texttt{adduser} package for example
pt: Veja o pacote \texttt{adduser} como exemplo

note: type: itemize
en: Better practice (used by most packages): use a \textsl{Packaging helper}
pt: Melhor prática (usada pela maioria dos pacotes): use um \textsl{Ajudante de Empacotamento}

note: type: itemize
en: Most popular one: \textbf{debhelper} (used by 98\% of packages)
pt: O mais popular deles: \textbf{debhelper} (usado por 98\% dos pacotes)

note: type: itemize
en: Goals:
pt: Objectivos:

note: type: itemize
en: Factor the common tasks in standard tools used by all packages
pt: Factoriza as tarefas comuns em ferramentas standard usadas por todos os pacotes

note: type: itemize
en: Fix some packaging bugs once for all packages
pt: Corrige alguns bugs de empacotamento de uma vez para todos os pacotes

note: type: itemize
en: Called from \texttt{debian/rules}
pt: Chamado de \texttt{debian/rules}

note: type: itemize
en: Configurable using command parameters or files in \texttt{debian/}
pt: Configurável usando parâmetros de comandos ou ficheiros em \texttt{debian/}

note: type: itemize
en: {\footnotesize \ttfamily \textsl{package}.docs, \textsl{package}.examples, \textsl{package}.install, \textsl{package}.manpages, \ldots}
pt: {\footnotesize \ttfamily \textsl{package}.docs, \textsl{package}.exemplos, \textsl{package}.install, \textsl{package}.manpages, \ldots}

note: type: itemize
en: Third-party helpers for sets of packages: \textbf{python-support}, \textbf{dh\_ocaml}, \ldots
pt: Ajudantes de terceiros para conjuntos de pacotes: \textbf{python-support}, \textbf{dh\_ocaml}, \ldots

note: type: itemize
en: Gotcha: \texttt{debian/compat}: Debhelper compatibility version (use "7")
pt: Gotcha: \texttt{debian/compat}: Versão de compatibilidade do Debhelper (use "7")

note: type: frame{#2}
en: debian/rules using debhelper (1/2)
pt: debian/rules usando debhelper (1/2)

note: type: frame{#2}
en: debian/rules using debhelper (2/2)
pt: debian/rules usando debhelper (2/2)

note: type: itemize
en: With debhelper, still a lot of redundancy between packages
pt: Com o debhelper, ainda muita redundância entre pacotes

note: type: itemize
en: Second-level helpers that factor common functionality
pt: Ajudantes de segundo-nível que factorizam funcionalidades comuns

note: type: itemize
en: E.g. building with \texttt{./configure \&\& make \&\& make install} or CMake
pt: Ex. compilando com \texttt{./configure \&\& make \&\& make install} ou CMake

note: type: itemize
en: Introduced in 2005, based on advanced \textsl{GNU make} magic
pt: Introduzido em 2005, baseado na magia avançada do \textsl{GNU make}

note: type: itemize
en: Documentation: \texttt{/usr/share/doc/cdbs/}
pt: Documentação: \texttt{/usr/share/doc/cdbs/}

note: type: itemize
en: Support for Perl, Python, Ruby, GNOME, KDE, Java, Haskell, \ldots
pt: Suporte para Perl, Python, Ruby, GNOME, KDE, Java, Haskell, \ldots

note: type: itemize
en: But some people hate it:
pt: Mas algumas pessoas detestam-o:

note: type: itemize
en: Sometimes difficult to customize package builds:\\ "\textsl{twisty maze of makefiles and environment variables}"
pt: Por vezes é difícil personalizar compilações de pacotes:\\ "\textsl{labirinto distorcido de makefiles e variáveis de ambiente}"

note: type: itemize
en: Slower than plain debhelper (many useless calls to \texttt{dh\_*})
pt: Mais lento que o debhelper simples (muitas chamadas desnecessárias a \texttt{dh\_*})

note: type: frame{#2}
en: Dh (aka Debhelper 7, or dh7)
pt: Dh (aka Debhelper 7, ou dh7)

note: type: itemize
en: Introduced in 2008 as a \textsl{CDBS killer}
pt: Introduzido em 2008 como o \textsl{matador do CDBS}

note: type: itemize
en: \textbf{dh} command that calls \texttt{dh\_*}
pt: \textbf{dh} comando que chama \texttt{dh\_*}

note: type: itemize
en: Simple \textsl{debian/rules}, listing only overrides
pt: \textsl{debian/rules} simples, listando apenas as sobreposições

note: type: itemize
en: Easier to customize than CDBS
pt: Mais fácil de personalizar que o CDBS

note: type: itemize
en: Doc: manpages (\texttt{debhelper(7)}, \texttt{dh(1)}) + slides from DebConf9 talk\\ \url{http://kitenet.net/~joey/talks/debhelper/debhelper-slides.pdf}
pt: Documentos: manpages (\texttt{debhelper(7)}, \texttt{dh(1)}) + slides da reunião DebConf9\\ \url{http://kitenet.net/~joey/talks/debhelper/debhelper-slides.pdf}

note: type: frame{#2}
en: Classic debhelper vs CDBS vs dh
pt: debhelper clássico contra CDBS contra dh

note: type: itemize
en: Mind shares:\\ Classic debhelper: 27\% \hskip 1em CDBS: 18\% \hskip 1em dh: 54\%
pt: Mind shares:\\ debhelper clássico: 27\% \hskip 1em CDBS: 18\% \hskip 1em dh: 54\%

note: type: itemize
en: Which one should I learn?
pt: Qual deles devo aprender?

note: type: itemize
en: Probably a bit of all of them
pt: Provavelmente um pouco de todos eles

note: type: itemize
en: You need to know debhelper to use dh and CDBS
pt: Você precisa de conhecer o debhelper para usar o dh e o CDBS

note: type: itemize
en: You might have to modify CDBS packages
pt: Você poderá ter que modificar pacotes CDBS

note: type: itemize
en: Which one should I use for a new package?
pt: Qual deles devo usar para um pacote novo?

note: type: itemize
en: \textbf{dh} (only solution with an increasing mind share)
pt: \textbf{dh} (solução apenas com um aumento da mind share)

note: type: section{#2}
en: Building and testing packages
pt: Compilando e testando pacotes

note: type: frame{#2}
en: Building packages
pt: Compilando pacotes

note: type: itemize
en: \textttc{apt-get build-dep mypackage}\\ Installs the \textsl{build-dependencies} (for a package already in Debian)\\ Or \textttc{mk-build-deps -ir} (for a package not uploaded yet)
pt: \textttc{apt-get build-dep mypackage}\\ Instala as \textsl{build-dependencies} (para um pacote já em Debian)\\ Ou \textttc{mk-build-deps -ir} (para um pacote ainda não submetido)

note: type: itemize
en: \textttc{debuild}: build, test with \texttt{lintian}, sign with GPG
pt: \textttc{debuild}: compila, testa com \texttt{lintian}, assina com GPG

note: type: itemize
en: Also possible to call \textttc{dpkg-buildpackage} directly
pt: Também possível chamar directamente \textttc{dpkg-buildpackage}

note: type: itemize
en: Usually with \texttt{dpkg-buildpackage -us -uc}
pt: Normalmente com \texttt{dpkg-buildpackage -us -uc}

note: type: itemize
en: It is better to build packages in a clean \& minimal environment
pt: É melhor compilar os pacotes num ambiente limpo \& mínimo

note: type: itemize
en: \textttc{pbuilder} -- helper to build packages in a \textsl{chroot}\\ Good documentation: \url{https://wiki.ubuntu.com/PbuilderHowto}\\ (optimization: \textttc{cowbuilder} \textttc{ccache} \textttc{distcc})
pt: \textttc{pbuilder} -- ajudante para compilar pacotes em \textsl{chroot}\\ Boa documentação: \url{https://wiki.ubuntu.com/PbuilderHowto}\\ (optimização: \textttc{cowbuilder} \textttc{ccache} \textttc{distcc})

note: type: itemize
en: \textttc{schroot} and \textttc{sbuild}: used on the Debian build daemons\\ (not as simple as \texttt{pbuilder}, but allows LVM snapshots\\ see: \url{https://help.ubuntu.com/community/SbuildLVMHowto} )
pt: \textttc{schroot} e \textttc{sbuild}: usados nos daemons de compilação de Debian\\ (não tão simples como \texttt{pbuilder}, mas permite instantâneos LVM\\ veja: \url{https://help.ubuntu.com/community/SbuildLVMHowto} )

note: type: itemize
en: Generates \texttt{.deb} files and a \texttt{.changes} file
pt: Gera ficheiros \texttt{.deb} e um ficheiro \texttt{.changes}

note: type: itemize
en: \texttt{.changes}: describes what was built; used to upload the package
pt: \texttt{.changes}: descreve o que foi compilado; usado para fazer o upload do pacote

note: type: frame{#2}
en: Installing and testing packages
pt: Instalando e testando pacotes

note: type: itemize
en: Install the package locally: \textttc{debi} (will use \texttt{.changes} to know what to install)
pt: Instale o pacote localmente: \textttc{debi} (irá usar \texttt{.changes} para saber o que instalar)

note: type: itemize
en: List the content of the package: \texttt{{\color{rouge}debc} ../mypackage<TAB>.changes}
pt: Liste o conteúdo do pacote: \texttt{{\color{rouge}debc} ../mypackage<TAB>.changes}

note: type: itemize
en: Compare the package with a previous version:\\ \texttt{{\color{rouge}debdiff} ../mypackage\_1\_*.changes ../mypackage\_2\_*.changes}\\ or to compare the sources:\\ \texttt{{\color{rouge}debdiff} ../mypackage\_1\_*.dsc ../mypackage\_2\_*.dsc}\\
pt: Compara o pacote com a versão anterior:\\ \texttt{{\color{rouge}debdiff} ../mypackage\_1\_*.changes ../mypackage\_2\_*.changes}\\ ou para comparar as fontes:\\ \texttt{{\color{rouge}debdiff} ../mypackage\_1\_*.dsc ../mypackage\_2\_*.dsc}\\

note: type: itemize
en: Check the package with \texttt{lintian} (static analyzer):\\ \texttt{{\color{rouge}lintian} ../mypackage<TAB>.changes}\\ \texttt{lintian -i}: gives more information about the errors \\ \texttt{lintian -EviIL +pedantic}: shows more problems
pt: Verifique o pacote com \texttt{lintian} (analisador estático):\\ \texttt{{\color{rouge}lintian} ../mypackage<TAB>.changes}\\ \texttt{lintian -i}: dá mais informação acerca de erros \\ \texttt{lintian -EviIL +pedantic}: mostra mais problemas

note: type: itemize
en: Upload the package to Debian (\textttc{dput}) (needs configuration)
pt: Faça o upload do pacote para Debian (\textttc{dput}) (precisa de configuração)

note: type: itemize
en: Manage a private Debian archive with \textttc{reprepro}\\ Documentation: \url{http://mirrorer.alioth.debian.org/}
pt: Faça gestão de um arquivo Debian privado com \textttc{reprepro}\\ Documentação: \url{http://mirrorer.alioth.debian.org/}

note: type: frame{#2}
en: Practical session 1: modifying the grep package
pt: Sessão prática 1: modificar o pacote grep

note: type: enumerate
en: Go to \url{http://ftp.debian.org/debian/pool/main/g/grep/} and download version 2.6.3-3 of the package (if you use Ubuntu 11.10 or later, or Debian testing or unstable, use version 2.9-1 or 2.9-2 instead)
pt: Vá a \url{http://ftp.debian.org/debian/pool/main/g/grep/} e descarregue a versão 2.6.3-3 do pacote (se você usar Ubuntu 11.10 ou posterior, ou Debian testing ou unstable, então use a versão 2.9-1 ou 2.9-2)

note: type: itemize
en: If the source package is not unpacked automatically, unpack it with \texttt{dpkg-source~-x~grep\_*.dsc}
pt: Se o pacote fonte não descompactar automaticamente, descompacte-o com \texttt{dpkg-source~-x~grep\_*.dsc}

note: type: enumerate
en: Look at the files in \texttt{debian/}.
pt: Observe os ficheiros em \texttt{debian/}.

note: type: itemize
en: How many binary packages are generated by this source package?
pt: Quantos pacotes binários são gerados por este pacote fonte?

note: type: itemize
en: Which packaging helper does this package use?
pt: Qual o ajudante de empacotamento este pacote usa?

note: type: enumerate
en: Build the package
pt: Compile o pacote

note: type: enumerate
en: We are now going to modify the package. Add a changelog entry and increase the version number.
pt: Agora você vai modificar o pacote. Adicione uma entrada changelog e incremente o número da versão.

note: type: enumerate
en: Now disable perl-regexp support (it is a \texttt{./configure} option)
pt: Agora desactive o suporte a perl-regexp (é uma opção de \texttt{./configure})

note: type: enumerate
en: Rebuild the package
pt: Re-compile o pacote

note: type: enumerate
en: Compare the original and the new package with debdiff
pt: Compare os pacotes original e novo com o debdiff

note: type: enumerate
en: Install the newly built package
pt: instale o pacote compilado recentemente

note: type: enumerate
en: Cry if you messed up ;)
pt: Chore se fez asneira ;)

note: type: section{#2}
en: Advanced packaging topics
pt: Tópicos de empacotamento avançados

note: type: itemize
en: Copyright and license information for the source and the packaging
pt: Informação de copyright e licença para a fonte e o empacotamento

note: type: itemize
en: Traditionally written as a text file
pt: Tradicionalmente escrito num ficheiro de texto

note: type: itemize
en: New machine-readable format: {\small\url{http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/}}
pt: Novo formato máquina-legível: {\small\url{http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/}}

note: type: frame{#2}
en: Modifying the upstream source
pt: Modificar a fonte do autor

note: type: frame
en: Often needed:
pt: Muitas vezes necessário:

note: type: itemize
en: Fix bugs or add customizations that are specific to Debian
pt: Corrigir bugs ou adicionar personalizações que são específicas de Debian

note: type: itemize
en: Backport fixes from a newer upstream release
pt: Correcções a versões anteriores (backport) a partir de lançamento mais recente do autor

note: type: frame
en: Several methods to do it:
pt: Vários métodos para o fazer:

note: type: itemize
en: Modifying the files directly
pt: Modificar os ficheiros directamente

note: type: itemize
en: Simple
pt: Simples

note: type: itemize
en: But no way to track and document the changes
pt: Mas sem modo de acompanhar e documentar as alterações

note: type: itemize
en: Using patch systems
pt: utilizando sistemas de patch

note: type: itemize
en: Eases contributing your changes to upstream
pt: Facilita a contribuição das suas alterações para o autor original (upstream)

note: type: itemize
en: Helps sharing the fixes with derivatives
pt: Ajuda a partilhar as correcções com os derivados

note: type: itemize
en: Gives more exposure to the changes\\ \url{http://patch-tracker.debian.org/}
pt: Dá melhor exibição às alterações\\ \url{http://patch-tracker.debian.org/}

note: type: frame{#2}
en: Patch systems
pt: Sistemas de patch

note: type: itemize
en: Principle: changes are stored as patches in \texttt{debian/patches/}
pt: Princípio: as alterações são guardadas como patches em \texttt{debian/patches/}

note: type: itemize
en: Applied and unapplied during build
pt: Aplicado e "des-aplicado" durante a compilação

note: type: itemize
en: Past: several implementations -- \textsl{simple-patchsys} (\textsl{cdbs}), \textsl{dpatch}, \textbf{\textsl{quilt}}
pt: Passado: várias implementações -- \textsl{simple-patchsys} (\textsl{cdbs}), \textsl{dpatch}, \textbf{\textsl{quilt}}

note: type: itemize
en: Each supports two \texttt{debian/rules} targets:
pt: Cada um suporta dois alvos \texttt{debian/rules}:

note: type: itemize
en: \texttt{debian/rules patch}: apply all patches
pt: \texttt{debian/rules patch}: aplica todas as patches

note: type: itemize
en: \texttt{debian/rules unpatch}: de-apply all patches
pt: \texttt{debian/rules unpatch}: retira as alterações de todas as patches

note: type: itemize
en: More documentation: \url{http://wiki.debian.org/debian/patches}
pt: Mais documentação: \url{http://wiki.debian.org/debian/patches}

note: type: textbf{#1}
en: New source package format with built-in patch system: 3.0 (quilt)
pt: Novo formato de pacote fonte com sistema de patch integrado: 3.0 (quilt)

note: type: itemize
en: Recommended solution
pt: Solução recomendada

note: type: itemize
en: You need to learn \textsl{quilt}\\ \url{http://pkg-perl.alioth.debian.org/howto/quilt.html}
pt: Você precisa de aprender \textsl{quilt}\\ \url{http://pkg-perl.alioth.debian.org/howto/quilt.html}

note: type: itemize
en: Patch-system-agnostic tool in \texttt{devscripts}: \texttt{edit-patch}
pt: Ferramenta patch-system-agnostic em \texttt{devscripts}: \texttt{edit-patch}

note: type: frame{#2}
en: Documentation of patches
pt: Documentação de patches

note: type: itemize
en: Standard headers at the beginning of the patch
pt: Cabeçalhos standard no inicio da patch

note: type: itemize
en: Documented in DEP-3 - Patch Tagging Guidelines\\ \url{http://dep.debian.net/deps/dep3/}
pt: Documentado em DEP-3 - Patch Tagging Guidelines\\ \url{http://dep.debian.net/deps/dep3/}

note: type: frame{#2}
en: Doing things during installation and removal
pt: Fazer coisas durante a instalação e remoção

note: type: itemize
en: Decompressing the package is sometimes not enough
pt: Descomprimir o pacote por vezes não é suficiente

note: type: itemize
en: Create/remove system users, start/stop services, manage \textsl{alternatives}
pt: Criar/remover utilizadores do sistema, iniciar/para serviços, gerir \textsl{alternativas}

note: type: itemize
en: Done in \textsl{maintainer scripts}\\ \texttt{preinst, postinst, prerm, postrm}
pt: Feito nos \textsl{scripts do mantenedor}\\ \texttt{preinst, postinst, prerm, postrm}

note: type: itemize
en: Snippets for common actions can be generated by debhelper
pt: Podem ser gerados fragmentos para acções comuns pelo debhelper

note: type: itemize
en: Documentation:
pt: Documentação:

note: type: itemize
en: Debian Policy Manual, chapter 6\\ {\footnotesize \url{http://www.debian.org/doc/debian-policy/ch-maintainerscripts}}
pt: Manual de politicas Debian, capítulo 6\\ {\footnotesize \url{http://www.debian.org/doc/debian-policy/ch-maintainerscripts}}

note: type: itemize
en: Debian Developer's Reference, chapter 6.4\\ {\scriptsize \url{http://www.debian.org/doc/developers-reference/best-pkging-practices.html}}
pt: Referência dos Desenvolvedores de Debian, capítulo 6.4\\ {\scriptsize \url{http://www.debian.org/doc/developers-reference/best-pkging-practices.html}}

note: type: itemize
en: Prompting the user
pt: Questionando o utilizador

note: type: itemize
en: Must be done with \textbf{debconf}
pt: Tem de ser feito com \textbf{debconf}

note: type: itemize
en: Documentation: \texttt{debconf-devel(7)} (\texttt{debconf-doc} package)
pt: Documentação: \texttt{debconf-devel(7)} (pacote \texttt{debconf-doc})

note: type: frame{#2}
en: Monitoring upstream versions
pt: Monitorizando versões do autor (upstream)

note: type: itemize
en: Specify where to look in \texttt{debian/watch} (see \texttt{uscan(1)})
pt: Especifica onde procurar em \texttt{debian/watch} (veja \texttt{uscan(1)})

note: type: itemize
en: Debian infrastructure that makes use of \texttt{debian/watch}:\\ \textbf{Debian External Health Status}\\ \url{http://dehs.alioth.debian.org/}
pt: Infraestrutura Debian que faz uso de \texttt{debian/watch}:\\ \textbf{Debian External Health Status}\\ \url{http://dehs.alioth.debian.org/}

note: type: itemize
en: Maintainer warned by emails sent to the Package Tracking System\\ \url{http://packages.qa.debian.org/}
pt: Mantenedor do pacote avisado por emails enviados para o Sistema de Acompanhamento de Pacotes\\ \url{http://packages.qa.debian.org/}

note: type: itemize
en: \texttt{uscan}: run a manual check
pt: \texttt{uscan}: corre uma verificação manual

note: type: itemize
en: \texttt{uupdate}: try to update your package to the latest upstream version
pt: \texttt{uupdate}: tenta actualizar o seu pacote para a versão do autor mais recente

note: type: subsection{#2}
en: Packaging with a Version Control System (SVN, Git)
pt: Empacotar com um Sistema de Controlo de Versão (SVN, Git)

note: type: frame{#2}
en: Packaging with a Version Control System
pt: Empacotar com um Sistema de Controlo de Versão

note: type: itemize
en: Several tools to help manage branches and tags for your packaging work:\\ \texttt{svn-buildpackage}, \texttt{git-buildpackage}
pt: Várias ferramentas para ajudar a gerir ramos e etiquetas para o seu trabalho de empacotamento:\\ \texttt{svn-buildpackage}, \texttt{git-buildpackage}

note: type: itemize
en: Example: \texttt{git-buildpackage}
pt: Exemplo: \texttt{git-buildpackage}

note: type: itemize
en: \texttt{upstream} branch to track upstream with \texttt{upstream/\textsl{version}} tags
pt: \texttt{upstream} ramo para acompanhar a autoria com as etiquetas \texttt{upstream/\textsl{version}}

note: type: itemize
en: \texttt{master} branch tracks the Debian package
pt: \texttt{master} ramo que acompanha o pacote Debian

note: type: itemize
en: \texttt{debian/\textsl{version}} tags for each upload
pt: \texttt{debian/\textsl{version}} etiquetas para cada envio (upload)

note: type: itemize
en: \texttt{pristine-tar} branch to be able to rebuild the upstream tarball
pt: \texttt{pristine-tar} ramo para ser possível recompilar o tarball do autor

note: type: itemize
en: \texttt{Vcs-*} fields in \texttt{debian/control} to locate the repository
pt: \texttt{Vcs-*} campos em \texttt{debian/control} para localizar o repositório

note: type: itemize
en: VCS-agnostic interface: \texttt{debcheckout}, \texttt{debcommit}, \texttt{debrelease}\\
pt: Interface VCS-agnostic: \texttt{debcheckout}, \texttt{debcommit}, \texttt{debrelease}\\

note: type: itemize
en: \texttt{debcheckout grep} $\rightarrow$ checks out the source package from Git
pt: \texttt{debcheckout grep} $\rightarrow$ obtém o pacote fonte de Git

note: type: frame{#2}
en: Backporting packages
pt: Portar pacotes para trás (backporting)

note: type: itemize
en: Goal: use a newer version of a package on an older system\\ e.g. use \textsl{mutt} from Debian \textsl{unstable} on Debian \textsl{stable}
pt: Objectivo: usar uma nova versão de um pacote num sistema mais antigo\\ ex. usar \textsl{mutt} de Debian \textsl{unstable} em Debian \textsl{stable}

note: type: itemize
en: General idea:
pt: Ideia geral:

note: type: itemize
en: Take the source package from Debian unstable
pt: Obtenha o pacote fonte de Debian unstable

note: type: itemize
en: Modify it so that it builds and works fine on Debian stable
pt: Modifique para que compile e funcione bem em Debian stable

note: type: itemize
en: Sometimes trivial (no changes needed)
pt: Às vezes é trivial (sem alterações necessárias)

note: type: itemize
en: Sometimes difficult
pt: Às vezes é difícil

note: type: itemize
en: Sometimes impossible (many unavailable dependencies)
pt: Às vezes é impossível (muitas dependências não disponíveis)

note: type: itemize
en: Some backports are provided and supported by the Debian project\\ \url{http://backports.debian.org/}
pt: Alguns "backports" são disponibilizados e suportados pelo projecto Debian\\ \url{http://backports.debian.org/}

note: type: section{#2}
en: Maintaining packages in Debian
pt: Mantendo pacotes em Debian

note: type: frame{#2}
en: Several ways to contribute to Debian
pt: Várias maneiras de contribuir para Debian

note: type: itemize
en: \textbf{Worst} way to contribute:
pt: \textbf{Pior} maneira de contribuir:

note: type: enumerate
en: Package your own application
pt: Empacote a sua própria aplicação

note: type: enumerate
en: Get it into Debian
pt: Entre para a Debian

note: type: enumerate
en: Disappear
pt: Desapareça

note: type: itemize
en: \textbf{Better} ways to contribute:
pt: \textbf{Melhores} maneiras de contribuir:

note: type: itemize
en: Get involved in packaging teams
pt: Envolva-se com as equipas de empacotamento

note: type: itemize
en: Many teams that focus on set of packages, and need help
pt: Muitas equipas que se focam em conjuntos de pacotes, e precisam de ajuda

note: type: itemize
en: List available at \url{http://wiki.debian.org/Teams}
pt: Lista disponível em \url{http://wiki.debian.org/Teams}

note: type: itemize
en: An excellent way to learn from more experienced contributors
pt: uma excelente maneira de aprender a partir de contribuintes mais experientes

note: type: itemize
en: Adopt existing unmaintained packages (\textsl{orphaned packages})
pt: Adoptar pacotes não mantidos existentes (\textsl{pacotes órfãos})

note: type: itemize
en: Bring new software to Debian
pt: Traga novo software para Debian

note: type: itemize
en: Only if it's interesting/useful enough, please
pt: Apenas se for suficientemente interessante/útil, por favor

note: type: itemize
en: Are there alternatives already packaged in Debian?
pt: Existem alternativas já empacotadas em Debian?

note: type: frame{#2}
en: Adopting orphaned packages
pt: Adoptando pacotes órfãos

note: type: itemize
en: Many unmaintained packages in Debian
pt: Muitos pacotes não mantidos em Debian

note: type: itemize
en: Full list + process: \url{http://www.debian.org/devel/wnpp/}
pt: Lista completa + processo: \url{http://www.debian.org/devel/wnpp/}

note: type: itemize
en: Installed on your machine: \texttt{wnpp-alert}
pt: Instalado na sua máquina: \texttt{wnpp-alert}

note: type: itemize
en: Different states:
pt: Estados diferentes:

note: type: itemize
en: \textbf{O}rphaned: the package is unmaintained\\ Feel free to adopt it
pt: \textbf{O}rphaned: o pacote não é mantido\\ Sinta-se livre para o adoptar

note: type: itemize
en: \textbf{RFA}: \textbf{R}equest \textbf{F}or \textbf{A}dopter\\ Maintainer looking for adopter, but continues work in the meantime\\ Feel free to adopt it. A mail to the current maintainer is polite
pt: \textbf{RFA}: \textbf{R}equest \textbf{F}ou \textbf{A}dopter\\ O mantenedor procura quem adopte, mas entretanto continua a trabalhar\\ Sinta-se livre para adoptar. É cortês enviar um mail ao actual mantenedor

note: type: itemize
en: \textbf{ITA}: \textbf{I}ntent \textbf{T}o \textbf{A}dopt\\ Someone intends to adopt the package\\ You could propose your help!
pt: \textbf{ITA}: \textbf{I}ntent \textbf{T}o \textbf{A}dopt\\ Alguém tenciona adoptar o pacote\\ Você pode propor-se a ajudar!

note: type: itemize
en: \textbf{RFH}: \textbf{R}equest \textbf{F}or \textbf{H}elp\\ The maintainer is looking for help
pt: \textbf{RFH}: \textbf{R}equest \textbf{F}or \textbf{H}elp\\ O mantenedor procura ajuda

note: type: itemize
en: Some unmaintained packages not detected \arr not orphaned yet
pt: Alguns pacotes não mantidos e não detectados \arr ainda não estão órfãos

note: type: itemize
en: When in doubt, ask \texttt{debian-qa@lists.debian.org} \\ or \texttt{\#debian-qa} on \texttt{irc.debian.org}
pt: Quando em dúvidas, pergunte a \texttt{debian-qa@lists.debian.org} \\ ou \texttt{\#debian-qa} em \texttt{irc.debian.org}

note: type: frame{#2}
en: Adopting a package: example
pt: Adoptando um pacote: exemplo

note: type: itemize
en: Polite to contact the previous maintainer (especially if the package was RFAed, not orphaned)
pt: Seja cortês ao contactar o anterior mantenedor (especialmente se o pacote estava em RFA, não órfão)

note: type: itemize
en: Very good idea to contact the upstream project
pt: É uma boa ideia contactar a autoria do projecto

note: type: frame{#2}
en: Getting your package in Debian
pt: Colocando o seu pacote na Debian

note: type: itemize
en: You do not need any official status to get your package into Debian
pt: Você não precisa de nenhum estado oficial para ter o seu pacote na Debian

note: type: enumerate
en: Submit an \textbf{ITP} bug (\textbf{I}ntend \textbf{T}o \textbf{P}ackage) using \texttt{reportbug wnpp}
pt: Submeter um \textbf{ITP} bug (\textbf{I}ntend \textbf{T}o \textbf{P}ackage) usando \texttt{reportbug wnpp}

note: type: enumerate
en: Prepare a source package
pt: Preparar um pacote fonte

note: type: enumerate
en: Find a Debian Developer that will sponsor your package
pt: Encontre um Desenvolvedor Debian que patrocine o seu pacote

note: type: itemize
en: Official status (when you are an experienced package maintainer):
pt: Estado oficial (quando você é um mantenedor de pacotes experiente)

note: type: itemize
en: \textbf{Debian Maintainer (DM):}\\ Permission to upload your own packages\\ See \url{http://wiki.debian.org/DebianMaintainer}
pt: \textbf{Mantenedor Debian (DM):}\\ Permissão para submeter os seus próprios pacotes\\ Veja \url{http://wiki.debian.org/DebianMaintainer}

note: type: itemize
en: \textbf{Debian Developer (DD):}\\ Debian project member; can vote and upload any package
pt: \textbf{Desenvolvedor Debian (DD):}\\ Membro do projecto Debian; pode votar e submeter (upload) qualquer pacote

note: type: frame{#2}
en: Things to check before asking for sponsorship
pt: Coisas a verificar antes de pedir patrocínio

note: type: itemize
en: Debian puts \textbf{a lot of focus on quality}
pt: Debian tem \textbf{muita atenção à qualidade}

note: type: itemize
en: Generally, \textbf{sponsors are hard to find and busy}
pt: Geralmente, os \textbf{patrocinadores são difíceis de encontrar e ocupados}

note: type: itemize
en: Make sure your package is ready before asking for sponsorship
pt: Certifique-se que o seu pacote está pronto antes de pedir patrocinador

note: type: itemize
en: Things to check:
pt: Coisas a verificar:

note: type: itemize
en: Avoid missing build-dependencies: make sure that your package build fine in a clean \textsl{sid} \textsl{chroot}
pt: Evite dependências de compilação em falta: certifique-se que o seu pacote compila bem num \textsl{chroot} de \textsl{sid} limpo

note: type: itemize
en: Using \texttt{pbuilder} is recommended
pt: É recomendado usar o \texttt{pbuilder}

note: type: itemize
en: Run \texttt{lintian -EviIL +pedantic} on your package
pt: Corra \texttt{lintian -EviIL +pedantic} no seu pacote

note: type: itemize
en: Errors must be fixed, all other problems should be fixed
pt: Os erros têm de ser corrigidos, todos os outros problemas devem ser corrigidos

note: type: itemize
en: Do extensive testing of your package, of course
pt: E claro, faça testes intensivos do seu pacote

note: type: itemize
en: In doubt, ask for help
pt: Em dúvidas, peça ajuda

note: type: frame{#2}
en: Where to find help?
pt: Onde encontrar ajuda?

note: type: frame
en: Help you will need:
pt: Ajuda que irá precisar:

note: type: itemize
en: Advice and answers to your questions, code reviews
pt: Conselhos e respostas para as suas questões, revisões de código

note: type: itemize
en: Sponsorship for your uploads, once your package is ready
pt: Patrocinador para os seus envios (uploads), assim que o seu pacote esteja pronto

note: type: frame
en: You can get help from:
pt: Você pode obter ajuda de:

note: type: textbf{#1}
en: Other members of a packaging team
pt: Outros membros de uma equipa de empacotamento

note: type: itemize
en: List of teams: \url{http://wiki.debian.org/Teams}
pt: Lista de equipas: \url{http://wiki.debian.org/Teams}

note: type: itemize
en: The \textbf{Debian Mentors group} (if your package does not fit in a team)
pt: O \textbf{Debian Mentors group} (se o seu pacote não encaixar numa equipa)

note: type: itemize
en: Mailing list: \url{debian-mentors@lists.debian.org}\\ {\small (also a good way to learn by accident)}
pt: Lista de mail: \url{debian-mentors@lists.debian.org}\\ {\small (também uma boa maneira de aprender por acaso)}

note: type: itemize
en: IRC: \texttt{\#debian-mentors} on \texttt{irc.debian.org}
pt: IRC: \texttt{\#debian-mentors} em \texttt{irc.debian.org}

note: type: itemize
en: Documentation: \url{http://mentors.debian.net/intro-maintainers}
pt: Documentação: \url{http://mentors.debian.net/intro-maintainers}

note: type: itemize
en: \textbf{Localized mailing lists} (get help in your language)
pt: \textbf{Listas de mail localizadas} (obtenha ajuda na sua linguagem)

note: type: itemize
en: Full list: \url{https://lists.debian.org/devel.html}
pt: Lista completa: \url{https://lists.debian.org/devel.html}

note: type: itemize
en: Or users lists: \url{https://lists.debian.org/users.html}
pt: Ou listas de utilizadores: \url{https://lists.debian.org/users.html}

note: type: frame{#2}
en: More documentation
pt: Mais documentação

note: type: itemize
en: Debian Developers' Corner\\ \url{http://www.debian.org/devel/}\\ {\small Links to many resources about Debian development}
pt: O Cantinho dos Desenvolvedores de Debian\\ \url{http://www.debian.org/devel/}\\ {\small Links para muitos recursos acerca do desenvolvimento de Debian}

note: type: itemize
en: Debian New Maintainers' Guide\\ \url{http://www.debian.org/doc/maint-guide/}\\ {\small An introduction to Debian packaging, but could use an update}
pt: Guia dos Novos Mantenedores de Debian\\ \url{http://www.debian.org/doc/maint-guide/}\\ {\small Uma introdução ao empacotamento de Debian, mas que precisa de uma actualização}

note: type: itemize
en: Debian Developer's Reference\\ \url{http://www.debian.org/doc/developers-reference/}\\ {\small Mostly about Debian procedures, but also some best packaging practices (part 6)}
pt: Referência dos Desenvolvedores de Debian\\ \url{http://www.debian.org/doc/developers-reference/}\\ {\small Maioritariamente acerca dos procedimentos de Debian, mas também algumas das melhores práticas de empacotamento (parte 6)}

note: type: itemize
en: Debian Policy\\ \url{http://www.debian.org/doc/debian-policy/}\\
pt: Politica de Debian\\ \url{http://www.debian.org/doc/debian-policy/}\\

note: type: itemize
en: {\small \begin{itemize} \item \small All the requirements that every package must satisfy \item \small Specific policies for Perl, Java, Python, \ldots \end{itemize}}
pt: {\small \begin{itemize} \item \small Todos os requerimentos que cada pacote deve satisfazer \item \small Politicas específicas para Perl, Java, Python, \ldots \end{itemize}}

note: type: itemize
en: Ubuntu Packaging Guide\\ \url{http://developer.ubuntu.com/resources/tools/packaging/}
pt: Guia de Empacotamento de Ubuntu\\ \url{http://developer.ubuntu.com/resources/tools/packaging/}

note: type: frame{#2}
en: Debian dashboards for maintainers
pt: Bancadas Debian para mantenedores

note: type: itemize
en: \textbf{Source package centric}: Package Tracking System (PTS)\\ \url{http://packages.qa.debian.org/dpkg}
pt: \textbf{Centrado no pacote fonte}: Sistema de Acompanhamento de Pacotes (PTS)\\ \url{http://packages.qa.debian.org/dpkg}

note: type: itemize
en: \textbf{Maintainer/team centric}: Developer's Packages Overview (DDPO)\\ \url{http://qa.debian.org/developer.php?login=pkg-ruby-extras-maintainers@lists.alioth.debian.org}
pt: \textbf{Centrado em mantenedor/equipa}: Visão Geral de Pacotes de Desenvolvedores (DDPO)\\ \url{http://qa.debian.org/developer.php?login=pkg-ruby-extras-maintainers@lists.alioth.debian.org}

note: type: itemize
en: \textbf{TODO-list oriented}: Debian Maintainer Dashboard (DMD)\\ \url{http://udd.debian.org/dmd.cgi}
pt: \textbf{Lista-A-FAZER orientada}: Bancada do Mantenedor Debian (DMD)\\ \url{http://udd.debian.org/dmd.cgi}

note: type: frame{#2}
en: Using the Debian Bug Tracking System (BTS)
pt: Usando o Debian Bug Tracking System (BTS)

note: type: itemize
en: A quite unique way to manage bugs
pt: Uma maneira muito única de gerir os bugs

note: type: itemize
en: Web interface to view bugs
pt: Interface web para ver os bugs

note: type: itemize
en: Email interface to make changes to bugs
pt: Interface de email para fazer alterações aos bugs

note: type: itemize
en: Adding information to bugs:
pt: Adicionar informação aos bugs:

note: type: itemize
en: Write to \texttt{123456@bugs.debian.org} (does not include the submitter, you need to add \texttt{123456-submitter@bugs.debian.org})
pt: Escreva para \texttt{123456@bugs.debian.org} (não inclui a pessoa que submeteu, você precisa adicionar \texttt{123456-submitter@bugs.debian.org})

note: type: itemize
en: Changing bug status:
pt: Alterar o estado do bug:

note: type: itemize
en: Send commands to \texttt{control@bugs.debian.org}
pt: Envie comandos para \texttt{control@bugs.debian.org}

note: type: itemize
en: Command-line interface: \texttt{bts} command in \texttt{devscripts}
pt: Interface de linha de comandos: comando \texttt{bts} em \texttt{devscripts}

note: type: itemize
en: Documentation: \url{http://www.debian.org/Bugs/server-control}
pt: Documentação: \url{http://www.debian.org/Bugs/server-control}

note: type: itemize
en: Reporting bugs: use \texttt{reportbug}
pt: Reportar bugs: use \texttt{reportbug}

note: type: itemize
en: Normally used with a local mail server: install \texttt{ssmtp} or \texttt{nullmailer}
pt: Normalmente usado com um servidor de mail local: instale \texttt{ssmtp} ou \texttt{nullmailer}

note: type: itemize
en: Or use \texttt{reportbug -\@-template}, then send (manually) to \texttt{submit@bugs.debian.org}
pt: Ou use \texttt{reportbug -\@-template}, depois envie (manualmente) para \texttt{submit@bugs.debian.org}

note: type: frame{#2}
en: Using the BTS: examples
pt: Usando o BTS: exemplos

note: type: itemize
en: Sending an email to the bug and the submitter:\\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822\#10}
pt: Enviar um email para o bug e para quem o submeteu:\\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822\#10}

note: type: itemize
en: Tagging and changing the severity:\\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680227\#10}
pt: Etiquetar e alterar a severidade:\\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680227\#10}

note: type: itemize
en: Reassigning, changing the severity, retitling \ldots: \\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822\#93}
pt: Re-atribuir, alterar a severidade, mudar o título \ldots: \\ \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822\#93}

note: type: itemize
en: \texttt{notfound}, \texttt{found}, \texttt{notfixed}, \texttt{fixed} are for \textbf{version-tracking} \\ See \url{https://wiki.debian.org/HowtoUseBTS\#Version\_tracking}
pt: \texttt{notfound}, \texttt{found}, \texttt{notfixed}, \texttt{fixed} são para \textbf{version-tracking} \\ Veja \url{https://wiki.debian.org/HowtoUseBTS\#Version\_tracking}

note: type: itemize
en: Using usertags: \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=42;bug=642267}\\ See \url{https://wiki.debian.org/bugs.debian.org/usertags}
pt: Usando usertags: \url{http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=42;bug=642267}\\ Veja \url{https://wiki.debian.org/bugs.debian.org/usertags}

note: type: itemize
en: BTS Documentation:
pt: Documentação de BTS:

note: type: frame{#2}
en: More interested in Ubuntu?
pt: Mais interessado em Ubuntu?

note: type: itemize
en: Ubuntu mainly manages the divergence with Debian
pt: Ubuntu maioritariamente gere a divergência com Debian

note: type: itemize
en: No real focus on specific packages\\ Instead, collaboration with Debian teams
pt: Nenhuma focagem real em pacotes específicos\\ Em vez disso, colaboração com as equipas de Debian

note: type: itemize
en: Usually recommend uploading new packages to Debian first\\ \url{https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages}
pt: Normalmente é recomendado enviar primeiro os novos pacote para Debian\\ \url{https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages}

note: type: itemize
en: Possibly a better plan:
pt: Possivelmente um plano melhor:

note: type: itemize
en: Get involved in a Debian team and act as a bridge with Ubuntu
pt: Envolva-se numa equipa de Debian e actue como uma ponte com Ubuntu

note: type: itemize
en: Help reduce divergence, triage bugs in Launchpad
pt: Ajuda reduz divergência, triagem de bugs no Launchpad

note: type: itemize
en: Many Debian tools can help:
pt: Muitas ferramentas de Debian podem ajudar:

note: type: itemize
en: Ubuntu column on the Developer's packages overview
pt: Coluna do Ubuntu na visão geral de pacotes de Desenvolvedores

note: type: itemize
en: Ubuntu box on the Package Tracking System
pt: Caixa do Ubuntu no Sistema de Acompanhamento de Pacotes

note: type: itemize
en: Receive launchpad bugmail via the PTS
pt: Recebe bugmail do launchpad via PTS

note: type: frame{#2}
en: Conclusions
pt: Conclusões

note: type: itemize
en: You now have a full overview of Debian packaging
pt: Agora você uma visão geral completa do empacotamento de Debian

note: type: itemize
en: But you will need to read more documentation
pt: Mas você irá precisar de ler mais documentação

note: type: itemize
en: Best practices have evolved over the years
pt: As melhores práticas evoluíram com os anos

note: type: itemize
en: If not sure, use the \textbf{dh} packaging helper, and the \textbf{3.0 (quilt)} format
pt: Em dúvida, use o ajudante de empacotamento \textbf{dh}, e o formato \textbf{3.0 (quilt)}

note: type: itemize
en: Things that were not covered in this tutorial:
pt: Coisas que não foram cobertas por este manual:

note: type: itemize
en: UCF -- manage user changes to configuration files when upgrading
pt: UCF -- gere as alterações do utilizador nos ficheiros de configuração quando actualiza

note: type: itemize
en: dpkg triggers -- group similar maintainer scripts actions together
pt: dpkg triggers -- agrupa e junta acções semelhantes de scripts de mantenedor

note: type: itemize
en: Debian development organization:
pt: Organização de desenvolvimento de Debian:

note: type: itemize
en: Debian Blends -- subsets of Debian targeting specific groups
pt: Debian Blends -- subconjuntos de Debian que apontam a grupos específicos

note: type: frame{#2}
en: Legal stuff
pt: Matérias legais

note: type: frame{#2}
en: Contribute to this tutorial
pt: Contribua para este manual

note: type: itemize
en: Contribute:
pt: Contribuir:

note: type: itemize
en: {\small Open bugs: \url{bugs.debian.org/src:packaging-tutorial}}
pt: {\small Bugs abertos: \url{bugs.debian.org/src:packaging-tutorial}}

note: type: itemize
en: Provide feedback:
pt: Forneça comentários de retorno (Feedback):

note: type: itemize
en: {\small What should be added to this tutorial?}
pt: {\small o que deve ser adicionado a este manual?}

note: type: itemize
en: {\small What should be improved?}
pt: {\small O que deve ser melhorado?}

note: type: frame{#2}
en: Practical session 2: packaging GNUjump
pt: Sessão prática 2: empacotar o GNUjump

note: type: enumerate
en: Download GNUjump 1.0.8 from \url{http://ftp.gnu.org/gnu/gnujump/gnujump-1.0.8.tar.gz}
pt: Faça o download de GNUjump 1.0.8 de \url{http://ftp.gnu.org/gnu/gnujump/gnujump-1.0.8.tar.gz}

note: type: enumerate
en: Create a Debian package for it
pt: Crie um pacote Debian para ele

note: type: itemize
en: Install build-dependencies so that you can build the package
pt: Instale as dependências de compilação para que possa compilar o pacote

note: type: itemize
en: Get a basic working package
pt: Obtenha um pacote funcional básico

note: type: itemize
en: Finish filling \texttt{debian/control} and other files
pt: Acabe de preencher \texttt{debian/control} e outros ficheiros

note: type: enumerate
en: Enjoy
pt: Aprecie

note: type: frame{#2}
en: Practical session 3: packaging a Java library
pt: Sessão prática 3: empacotando uma biblioteca Java

note: type: enumerate
en: Take a quick look at some documentation about Java packaging:\\
pt: Faça uma leitura rápida a alguma documentação sobre empacotamento de Java:\\

note: type: itemize
en: Paper and slides from a Debconf10 talk about javahelper:\\ {\footnotesize \url{http://pkg-java.alioth.debian.org/docs/debconf10-javahelper-paper.pdf}\\ \url{http://pkg-java.alioth.debian.org/docs/debconf10-javahelper-slides.pdf}}
pt: Papel e slides de uma reunião Debconf10 acerca de javahelper:\\ {\footnotesize \url{http://pkg-java.alioth.debian.org/docs/debconf10-javahelper-paper.pdf}\\ \url{http://pkg-java.alioth.debian.org/docs/debconf10-javahelper-slides.pdf}}

note: type: enumerate
en: Download IRClib from \url{http://moepii.sourceforge.net/}
pt: Descarregue o IRClib de \url{http://moepii.sourceforge.net/}

note: type: enumerate
en: Package it
pt: Empacote-o

note: type: frame{#2}
en: Practical session 4: packaging a Ruby gem
pt: Sessão prática 4: empacotar uma gema Ruby

note: type: enumerate
en: Take a quick look at some documentation about Ruby packaging:\\
pt: Dê uma leitura rápida a alguma documentação acerca de empacotamento de Ruby:\\

note: type: itemize
en: \texttt{gem2deb(1)}, \texttt{dh\_ruby(1)} (in the \texttt{gem2deb} package)
pt: \texttt{gem2deb(1)}, \texttt{dh\_ruby(1)} (no pacote \texttt{gem2deb})

note: type: enumerate
en: Create a basic Debian source package from the \texttt{net-ssh} gem:\\ \texttt{gem2deb net-ssh}
pt: Crie um pacote fonte Debian básico a partir da gema \texttt{net-ssh}:\\ \texttt{gem2deb net-ssh}

note: type: enumerate
en: Improve it so that it becomes a proper Debian package
pt: Melhore-o para que se torne num pacote Debian apropriado

note: type: frame{#2}
en: Practical session 5: packaging a Perl module
pt: Sessão prática 5: empacotar um módulo Perl

note: type: enumerate
en: Take a quick look at some documentation about Perl packaging:\\
pt: Faça uma leitura rápida a alguma documentação sobre empacotamento de Perl:\\

note: type: enumerate
en: Create a basic Debian source package from the \texttt{Acme} CPAN distribution:\\ \verb|dh-make-perl --cpan Acme|
pt: Crie um pacote fonte Debian básico a partir da \texttt{Acme} distribuição CPAN:\\ \verb|dh-make-perl --cpan Acme|

note: type: section{#2}
en: Answers to practical sessions
pt: Respostas às sessões práticas

note: type: center
en: \LARGE Answers to
pt: \LARGE Respostas para

note: type: center
en: [0.5em] practical sessions
pt: [0.5em] sessões práticas

note: type: frame{#2}
en: Fetching the source
pt: Obtendo a fonte

note: type: enumerate
en: Go to \url{http://ftp.debian.org/debian/pool/main/g/grep/} and download version 2.6.3-3 of the package
pt: Vá a \url{http://ftp.debian.org/debian/pool/main/g/grep/} e descarregue a versão 2.6.3-3 do pacote

note: type: itemize
en: Use dget to download the \texttt{.dsc} file:\\ {\small \texttt{dget http://cdn.debian.net/debian/pool/main/g/grep/grep\_2.6.3-3.dsc}}
pt: Use o dget para descarregar o ficheiro \texttt{.dsc}:\\ {\small \texttt{dget http://cdn.debian.net/debian/pool/main/g/grep/grep\_2.6.3-3.dsc}}

note: type: itemize
en: According to \url{http://packages.qa.debian.org/grep}, \texttt{grep} version 2.6.3-3 is currently in \textsl{stable} (\textsl{squeeze}). If you have \texttt{deb-src} lines for \textsl{squeeze} in your \texttt{/etc/apt/sources.list}, you can use:\\ \texttt{apt-get source grep=2.6.3-3}\\ or \texttt{apt-get source grep/stable}\\ or, if you feel lucky: \texttt{apt-get source grep}
pt: De acordo com \url{http://packages.qa.debian.org/grep}, \texttt{grep} a versão 2.6.3-3 está actualmente em \textsl{stable} (\textsl{squeeze}). Se você tem linhas \texttt{deb-src} para \textsl{squeeze} no seu \texttt{/etc/apt/sources.list}, pode usar:\\ \texttt{apt-get source grep=2.6.3-3}\\ ou \texttt{apt-get source grep/stable}\\ ou, se estiver com sorte: \texttt{apt-get source grep}

note: type: itemize
en: The \texttt{grep} source package is composed of three files:
pt: O pacote fonte do \texttt{grep} é composto por três ficheiros:

note: type: itemize
en: This is typical of the "3.0 (quilt)" format.
pt: Isto é típico do formato "3.0 (quilt)".

note: type: itemize
en: If needed, uncompress the source with\\ \texttt{dpkg-source -x grep\_2.6.3-3.dsc}
pt: Se necessário, descomprima a fonte com\\ \texttt{dpkg-source -x grep\_2.6.3-3.dsc}

note: type: frame{#2}
en: Looking around and building the package
pt: Observando e compilando o pacote

note: type: itemize
en: According to \texttt{debian/control}, this package only generates one binary package, named \texttt{grep}.
pt: De acordo com \texttt{debian/control}, este pacote apenas gera um pacote binário, chamado \texttt{grep}.

note: type: itemize
en: According to \texttt{debian/rules}, this package is typical of \textsl{classic} debhelper packaging, without using \textsl{CDBS} or \textsl{dh}. One can see the various calls to \texttt{dh\_*} commands in \texttt{debian/rules}.
pt: De acordo com \texttt{debian/rules}, este pacote é típico de empacotamento \textsl{classic} debhelper, sem usar \textsl{CDBS} ou \textsl{dh}. Pode-se ver as várias chamadas a comandos \texttt{dh\_*} em \texttt{debian/rules}.

note: type: itemize
en: Use \texttt{apt-get build-dep grep} to fetch the build-dependencies
pt: Use \texttt{apt-get build-dep grep} para obter as dependências de compilação

note: type: itemize
en: Then \texttt{debuild} or \texttt{dpkg-buildpackage -us -uc} (Takes about 1 min)
pt: Depois \texttt{debuild} ou \texttt{dpkg-buildpackage -us -uc} (Demora cerca de 1 minuto)

note: type: frame{#2}
en: Editing the changelog
pt: Editando o registo de alterações (changelog)

note: type: itemize
en: \texttt{debian/changelog} is a text file. You could edit it and add a new entry manually.
pt: \texttt{debian/changelog} é um ficheiro de texto Você pode editá-lo e adicionar uma nova entrada manualmente.

note: type: itemize
en: Or you can use \texttt{dch -i}, which will add an entry and open the editor
pt: Ou você pode usar \texttt{dch -i}, que irá adicionar uma entrada e abrir o editor

note: type: itemize
en: The name and email can be defined using the \texttt{DEBFULLNAME} and \texttt{DEBEMAIL} environment variables
pt: O nome e email podem ser definidos usando as variáveis de ambiente \texttt{DEBFULLNAME} e \texttt{DEBEMAIL}

note: type: itemize
en: After that, rebuild the package: a new version of the package is built
pt: Após isso, recompile o pacote: é compilada uma nova versão do pacote

note: type: itemize
en: Package versioning is detailed in section 5.6.12 of the Debian policy\\ \url{http://www.debian.org/doc/debian-policy/ch-controlfields}
pt: O "versionamento" do pacote está detalhado na secção 5.6.12 da politica Debian\\ \url{http://www.debian.org/doc/debian-policy/ch-controlfields}

note: type: frame{#2}
en: Disabling Perl regexp support and rebuilding
pt: Desactivando suporte regexp de Perl e recompilando

note: type: itemize
en: Check with \texttt{./configure -{}-help}: the option to disable Perl regexp is \texttt{-{}-disable-perl-regexp}
pt: Verifique com \texttt{./configure -{}-help}: a opção para desactivar Perl regexp é \texttt{-{}-disable-perl-regexp}

note: type: itemize
en: Edit \texttt{debian/rules} and find the \texttt{./configure} line
pt: Edite \texttt{debian/rules} e encontre a linha \texttt{./configure}

note: type: itemize
en: Add \texttt{-{}-disable-perl-regexp}
pt: Adicione \texttt{-{}-disable-perl-regexp}

note: type: itemize
en: Rebuild with \texttt{debuild} or \texttt{dpkg-buildpackage -us -uc}
pt: Recompile com \texttt{debuild} ou \texttt{dpkg-buildpackage -us -uc}

note: type: frame{#2}
en: Comparing and testing the packages
pt: Comparar e testar os pacotes

note: type: itemize
en: Compare the binary packages: \texttt{debdiff ../*changes}
pt: Compare os pacotes binários: \texttt{debdiff ../*changes}

note: type: itemize
en: Compare the source packages: \texttt{debdiff ../*dsc}
pt: Compare os pacotes fonte: \texttt{debdiff ../*dsc}

note: type: itemize
en: Install the newly built package: \texttt{debi}\\ Or \texttt{dpkg -i ../grep\_<TAB>}
pt: Instale o pacote recentemente compilado: \texttt{debi}\\ Ou \texttt{dpkg -i ../grep\_<TAB>}

note: type: itemize
en: \texttt{grep -P foo} no longer works!
pt: \texttt{grep -P foo} não funciona mais!

note: type: frame
en: Or not: reinstall the previous version of the package:
pt: Ou não: reinstale a versão anterior do pacote:

note: type: frame{#2}
en: Step by step\ldots
pt: Passo a passo\ldots

note: type: itemize
en: Type of package: single binary (for now)
pt: Tipo de pacote: binário simples (por agora)

note: type: frame{#2}
en: Step by step\ldots (2)
pt: Passo a passo\ldots (2)

note: type: itemize
en: Look at \texttt{debian/changelog}, \texttt{debian/rules}, \texttt{debian/control}\\ (auto-filled by \textbf{dh\_make})
pt: Observe \texttt{debian/changelog}, \texttt{debian/rules}, \texttt{debian/control}\\ (auto-preenchido por \textbf{dh\_make})

note: type: itemize
en: In \texttt{debian/control}:\\ \texttt{Build-Depends: debhelper (>= 7.0.50~), autotools-dev}\\ Lists the \textsl{build-dependencies} = packages needed to build the package
pt: In \texttt{debian/control}:\\ \texttt{Build-Depends: debhelper (>= 7.0.50~), autotools-dev}\\ Lista as \textsl{build-dependencies} = pacotes necessários para compilar o pacote

note: type: itemize
en: Try to build the package as-is (thanks to \textbf{dh} magic)
pt: Tenta compilar o pacote como está (graças à magia do \textbf{dh})

note: type: itemize
en: And add build-dependencies, until it builds
pt: E adicione as dependências de compilação, até que compile

note: type: itemize
en: Hint: use \texttt{apt-cache search} and \texttt{apt-file} to find the packages
pt: Dica: use \texttt{apt-cache search} e \texttt{apt-file} para encontrar os pacotes

note: type: itemize
en: Example:
pt: Exemplo:

note: type: itemize
en: $\rightarrow$ Add \textbf{libsdl1.2-dev} to Build-Depends and install it.
pt: $\rightarrow$ Adicione \textbf{libsdl1.2-dev} às Build-Depends e instale-o.

note: type: itemize
en: Better: use \textbf{pbuilder} to build in a clean environment
pt: Melhor: use \textbf{pbuilder} para compilar num ambiente limpo

note: type: frame{#2}
en: Step by step\ldots (3)
pt: Passo a passo\ldots (3)

note: type: itemize
en: After installing \texttt{libsdl1.2-dev, libsdl-image1.2-dev, libsdl-mixer1.2-dev}, the package builds fine.
pt: Após instalar \texttt{libsdl1.2-dev, libsdl-image1.2-dev, libsdl-mixer1.2-dev}, o pacote compila bem.

note: type: itemize
en: Use \texttt{debc} to list the content of the generated package.
pt: Use \texttt{debc} para listar o conteúdo do pacote gerado.

note: type: itemize
en: Use \texttt{debi} to install it and test it.
pt: Use \texttt{debi} para o instalar e testar.

note: type: itemize
en: Test the package with \texttt{lintian}
pt: Teste o pacote com \texttt{lintian}

note: type: itemize
en: While not a strict requirement, it is recommended that packages uploaded to Debian are \textsl{lintian-clean}
pt: Embora não seja um requerimento estrito, é recomendado que os pacotes enviados para Debian sejam \textsl{lintian-clean} (passaram o teste do lintian)

note: type: itemize
en: More problems can be listed using \texttt{lintian -EviIL +pedantic}
pt: Mais problemas podem ser listados usando \texttt{lintian -EviIL +pedantic}

note: type: itemize
en: Some hints:
pt: Algumas dicas:

note: type: itemize
en: Remove the files that you don't need in \texttt{debian/}
pt: Remova os ficheiros que você não precisa em \texttt{debian/}

note: type: itemize
en: Fill in \texttt{debian/control}
pt: Preencha \texttt{debian/control}

note: type: itemize
en: Install the executable to \texttt{/usr/games} by overriding \texttt{dh\_auto\_configure}
pt: Instale o executável para \texttt{/usr/games} ao sobrepor \texttt{dh\_auto\_configure}

note: type: itemize
en: Use \textsl{hardening} compiler flags to increase security.\\ See \url{http://wiki.debian.org/Hardening}
pt: Use flags de compilador \textsl{hardening} para aumentar a segurança.\\ Veja \url{http://wiki.debian.org/Hardening}

note: type: frame{#2}
en: Step by step\ldots (4)
pt: Passo a passo\ldots (4)

note: type: itemize
en: Compare your package with the one already packaged in Debian:
pt: Compare o seu pacote com aquele já empacotado em Debian:

note: type: itemize
en: It splits the data files to a second package, that is the same across all architectures ($\rightarrow$ saves space in the Debian archive)
pt: Divide os ficheiros de dados para um segundo pacote, que é o mesmo para todas as arquitecturas ($\rightarrow$ poupa espaço no arquivo de Debian)

note: type: itemize
en: It installs a .desktop file (for the GNOME/KDE menus) and also integrates into the Debian menu
pt: Instala um ficheiro .desktop (para os menus de GNOME/KDE) e também o integra no menu Debian

note: type: itemize
en: It fixes a few minor problems using patches
pt: Corrige alguns problemas menores usando patches

note: type: itemize
en: Create a basic source package: \texttt{jh\_makepkg}
pt: Crie um pacote fonte básico: \texttt{jh\_makepkg}

note: type: itemize
en: Library
pt: Biblioteca

note: type: itemize
en: None
pt: Nenhum

note: type: itemize
en: Default Free compiler/runtime
pt: Compilador/executor em tempo real Livre Predefinido

note: type: itemize
en: Look at and fix \texttt{debian/*}
pt: Observe e corrija \texttt{debian/*}

note: type: itemize
en: \texttt{dpkg-buildpackage -us -uc} or \texttt{debuild}
pt: \texttt{dpkg-buildpackage -us -uc} ou \texttt{debuild}

note: type: itemize
en: Compare your result with the \texttt{libirclib-java} source package
pt: Compare o seu resultado com o pacote fonte \texttt{libirclib-java}

note: type: itemize
en: Downloads the gem from rubygems.org
pt: Descarrega a gema de rubygems.org

note: type: itemize
en: Creates a suitable .orig.tar.gz archive, and untar it
pt: Cria um arquivo .orig.tar.gz apropriado e descompacta-o

note: type: itemize
en: Initializes a Debian source package based on the gem's metadata
pt: Inicializa um pacote fonte Debian baseado nos meta-dados da gema

note: type: itemize
en: Named \texttt{ruby-\textsl{gemname}}
pt: Chamado \texttt{ruby-\textsl{gemname}}

note: type: itemize
en: Tries to build the Debian binary package (this might fail)
pt: Tenta compilar o pacote binário Debian (isto pode falhar)

note: type: frame
en: \texttt{dh\_ruby} (included in \textsl{gem2deb}) does the Ruby-specific tasks:
pt: \texttt{dh\_ruby} (incluído em \textsl{gem2deb}) faz as tarefas específicas de Ruby:

note: type: itemize
en: Build C extensions for each Ruby version
pt: Compila extensões de C para cada versão de Ruby

note: type: itemize
en: Copy files to their destination directory
pt: Copie os ficheiros para o sue directório de destino

note: type: itemize
en: Update shebangs in executable scripts
pt: Actualiza shebangs nos scripts executáveis

note: type: itemize
en: Run tests defined in \texttt{debian/ruby-tests.rb} or \texttt{debian/ruby-test-files.yaml}, as well as various other checks
pt: Corra os testes definido em \texttt{debian/ruby-tests.rb} ou \texttt{debian/ruby-test-files.yaml}, assim como várias outras verificações

note: type: frame
en: Improve the generated package:
pt: Melhore o pacote gerado

note: Translators: This context is very sensitive to line length. If you hit errors building the package around this line in your translated version see, e.g. in the Spanish or German version for versions with explicit line breaks for the translation type: itemize
en: Run \texttt{debclean} to clean the source tree. Look at \texttt{debian/}.
pt: Corra \texttt{debclean} para limpar a árvore fonte. Veja em \texttt{debian/}.

note: type: itemize
en: \texttt{changelog} and \texttt{compat} should be correct
pt: \texttt{changelog} e \texttt{compat} devem estar correctos

note: type: itemize
en: Edit \texttt{debian/control}: uncomment \texttt{Homepage}, improve \texttt{Description}
pt: Edite \texttt{debian/control}: descomente \texttt{Homepage}, melhore \texttt{Description}

note: type: itemize
en: Write a proper \texttt{copyright} file based on the upstream files
pt: Escreva um ficheiro \texttt{copyright} apropriado com base nos ficheiros do autor

note: type: itemize
en: \texttt{ruby-net-ssh.docs}: install \texttt{README.rdoc}
pt: \texttt{ruby-net-ssh.docs}: instale \texttt{README.rdoc}

note: type: itemize
en: \texttt{ruby-tests.rb}: run the tests. In that case, it is enough to do:\\ \verb+$: << 'test' << 'lib' << '.'+\\ \verb+require 'test/test_all.rb'+
pt: \texttt{ruby-tests.rb}: corre os testes. Neste caso é suficiente fazer:\\ \verb+$: << 'test' << 'lib' << '.'+\\ \verb+require 'test/test_all.rb'+

note: type: frame
en: Build the package.  It fails to build. There are two problems:
pt: Compile o pacote.  Ele falha a compilar.  Existem dois problemas:

note: type: itemize
en: You need to disable the \texttt{gem} call in the test suite.\\ In \texttt{test/common.rb}, remove the \verb+gem "test-unit"+ line:
pt: Você precisa de desactiva a chamada \texttt{gem} na suite de teste.\\ Em \texttt{test/common.rb}, remova a linha \verb+gem "test-unit"+:

note: type: itemize
en: Edit \texttt{test/common.rb}, remove the \texttt{gem} line. Exit the sub-shell
pt: Edite \texttt{test/common.rb}, remova a linha \texttt{gem}. Saia da sub-shell

note: type: itemize
en: Describe the changes in \texttt{debian/changelog}
pt: Descreva as alterações em \texttt{debian/changelog}

note: type: itemize
en: Document the patch in \texttt{debian/patches/disable-gem.patch}
pt: Documente a patch em \texttt{debian/patches/disable-gem.patch}

note: type: itemize
en: The package lacks a build-dependency on \texttt{ruby-mocha}, which is used by the test suite (you might need to build your package in a clean environment, using \texttt{pbuilder}, to reproduce that problem)
pt: O pacote tem falta de dependência de compilação em \texttt{ruby-mocha}, que é usado pela suite de teste (talvez tenha que compilar o seu pacote num ambiente limpo, usando \texttt{pbuilder}, para reproduzir este problema)

note: type: itemize
en: Add \texttt{ruby-mocha} to the package's \texttt{Build-Depends}
pt: Adicione \texttt{ruby-mocha} às \texttt{Build-Depends} do pacote

note: type: itemize
en: \textsl{gem2deb} copies the dependencies documented in the \textsl{gem} as comments in \texttt{debian/control}, but \textsl{mocha} is not listed as a development dependency by the gem (that's a bug in the gem)
pt: \textsl{gem2deb} copia as dependências documentadas em \textsl{gem} como comentários em \texttt{debian/control}, mas \textsl{mocha} não está listado como uma dependência de desenvolvimento pela gema (é um bug na gema)

note: type: frame
en: Compare your package with the \texttt{ruby-net-ssh} package in the Debian archive
pt: Compare o seu pacote com o pacote \texttt{ruby-net-ssh} no arquivo Debian

note: type: itemize
en: Downloads the tarball from the CPAN
pt: Descarrega o tarball a partir de CPAN

note: type: itemize
en: Creates a suitable .orig.tar.gz archive, and untars it
pt: Cria um arquivo .orig.tar.gz apropriado e descompacta-o

note: type: itemize
en: Initializes a Debian source package based on the distribution's metadata
pt: Inicializa um pacote fonte Debian baseado nos meta-dados da distribuição

note: type: itemize
en: Named \texttt{lib\textsl{distname}-perl}
pt: Chamado \texttt{lib\textsl{distname}-perl}

note: type: itemize
en: \texttt{debian/changelog}, \texttt{debian/compat}, \texttt{debian/libacme-perl.docs}, and \texttt{debian/watch} should be correct
pt: \texttt{debian/changelog}, \texttt{debian/compat}, \texttt{debian/libacme-perl.docs}, e \texttt{debian/watch} devem estar correctos

note: type: itemize
en: Edit \texttt{debian/control}: improve \texttt{Description}, and remove boilerplate at the bottom
pt: Edita \texttt{debian/control}: melhora \texttt{Description}, e remove a "boilerplate" no fundo

note: type: itemize
en: Edit \texttt{debian/copyright}: remove boilerplate paragraph at the top, add years of copyright to the \texttt{Files:\hspace{0.3em}*} stanza
pt: Edita \texttt{debian/copyright}: remove o parágrafo "boilerplate" no topo, adiciona anos e copyright à estrofe de 	exttt{Files:\hspace{0.3em}*}
