Nota do tradutor: Página de tradução de uma BSP para iniciantes. Em tradução. Original em http://wiki.debian.org/BSP/BeginnersHOWTO

(O que você deve saber para a sua primeira BSP)

Nota: Este é um rascunho, escrito por cara que nunca corrigiu antes um bugs... portanto, adições qualquer, melhorias, etc. são muito bem vindas.

Escolhendo Bugs em Release Candidate

A primeira coisa a você fazer: escolha você mesmo um bug. Se você é novo para uma BSP, pode ser assustador encontrar um bug apropriado para seu nível de conhecimento. Há uma cartilha sobre como escolher um bug RC que deve ajudá-lo. Há lista de bugs RC estão em bugs.debian.org. Mas um lista mais flexível está em bts.turmzimmer.net

Solicitando bugs

Antes de começar a trabalhar no bug, vocẽ deve dizer sua intention na #debian-bugs (em irc.debian.org) e solicitando como

bts claim <bugnumber> <seu@email>

(tque é uma ferramenta de linha de comando que está disponível pelo pacote devscriptse.)

Seu bug será marcado como solicitado em http://bts.turmzimmer.net depois de 15-30 minutos.Adicionalmente, você pode adicionar comentário para seu bug em http://bts.turmzimmer.net/details.php.

Corrigindo bugs

Obtendo o fonte

To ensure that you get the latest source for the package check http://incoming.debian.org and http://packages.qa.debian.org. Go to the directory where you want to edit the source and get all the required files with

dget -x [url to the dsc file]

(dget is in the devscripts package). Alternatively, you can use

apt-get source <source_package>

if you have an unstable deb-src line in /etc/apt/sources.list

Antes de codificar

No diretório do pacote faça dch -i. Isto chama um editor com a atualição do changelog preparada. Primeiro, o novo número de versão deve ser ajustado, de acordo com o seguinte esquema (aplicad para uploads de não mantenedores):

Na primeira linha depois do package version, marque suas mudanças como non-maintainer upload:

  * Non-maintainer upload

Na próxima linha, explique quais mudanças que serão feitas, exemplo (nota do tradutor - faça em inglês os comentários): On the next lines explain what the changes will be, e.g.

  * Fixed this and that (closes: #123456).

Nota: O uploads de um non-maintainer deve conter somente as mudanças mínimas e somente as mudanças relativas ao bugs RC.

Efetivamente corrigndo um bug

Corrija o bug (Como? A resposta está no escopo deste howto).

Construa o novo pacote de código fonte

Baixe o novo pacote de códido fonte, execute, por exemplo, o seguinte:

dpkg-buildpackage -rfakeroot -us -uc -S

(Certifique-se que a nova versao foi incrementada via dch como mencionado anteriomente, ou o pacote fonte original será sobreescrito!)

Construa o novo pacote binário(s)

Rápido e sujo

There is the quick and dirty method (for testing purposes). After installing all build-depends (apt-get build-dep [package]) for the package,

fakeroot debian/rules binary

builds a deb which you can install (but not upload).

Usando pbuilder

The recommended method is to use pbuilder - for several reasons:

If you want more details on pbuilder read the manual. Here we willl just describe what steps are needed to build the package.

You can use the default configuration if you just install the pbuilder and cdebootstrap packages.

First, create a base chroot image with

sudo pbuilder create

This creates /var/cache/pbuilder/base.tgz. As you're downloading a lot of packages, you might want to append --mirror http://192.168.2.248/debian/ or so. If you already have such a base chroot image update it with

sudo pbuilder update

pdebuild (invoked in the package directory) builds the new source package and the binary package(s) in one go. The resulting binary package(s) are found in /var/cache/pbuilder/result/.

Teste o novo pacote(s) binários

Usando pbuilder

To test your newly created packages by installing them into your base chroot image:

sudo pbuilder login --bindmounts /var/cache/pbuilder/result/

and inside the chroot:

dpkg -i /var/cache/pbuilder/result/*.deb

Congratulations, if everything works. Next, upload a patch to the bug tracking system and consider to upload the fixed package.

Subindo patch para o bug tracking system

Create the diff-file with

debdiff old-package.dsc new-package.dsc > new-package.diff

and send it (as attachment) to [bugnumber]@bugs.debian.org together with some (friendly) explanations if necessary.

Tag the bug as "patch available" by running

bts tags [bugnumber] + patch

Subindo pacote corrigido

still missing.