# 13. Empacotamento do KDE

O empacotamento dos pacotes KDE no Ubuntu é gerenciado pelos times do Kubuntu e MOTU. Você pode contactar o time do Kubuntu pela lista de email do Kubuntu e pelo canal IRC “#kubuntu-devel” no Freenode. Mais informações sobre o desenvolvimento do Kubuntu na Página wiki do Kubuntu.

Nosso empacotamento segue as práticas do Debian Qt/KDE Team e do Debian KDE Extras Team. A maioria dos nossos pacotes são derivados de empacotamentos desses times do Debian.

## 13.1. Politica de patches

O Kubuntu não adiciona patches aos programas do KDE a menos que venham dos autores do upstream ou submetidos ao upstream com a expectativa de que sejam mesclados logo ou que tenhamos consultado a questão com os autores upstream.

O Kubuntu não altera o nome dos pacotes exceto quando o upstream o requer (como o logo no canto superior esquerdo do menu Kickoff) ou para simplificar (como remover telas de inicialização).

## 13.2. debian/rules

Os pacotes do Debian incluem algumas adições ao uso básico do Debhelper. Elas ficam no pacote “pkg-kde-tools”.

Pacotes que usam o Debhelper 7 devem adicionar a opção “–with=kde”. Isto irá assegurar que os sinalizadores de construção corretos estão sendo usados e adicionar opções como manuseio de stubs do kdeinit e traduções:

    %:
        dh $@ --with=kde

Alguns pacotes KDE mais novos usam o sistema “dhmk”, uma alternativa ao “dh” feito pelo time do Debian Qt/KDE. Você pode ler sobre ele em /usr/share/pkg-kde-tools/qt-kde-team/2/README. Pacotes que o utilizam irão “incluir /usr/share/pkg-kde-tools/qt-kde-team/2/debian-qt-kde.mk” em vez de executar “dh”.

## 13.3. Traduções

Os pacotes do main tem as suas traduções importadas no Launchpad e exportadas do Launchpad para o os pacotes de idioma do Ubuntu.

Então todos os pacotes KDE devem gerar modelos de tradução, incluir ou deixar disponível traduções upstream e manipular traduções de arquivos ”.desktop”.

Para gerar modelos de tradução o pacote precisa incluir um arquivo “Messages.sh”. Reclame ao upstream caso isto não aconteça. Você pode verificar se ele funciona executando “extract-messages.sh” que deve produzir um ou mais arquivos ”.pot” em “po/”. Isto será feito automaticamente durante a construção se você usar a opção “–with=kde” para “dh”.

O irá geralmente colocar a tradução também em arquivos ”.po” no diretório “po/”. Se não, verifique se ela está em pacotes de idiomas upstream separados como os pacotes de idioma KDE SC. Se são pacotes de idioma separados, o Launchpad irá necessitar associá-los manualmente, contate dpm para fazer isto.

Se um pacote é movido de “universe” para “main”, ele precisará ser reenviado antes que as traduções sejam importadas para o Launchpad.

`.desktop` files also need translations. We patch KDELibs to read translations out of `.po` files which are pointed to by a line `X-Ubuntu-Gettext-Domain=` added to `.desktop` files at package build time. A .pot file for each package is be generated at build time and .po files need to be downloaded from upstream and included in the package or in our language packs. The list of .po files to be downloaded from KDE’s repositories is in `/usr/lib/kubuntu-desktop-i18n/desktop-template-list`.

## 13.4. Símbolos de bibliotecas

Símbolos de bibliotecas são rastreados no arquivo ”.symbols” para assegurar que nenhum falte nos próximos lançamentos. O KDE usa bibliotecas C++, que atuam de forma um pouco diferente das bibliotecas C. O Time Qt/KDE do Debian tem scripts para lidar com isto. Consulte Trabalhando com arquivos de símbolos para saber como criar e manter esses arquivos atualizados.