Development/FAQs/General FAQ/pt-br: Difference between revisions

    From KDE TechBase
    (Created page with "Você pode fazê-so diretamente no seu commit. Para isso, adicione à mensagem de commit uma linha como essa:")
    No edit summary
    (45 intermediate revisions by 4 users not shown)
    Line 1: Line 1:
    <languages />
    <languages />
    {{Template:I18n/Language Navigation Bar|Desenvolvimento/FAQs/FAQ geral}}


    ==Eu quero começar uma nova aplicação. O que você recomenda?==
    ==Eu quero começar uma nova aplicação. O que você recomenda?==
    Line 8: Line 7:
    Para ver as áreas que precisam ajuda, veja [http://www.kde.org/jobs/ esta página].
    Para ver as áreas que precisam ajuda, veja [http://www.kde.org/jobs/ esta página].


    Antes de começar uma nova aplicação, é uma boa idéia verificar o [http://www.kde-apps.org/ KDE-Apps.org] em busca de projetos existentes e também perguntar na lista de emails [https://mail.kde.org/mailman/listinfo/kde-devel kde-devel] se alguém já está trabalhando em algo similar.
    Antes de começar uma nova aplicação, é sempre uma boa ideia verificar o [http://www.kde-apps.org/ KDE-Apps.org] e outris serviços de hosting de código aberto como [https://github.com/ GitHub], [https://code.google.com Google Code], e [http://sourceforge.net/ SourceForge] por aplicações existentes e também perguntar na lista de e-mail [https://mail.kde.org/mailman/listinfo/kde-devel kde-devel] se alguém já está trabalhando em algum projeto similar.


    ==Sou um desenvolvedor, como posso contribuir com o KDE?==
    ==Sou um desenvolvedor, como posso contribuir com o KDE?==


    KOffice e KDevelop, apesar de muito aclamados, possuem muito poucos desenvolvedores, então você pode verificar lá. Não é necessário ser um dos principais desevolvedores do KDE para ajudar.
    Calligra e KDevelop, apesar de muito aclamados, possuem muito pouco desenvolvedores, então você pode verificar lá. Não há necessidade de ser um desenvolvedor de espaços de trabalho KDE ou bibliotecas da plataforma KDE para ajudar. Toda a gama de softwares do KDE é muito modular para que você possa melhorar perfeitamente uma área sem saber como outros trabalham.
    O KDE é muito modular, sendo possível melhorar uma área sem conhecer como o sistema completo funciona.


    Você também pode perguntar na lista [https://mail.kde.org/mailman/listinfo/kde-devel kde-devel] por alguém precisando ajuda com algum aplicativo.
    Você também pode perguntar na lista [https://mail.kde.org/mailman/listinfo/kde-devel kde-devel] por alguém precisando ajuda com algum aplicativo.
    Utilize a última versão do KDE e repare nas coisas necessárias. Um gerador de temas? Um editor de schema para o Konsole? Melhorar um jogo? Sempre há um pequeno recurso faltando. Vá e implemente-o!
    Utilize a última versão do seu software KDE favorito e repare nas coisas que são necessárias. Um gerador de temas? Um editor de schema para o Konsole? Melhorar um jogo? Sempre há um pequeno recurso faltando. Vá e implemente-o!


    Você é familiar ou sente-se atraído por alguma área específica? Verifique se alguma aplicação relacionada pode ser melhorada. Ou escreva uma nova. O KDE precisa de mais aplicações orientadas a não-geeks.
    Você é familiarizado ou sente-se atraído por alguma área específica? Verifique se alguma aplicação relacionada pode ser melhorada. Ou escreva uma nova. O KDE acolhe com alegria mais aplicações orientadas a não-geeks.


    ==Eu não sou desenvolvedor, como posso ajudar?==
    ==Eu não sou desenvolvedor, como posso ajudar?==
    Line 26: Line 24:
    ==Onde encontro imagens de Konqi, o dragão?==
    ==Onde encontro imagens de Konqi, o dragão?==


    The Konqi for some people SDK is at [ftp://ftp.kde.org/pub/kde/devel/konqi_sdk.tar.bz2 ftp.kde.org/pub/kde/devel/konqi_sdk.tar.bz2]<br />
    O Konqi para algumas pessoas o SDK está em [ftp://ftp.kde.org/pub/kde/devel/konqi_sdk.tar.bz2 ftp.kde.org/pub/kde/devel/konqi_sdk.tar.bz2]<br />
    It was posted to artist.kde.org before that site ceased to be updated.
    Isso foi postado para o artist.kde.org antes do site deixar de ser atualizado.


    Mais imagens estão disponíveis em [http://kde.org/stuff/clipart.php KDE merchandise].
    Mais imagens estão disponíveis em [http://kde.org/stuff/clipart.php KDE merchandise]. Você também pode encontrar algumas imagens e moldes não oficiais do Konqi na página do [http://forum.kde.org/viewforum.php?f=254 Concurso Crie Konqi com Krita] e do jogo [http://sourceforge.net/projects/supertuxkart/ SuperTuxKart].


    ==Qual é o nível exigido para contribuir com o KDE? O que devo aprender? O que devo ler?==
    ==Qual é o nível exigido para contribuir com o KDE? O que devo aprender? O que devo ler?==


    Você deve conhecer C++. Leia os tutoriais do Qt e navegue por sua documentação para familiarizar-se com os recursos disponibilizados. Depois, leia os tutoriais do KDE e navegue por sua arquitetura e documentação. Ler o KDE Book também não machuca. No entanto, não é necessário conhecer toda a sua arquitetura para tornar-se um desenvolvedor KDE. É muito fácil utilizar nossas tecnologias, portanto concentre-se no que você realmente precisa, e o resto você vai aprendendo com o tempo. [http://techbase.kde.org KDE TechBase] e [http://doc.qt.nokia.com/ doc.qt.nokia.com] (também disponível no seu {{path|$QTDIR/doc/html}}) são recursos inestimáveis, use-os.
    Você deve conhecer C++. Leia os [http://qt-project.org/doc/qt-4.8/tutorials.html tutoriais do Qt] e navegue por sua documentação para familiarizar-se com os recursos disponibilizados. Depois, leia os [http://techbase.kde.org/Development/tutoriais do KDE] e navegue por sua arquitetura e documentação. Você também pode ler o [http://flossmanuals.net/kde-guide/ KDE Book], isso não irá machucar. No entanto, não é necessário conhecer toda a arquitetura do KDE para tornar-se um desenvolvedor KDE. É muito fácil utilizar nossas tecnologias, portanto concentre-se no que você realmente precisa e o resto você vai aprendendo com o tempo. [http://techbase.kde.org KDE TechBase] e [http://doc.qt.nokia.com/ doc.qt.nokia.com] (também disponível no seu {{path|$QTDIR/doc/html}}) são recursos inestimáveis, use-os.
    Por fim, navegue pelo código-fonte, olhe os diretórios com exemplos, veja como os outros codificam suas aplicações. Ler e escrever código é a melhor maneira de aprender.
    Por fim, navegue pelo código-fonte, olhe os diretórios com exemplos, veja como os outros codificam suas aplicações. Ler e escrever código é a melhor maneira de aprender.


    ==Como obter o código do KDE dos repositórios git ou SVN?==
    ==Como obter o código do KDE dos repositórios git ou SVN?==


    Veja a seção "Compilando e Executando o KDE a partir do fonte" na página [[Special:myLanguage/Getting_Started|Primeiros passos]]
    Veja a seção [[Special:myLanguage/Getting_Started#Building_and_Running_KDE_Software_From_Source|Compilando e executando o KDE a partir do fonte]]  na página [[Special:myLanguage/Getting_Started|Primeiros passos]].


    ==Posso acessar o fonte do KDE online?==
    ==Posso acessar o fonte do KDE online?==


    Sim
    Sim, existem diveras formas de fazer isso.
    * Navegue para http://websvn.kde.org/ e https://projects.kde.org/
    * Navegue em [http://websvn.kde.org/ websvn.kde.org], [http://quickgit.kde.org/ quickgit.kde.org], e [https://projects.kde.org/ projects.kde.org].
    * Procure dentro do código fonte em http://lxr.kde.org/search
    * Procure dentro do código fonte em [http://lxr.kde.org/search lxr.kde.org/search]
    * Navegue pelos documentos da API gerados pelo código em http://api.kde.org/
    * Navegue pelos documentos da API gerados pelo código em [http://api.kde.org/ api.kde.org]


    ==O que devo colocar dentro do meu .subversion/config?==
    ==O que devo colocar dentro do meu .subversion/config?==


    <syntaxhighlight lang="text">[miscellany]
    Você precisa adicionar à lista de ignorados para o grupo [miscellany] em seu  ~/.subversion/config:
    <syntaxhighlight lang="bash">
    [miscellany]
    global-ignores = *.moc *.moc.cc *.moc.cpp config.log config.status \
    global-ignores = *.moc *.moc.cc *.moc.cpp config.log config.status \
    config.cache *.gmo .deps .libs SunWS_cache *.lo *.la *.rpo *.la.closure \
    config.cache *.gmo .deps .libs SunWS_cache *.lo *.la *.rpo *.la.closure \
    Line 56: Line 56:
    *_meta_unload.C *_meta_unload.cxx index.cache.bz2 .memdump Makefile.rules.in \
    *_meta_unload.C *_meta_unload.cxx index.cache.bz2 .memdump Makefile.rules.in \
    Makefile.calls.in Makefile.rules Makefile.calls autom4te.cache *.kidl \
    Makefile.calls.in Makefile.rules Makefile.calls autom4te.cache *.kidl \
    *.o *.lo *.la #*# .*.rej *.rej *.pyc</syntaxhighlight>
    *.o *.lo *.la #*# .*.rej *.rej *.pyc
    E para fazer o svn diff ignorar espaços em branco, e imprimir os nomes das funções:
    </syntaxhighlight>
    <syntaxhighlight lang="text">[helpers]
     
    diff-cmd = /usr/local/bin/_svndiff</syntaxhighlight>
    E para fazer svn diff ignorar os espaços em branco, e os nomes das funções de impressão:
     
    <syntaxhighlight lang="bash">
    [helpers]
    diff-cmd = /usr/local/bin/_svndiff
    </syntaxhighlight>


    com o seguinte em {{path|/usr/local/bin/_svndiff}}:
    com o seguinte em {{path|/usr/local/bin/_svndiff}}:
    <syntaxhighlight lang="text">#!/bin/sh
     
    exec /usr/bin/diff -b -u -p "$@"</syntaxhighlight>
    <syntaxhighlight lang="bash">
    #!/bin/sh
    exec /usr/bin/diff -b -u -p "$@"
    </syntaxhighlight>


    Não se esqueça de tornar {{path|/usr/local/bin/_svndiff}} executável.
    Não se esqueça de tornar {{path|/usr/local/bin/_svndiff}} executável.
    Line 70: Line 78:


    Existem três requisitos:
    Existem três requisitos:
    * seu aplicativo deve compilar com a última versão do KDE (git master ou SVN trunk).
    * Seu aplicativo deve compilar com a última versão do KDE (git master ou SVN trunk).
    * seu aplicativo deve ser estável.
    * Seu aplicativo deve ser estável.
    * seu aplicativo deve ser mantido. Você provavelmente receberá uma boa quantidade de relatos de problemas e outros pedidos, e as pessoas esperam que você conserte os problemas e implemente os pedidos que façam sentido.
    * Seu aplicativo deve ser mantido. Você provavelmente receberá uma boa quantidade de relatos de problemas e outros pedidos, e as pessoas esperam que você conserte os problemas e implemente os pedidos que façam sentido.
    Veja também a próxima questão.
    Veja também a próxima questão.


    ==É melhor desenvolver dentro ou fora do KDE?==
    ==É melhor desenvolver dentro ou fora do KDE?==


    As core developer Waldo Bastian explains in a copyrighted mail:  
    Como o desenvolvedor principal, Waldo Bastian, explica em um email protegido por copyright: <blockquote>
    <blockquote>
    Ser parte do KDE significa que você tem que trabalhar junto com outros. Essa cooperação traz vantagens mas também traz responsabilidades.
    Being part of KDE means that you have to work together with others. Such cooperation brings along advantages but it also brings along responsibilities.
    <br /><br />


    :Algumas das vantagens são: seu código irá para todas as distros, outras pessoas podem arrumar seus problemas, você ganha traduções e documentação, e também toneladas de relatos de bugs.
    Algumas das vantagens são: seu código irá para todas as distros, outras pessoas podem arrumar seus problemas, você ganha traduções e documentação, e também toneladas de relatos de bugs.
    <br /><br />


    Por outro lado, existem algumas desvantagens e responsabilidades: você terá que comunicar-se com outros desenvolvedores sobre seu trabalho, outras pessoas podem modificar seu código, você deverá respeitar os congelamentos pré-lançamento, você receberá toneladas de relatos de problemas, e as pessoas esperam que você arrume-os também (o que elas andam fumando?), elas esperam que você mantenha o código.
    Por outro lado, existem algumas desvantagens e responsabilidades: você terá que comunicar-se com outros desenvolvedores sobre seu trabalho, outras pessoas podem modificar seu código, você deverá respeitar os congelamentos pré-lançamento, você receberá toneladas de relatos de problemas, e as pessoas esperam que você arrume-os também (o que elas andam fumando?), elas esperam que você mantenha o código.
    <br /><br />


    Você não pode escolher as vantagens e ignorar as responsabilidades que vêm com elas, é um pacote fechado. É tudo ou nada.
    Você não pode escolher as vantagens e ignorar as responsabilidades que vêm com elas, é um pacote fechado. É tudo ou nada.
    <br /><br />


    Em geral é o autor de um software quem decide colocar sua aplicação nos repositórios do KDE. Nós normalmente não colocamos nada no repositório, a menos que o autor assim decida. No outro sentido, se o autor prefere trabalhar sua aplicação em outro lugar, isso também é um direito seu. A menos que haja uma divisão entre o grupo de pessoas trabalhando na aplicação, não faz sentido dividir o desenvolvimento por esse motivo.
    Em geral é o autor de um software quem decide colocar sua aplicação nos repositórios do KDE. Nós normalmente não colocamos nada no repositório, a menos que o autor assim decida. No outro sentido, se o autor prefere trabalhar sua aplicação em outro lugar, isso também é um direito seu. A menos que haja uma divisão entre o grupo de pessoas trabalhando na aplicação, não faz sentido dividir o desenvolvimento por esse motivo.
    <br /><br />


    '''MAS'''... ao colocar seu código sob uma licença de código livre e no repositório do KDE, você dará ao mundo, assim como ao KDE em particular, o direito irrevogável de usar o seu código. E o KDE vai usar desse direito como for conveniente para proteger os interesses do KDE, mesmo que isso possa ir contra os desejos do próprio autor em algum momento.
    '''MAS'''... ao colocar seu código sob uma licença de código livre e no repositório do KDE, você dará ao mundo, assim como ao KDE em particular, o direito irrevogável de usar o seu código. E o KDE vai usar desse direito como for conveniente para proteger os interesses do KDE, mesmo que isso possa ir contra os desejos do próprio autor em algum momento.
    Line 96: Line 108:
    ==Como obtenho permissão de escrita nos repositórios do KDE?==
    ==Como obtenho permissão de escrita nos repositórios do KDE?==


    Leia o artigo completo em [[Special:myLanguage/Contribute/Get_a_Contributor_Account|Contribua > Obtenha uma Conta de Colaborador KDE]].
    Leia o artigo completo em [[Special:myLanguage/Contribute/Get_a_Contributor_Account|Obtenha uma Conta de Colaborador KDE]].


    Vá para [[http://identity.kde.org KDE Identity]] , preencha o formulário e descreva porque você precisa acesso de escrita. Tenha certeza de fornecer seu nome completo e endereço de email.
    Vá para [http://identity.kde.org KDE Identity], preencha o formulário e descreva porque você precisa acesso de escrita. Tenha certeza de fornecer seu nome completo e endereço de email.


    Por favor inclua também o nome da sua conta no bugs.kde.org. Caso não exista crie uma para que ela possa receber as permissões de desenvolvedor. Fechar relatos no bugs.kde.org com palavras-chave nos comentários do commit só funciona se o endereço de email no KDE Identity e na conta do bugs.kde.org baterem. Você pode atualizar o endereço no bugs.kde.org nas configurações de usuário do Bugzilla.
    Por favor, inclua também o nome da sua conta no [https://bugs.kde.org/ bugs.kde.org]. Caso não exista crie uma para que ela possa receber as permissões de desenvolvedor. Fechar relatos no bugs.kde.org com palavras-chave nos comentários do commit só funciona se o endereço de email no KDE Identity e na conta do bugs.kde.org baterem. Você pode atualizar o endereço no bugs.kde.org nas configurações de usuário do Bugzilla.


    O Git requer o uso de uma chave ssh, e novas contas no SVN devem escolher o protocolo svn+ssh. Envia sua chave pública (ex. {{path|~/.ssh/id_dsa.pub}})
    O Git requer o uso de uma chave ssh, e novas contas no SVN devem escolher o protocolo svn+ssh. Envia sua chave pública (ex. {{path|~/.ssh/id_dsa.pub}})
    Line 107: Line 119:
    Caso esteja contribuindo com uma aplicação que não seja sua, é uma boa idéia submeter suas alterações como patches para o autor, e deixar que ele aplique-as. Se o autor não estiver mais mantendo a aplicação, você poderá tornar-se o novo mantenedor...
    Caso esteja contribuindo com uma aplicação que não seja sua, é uma boa idéia submeter suas alterações como patches para o autor, e deixar que ele aplique-as. Se o autor não estiver mais mantendo a aplicação, você poderá tornar-se o novo mantenedor...


    Apesar de existirem poucas restrições nos direitos de commit no repositório, esperamos que você não modifique o código de outros desenvolvedores sem seu consentimento. Além disso, você deve respeitar os congelamentos previstos na agenda de lançamentos (publicada em developer.kde.org)
    Apesar de existirem poucas restrições nos direitos de commit no repositório, esperamos que você não modifique o código de outros desenvolvedores sem seu consentimento. Além disso, você deve respeitar os congelamentos previstos na agenda de lançamentos (publicada na página [[Schedules]])


    Uma lista detalhada com as regras a serem seguidas quando efetivando commit's nos repositórios do KDE está disponível em [[Special:myLanguage/Policies/SVN_Commit_Policy|Política de commit's do KDE]].
    Uma lista detalhada com as regras a serem seguidas quando efetivando commit's nos repositórios do KDE está disponível em [[Special:myLanguage/Policies/SVN_Commit_Policy|Política de commit's do KDE]].
    Line 121: Line 133:
    ==O que é kdebindings?==
    ==O que é kdebindings?==


    It contains Qt bindings for Ruby, PHP, C# to use Qt classes with those langages, KDE bindings for Ruby, C#, python to use KDE classes with those langages, and XParts to embed non-KDE apps as a KPart. Check the [[Special:myLanguage/Development/Languages|binding page]] of TechBase.  
    Isso contém Qt bindings para Ruby, PHP, C# para usar classes do Qt com essas linguagens, KDE bindings para Ruby, C#, python para usar classes do KDE com essas linguagens e XParts para inserir aplicativos não-KDE como um KPart. Verifique a [[Special:myLanguage/Development/Languages|página de binding]] of TechBase.  


    ==O congelamento funcionalidades aplica-se ao playground?==
    ==O congelamento funcionalidades aplica-se ao playground?==
    Line 129: Line 141:
    ==Posso ter uma versão estável e outra instável do KDE no mesmo computador?==
    ==Posso ter uma versão estável e outra instável do KDE no mesmo computador?==


    Sim, leia a documentação sobre Compilação de 2 versões.  
    Sim, verifique o Building KDE Software nas séries de vídeos do git.kde.org:
    * [http://www.youtube.com/watch?v=cqnNVmJocR4 Building KDE Software from git.kde.org Parte 1]
    * [http://www.youtube.com/watch?v=OBJjk5q__Cc Building KDE Software from git.kde.org Parte 2]
    * [http://www.youtube.com/watch?v=SgwEnLeqsg8 Building KDE Software from git.kde.org Parte 3]


    ==Como saber qual versão do Qt/KDE eu estou utilizando?==
    ==Como saber qual versão do Qt/KDE eu estou utilizando?==
    Line 135: Line 150:
    <tt>kde-config</tt> e todos os programas do KDE aceitam <tt>--version</tt> como argumento.
    <tt>kde-config</tt> e todos os programas do KDE aceitam <tt>--version</tt> como argumento.


    ==Qt-copy ou Qt do qt.nokia.com : se alguém vai fazer uma compilação do trunk partindo do zero, qual é preferível?==
    ==Qt-copy ou Qt do qt.digia.com : se alguém vai fazer uma compilação do trunk partindo do zero, qual é preferível?==


    Você pode usar qualquer uma. Elas são bináriamente compatíveis (para frente ou para trás). Pode haver, no entanto, algumas pequenas correções no qt-copy em relação à versão mais recente do Qt.
    Você pode usar qualquer uma. Elas são bináriamente compatíveis (para frente ou para trás). Pode haver, no entanto, algumas pequenas correções no qt-copy em relação à versão mais recente do Qt.
    Line 162: Line 177:
    Você pode fazê-so diretamente no seu commit. Para isso, adicione à mensagem de commit uma linha como essa:
    Você pode fazê-so diretamente no seu commit. Para isso, adicione à mensagem de commit uma linha como essa:


    <Code>BUG: XXXXX</code> where '''''XXXXX''''' is the bug report you want to close. If the report you're closing is adding a new feature, you can use FEATURE instead of BUG.  
    <Code>BUG: XXXXX</code> onde '''''XXXXX''''' é o número do problema que você quer fechar. Se o relato sendo fechado é relacionado à adição de uma nova funcionalidade, você pode utilizar FEATURE ao invés de BUG.  


    Managing a bug list is a huge task for the developers and they usually have a lot of bugs listed, some being fixed already without their knowledge, some being unreproducible, some without enough information to be corrected, etc. If you can help by managing and updating the list of outstanding bugs, you will be gladly welcome. And you will receive an even happier welcome if you provide a patch.
    Gerenciar uma lista de bugs é uma tarefa enorme para os desenvolvedores e elas normalmente possuem uma grande quantidade de entradas, algumas delas já corrigidas sem que eles saibam, outras não-reproduzíveis, algumas sem as informações necessárias para que a correção seja feita, etc. Se puder ajudar fazendo o gerenciamento e atualização da lista de problemas pendentes, você será muito bem-vindo. E você receberá boas vindas ainda mais alegres se você fornecer a correção.


    ==How do I create a SSH key?==
    ==Como crio a chave SSH?==


    SSH makes use of two keys: a private key and a public key. You should keep the private key secret at all times and only place it on machines over which you have direct control. Public, shared, and community machines are not suitable environments to store SSH private keys. Take action to help prevent theft of your SSH private key data. Setting a password on your SSH private key will help reduce the risks involved with private key theft.
    O SSH utiliza duas chaves: uma privada e outra pública. Você deve sempre manter a chave privada em segredo e coloca-la apenas em máquinas as quais você tenha controle direto. Máquinas públicas, compartilhadas e comunitárias não são ambientes adequados para armazenar chaves privadas. Tome medidas que evitem o roubo de sua chave privada. Configurar uma senha em sua chave privada é muito bom para evitar os riscos envolvidos no caso de roubo da chave privada.


    Generate a key pair for each major location you work from. This helps to reduce the impact when your key gets stolen.  
    Gere um par de chaves para cada um dos principais locais de onde você trabalha. Isso ajuda a reduzir o impacto quando sua chave é roubada.
    When someone obtains access to your private key, your key can be abused in attempts to compromise KDE servers. Well known open source projects have been compromised this way in the past, YOU must help us to make sure that this doesn't happen with KDE servers as well. For that reason it is important to notify sysadmin (at) kde (dot) org immediately when you notice that someone may have had access to your private key for example when a computer on which it was stored has been hacked or infected with a virus, worm or trojan.
    Quando alguém obtém acesso à sua chave privada, ela pode ser utilizada abusivamente em tentativas de ataque contra os servidores do KDE. Alguns conhecidos projetos de código livre foram comprometidos desta maneira no passado, portanto VOCÊ deve nos ajudar a garantir que isso não aconteça também com o KDE. Por esse motivo é importante notificar sysadmin (em) kde (ponto) org assim que você perceber que alguém possa ter obtido acesso à sua chave privada. Por exemplo, quando um computador onde ela está armazenada é invadido ou infectado por vírus, worm ou trojan.


    If you choose to make a backup of your SSH private key data, please ensure that any such backup is stored in a secure manner as well.
    Caso faça backup de sua chave privada SSH, garanta que os backups também estão armazenados de maneira segura.


    For the practical part, the following command can be used to generate a SSH private/public key pair with
    Na parte prática, o seguinte comando pode ser utilizado para gerar um par de chaves pública/privada para o SSH:
    <code>ssh-keygen -t dsa</code>
    <code>ssh-keygen -t dsa</code>
    This will create a private key as {{path|~/.ssh/id_dsa}} and a public key as {{path|~/.ssh/id_dsa.pub}}.
    Isto ira criar a chave privada como {{path|~/.ssh/id_dsa}} e a chave pública como {{path|~/.ssh/id_dsa.pub}}.


    There are times when you may want to use a key of a different name to the default, perhaps to use separate keys for different projects. To let SSH know which key you want to use for KDE.org, you can keep a list of servers and their corresponding keys in ~/.ssh/config. For example,
    Em alguns momentos você pode querer utilizar uma chave com nome diferente do padrão, talvez para usar chaves distintas em projetos diferentes. Para permitir ao SSH saber qual chave deve ser utilizada no acesso ao KDE.org, você pode manter uma lista de servidores e suas respectivas chaves em ~.ssh/config. Por exemplo,
    {{Input|1= Host svn.kde.org  
    {{Input|1= Host svn.kde.org  
    IdentityFile ~/.ssh/id_dsa_kde }}
    IdentityFile ~/.ssh/id_dsa_kde }}
    In order to use SSH to access KDE servers you need to send your public key to sysadmin (at) kde (dot) org.
    Antes de utilizar a chave SSH para acessar os servidores do KDE, você deve enviar a chave pública para sysadmin (em) kde (ponto) org.


    ==How can I monitor changes made by others?==
    ==Como posso monitorar as alterações feitas por terceiros?==


    The [https://mail.kde.org/mailman/listinfo/kde-commits kde-commits] mailinglist carries automatic notifications for all changes made in the KDE repositories. The KDE-Commits mailinglist is very high traffic. An alternative is [http://commitfilter.kde.org/ CommitFilter] which allows you to get notification for only those areas that interest you.
    A lista de emails [https://mail.kde.org/mailman/listinfo/kde-commits kde-commits] distribui notificações automáticas de todas as alterações feitas nos repositórios do KDE. Esta lista possui um tráfego muito alto. Uma alternativa é o [http://commitfilter.kde.org/ CommitFilter], que permite selecionar somente as notificações de suas áreas de interesse.


    [[Category:FAQs]]
    [[Category:FAQs]]

    Revision as of 15:07, 30 August 2014

    Eu quero começar uma nova aplicação. O que você recomenda?

    Todos concordamos que existem muitas aplicações para o KDE que precisam ser escritas. Mas também há muitas aplicações existentes no KDE que necessitam sua ajuda.

    Para ver as áreas que precisam ajuda, veja esta página.

    Antes de começar uma nova aplicação, é sempre uma boa ideia verificar o KDE-Apps.org e outris serviços de hosting de código aberto como GitHub, Google Code, e SourceForge por aplicações existentes e também perguntar na lista de e-mail kde-devel se alguém já está trabalhando em algum projeto similar.

    Sou um desenvolvedor, como posso contribuir com o KDE?

    Calligra e KDevelop, apesar de muito aclamados, possuem muito pouco desenvolvedores, então você pode verificar lá. Não há necessidade de ser um desenvolvedor de espaços de trabalho KDE ou bibliotecas da plataforma KDE para ajudar. Toda a gama de softwares do KDE é muito modular para que você possa melhorar perfeitamente uma área sem saber como outros trabalham.

    Você também pode perguntar na lista kde-devel por alguém precisando ajuda com algum aplicativo. Utilize a última versão do seu software KDE favorito e repare nas coisas que são necessárias. Um gerador de temas? Um editor de schema para o Konsole? Melhorar um jogo? Sempre há um pequeno recurso faltando. Vá e implemente-o!

    Você é familiarizado ou sente-se atraído por alguma área específica? Verifique se alguma aplicação relacionada pode ser melhorada. Ou escreva uma nova. O KDE acolhe com alegria mais aplicações orientadas a não-geeks.

    Eu não sou desenvolvedor, como posso ajudar?

    Existem inúmeras tarefas que não exigem habilidades em programação. Escreva reviews de aplicativos para promover o KDE (veja a lista kde-promo), ajude o time de documentação (veja i18n.kde.org/doc), ajude os tradutores (veja i18n.kde.org), ajude a filtrar os bugs reportados (veja bugs.kde.org).

    Onde encontro imagens de Konqi, o dragão?

    O Konqi para algumas pessoas o SDK está em ftp.kde.org/pub/kde/devel/konqi_sdk.tar.bz2
    Isso foi postado para o artist.kde.org antes do site deixar de ser atualizado.

    Mais imagens estão disponíveis em KDE merchandise. Você também pode encontrar algumas imagens e moldes não oficiais do Konqi na página do Concurso Crie Konqi com Krita e do jogo SuperTuxKart.

    Qual é o nível exigido para contribuir com o KDE? O que devo aprender? O que devo ler?

    Você deve conhecer C++. Leia os tutoriais do Qt e navegue por sua documentação para familiarizar-se com os recursos disponibilizados. Depois, leia os do KDE e navegue por sua arquitetura e documentação. Você também pode ler o KDE Book, isso não irá machucar. No entanto, não é necessário conhecer toda a arquitetura do KDE para tornar-se um desenvolvedor KDE. É muito fácil utilizar nossas tecnologias, portanto concentre-se no que você realmente precisa e o resto você vai aprendendo com o tempo. KDE TechBase e doc.qt.nokia.com (também disponível no seu $QTDIR/doc/html) são recursos inestimáveis, use-os. Por fim, navegue pelo código-fonte, olhe os diretórios com exemplos, veja como os outros codificam suas aplicações. Ler e escrever código é a melhor maneira de aprender.

    Como obter o código do KDE dos repositórios git ou SVN?

    Veja a seção Compilando e executando o KDE a partir do fonte na página Primeiros passos.

    Posso acessar o fonte do KDE online?

    Sim, existem diveras formas de fazer isso.

    O que devo colocar dentro do meu .subversion/config?

    Você precisa adicionar à lista de ignorados para o grupo [miscellany] em seu ~/.subversion/config:

    [miscellany]
    global-ignores = *.moc *.moc.cc *.moc.cpp config.log config.status \
    config.cache *.gmo .deps .libs SunWS_cache *.lo *.la *.rpo *.la.closure \
    *_la_closure.cpp *_la_closure.cc *_la_closure.cxx *.all_cc.cc *.all_cpp.cpp \
    *.all_C.C *.all_cxx.cxx *_meta_unload.cc *_meta_unload.h *_meta_unload.cpp \
    *_meta_unload.C *_meta_unload.cxx index.cache.bz2 .memdump Makefile.rules.in \
    Makefile.calls.in Makefile.rules Makefile.calls autom4te.cache *.kidl \
    *.o *.lo *.la #*# .*.rej *.rej *.pyc
    

    E para fazer svn diff ignorar os espaços em branco, e os nomes das funções de impressão:

    [helpers]
    diff-cmd = /usr/local/bin/_svndiff
    

    com o seguinte em /usr/local/bin/_svndiff:

    #!/bin/sh
    exec /usr/bin/diff -b -u -p "$@"
    

    Não se esqueça de tornar /usr/local/bin/_svndiff executável.

    Eu quero colocar meu aplicativo no KDE

    Existem três requisitos:

    • Seu aplicativo deve compilar com a última versão do KDE (git master ou SVN trunk).
    • Seu aplicativo deve ser estável.
    • Seu aplicativo deve ser mantido. Você provavelmente receberá uma boa quantidade de relatos de problemas e outros pedidos, e as pessoas esperam que você conserte os problemas e implemente os pedidos que façam sentido.

    Veja também a próxima questão.

    É melhor desenvolver dentro ou fora do KDE?

    Como o desenvolvedor principal, Waldo Bastian, explica em um email protegido por copyright:

    Ser parte do KDE significa que você tem que trabalhar junto com outros. Essa cooperação traz vantagens mas também traz responsabilidades.

    Algumas das vantagens são: seu código irá para todas as distros, outras pessoas podem arrumar seus problemas, você ganha traduções e documentação, e também toneladas de relatos de bugs.

    Por outro lado, existem algumas desvantagens e responsabilidades: você terá que comunicar-se com outros desenvolvedores sobre seu trabalho, outras pessoas podem modificar seu código, você deverá respeitar os congelamentos pré-lançamento, você receberá toneladas de relatos de problemas, e as pessoas esperam que você arrume-os também (o que elas andam fumando?), elas esperam que você mantenha o código.

    Você não pode escolher as vantagens e ignorar as responsabilidades que vêm com elas, é um pacote fechado. É tudo ou nada.

    Em geral é o autor de um software quem decide colocar sua aplicação nos repositórios do KDE. Nós normalmente não colocamos nada no repositório, a menos que o autor assim decida. No outro sentido, se o autor prefere trabalhar sua aplicação em outro lugar, isso também é um direito seu. A menos que haja uma divisão entre o grupo de pessoas trabalhando na aplicação, não faz sentido dividir o desenvolvimento por esse motivo.

    MAS... ao colocar seu código sob uma licença de código livre e no repositório do KDE, você dará ao mundo, assim como ao KDE em particular, o direito irrevogável de usar o seu código. E o KDE vai usar desse direito como for conveniente para proteger os interesses do KDE, mesmo que isso possa ir contra os desejos do próprio autor em algum momento.

    É importante saber tudo isso, mas não se assuste. Normalmente as coisas funcionam muito bem. Em 5 anos, houve somente uma ocorrência de um desenvolvedor que colocou seu trabalho no KDE e depois quis tirá-lo.

    Como obtenho permissão de escrita nos repositórios do KDE?

    Leia o artigo completo em Obtenha uma Conta de Colaborador KDE.

    Vá para KDE Identity, preencha o formulário e descreva porque você precisa acesso de escrita. Tenha certeza de fornecer seu nome completo e endereço de email.

    Por favor, inclua também o nome da sua conta no bugs.kde.org. Caso não exista crie uma para que ela possa receber as permissões de desenvolvedor. Fechar relatos no bugs.kde.org com palavras-chave nos comentários do commit só funciona se o endereço de email no KDE Identity e na conta do bugs.kde.org baterem. Você pode atualizar o endereço no bugs.kde.org nas configurações de usuário do Bugzilla.

    O Git requer o uso de uma chave ssh, e novas contas no SVN devem escolher o protocolo svn+ssh. Envia sua chave pública (ex. ~/.ssh/id_dsa.pub) Veja também #How do I create a SSH key?

    Caso esteja contribuindo com uma aplicação que não seja sua, é uma boa idéia submeter suas alterações como patches para o autor, e deixar que ele aplique-as. Se o autor não estiver mais mantendo a aplicação, você poderá tornar-se o novo mantenedor...

    Apesar de existirem poucas restrições nos direitos de commit no repositório, esperamos que você não modifique o código de outros desenvolvedores sem seu consentimento. Além disso, você deve respeitar os congelamentos previstos na agenda de lançamentos (publicada na página Schedules)

    Uma lista detalhada com as regras a serem seguidas quando efetivando commit's nos repositórios do KDE está disponível em Política de commit's do KDE.

    Meu aplicativo não é estável, mas eu gostaria de tê-lo no KDE

    Inicialmente podemos coloca-la no playground, que basicamente é um "kde-alpha". Desenvolva-a lá e quanto estiver pronta, requisite que sua aplicação seja movida para o pacote apropriado do KDE, ou para o módulo extragear.

    Eu não quero perder o meu histórico do SVN.

    Isso não é mais possível com o Subversion. Talvez no futuro, se o servidor for atualizado e permitir isso. Note que isso não é problema no caso do git.

    O que é kdebindings?

    Isso contém Qt bindings para Ruby, PHP, C# para usar classes do Qt com essas linguagens, KDE bindings para Ruby, C#, python para usar classes do KDE com essas linguagens e XParts para inserir aplicativos não-KDE como um KPart. Verifique a página de binding of TechBase.

    O congelamento funcionalidades aplica-se ao playground?

    Não, o playground não libera pacotes. O mesmo é válido para o kde-review e extragear: eles não são congelados e liberados. Mas se você quer mover seu aplicativo para algum pacote, peça-o antes da liberação da versão beta.

    Posso ter uma versão estável e outra instável do KDE no mesmo computador?

    Sim, verifique o Building KDE Software nas séries de vídeos do git.kde.org:

    Como saber qual versão do Qt/KDE eu estou utilizando?

    kde-config e todos os programas do KDE aceitam --version como argumento.

    Qt-copy ou Qt do qt.digia.com : se alguém vai fazer uma compilação do trunk partindo do zero, qual é preferível?

    Você pode usar qualquer uma. Elas são bináriamente compatíveis (para frente ou para trás). Pode haver, no entanto, algumas pequenas correções no qt-copy em relação à versão mais recente do Qt. Caso esteja compilando do qt-copy, dê atenção especiao ao script apply-patches.

    Como posso baixar um único diretório de um módulo SVN?

    Baixe o diretório principal com o comando 'svn co -N /nomedomodulo', 'cd nomedomodulo', 'svn up admin' para obter o diretório admin, para então baixar o diretório desejado com 'svn up subdir'

    Por exemplo, para obter somente o reaktivate do playground/utils: svn co -N /playground/utils; svn up reaktivate E então compile normalmente.

    A mesma resposta se aplica para a questão "Como obtenho somente um idioma do kde-i18n?".

    Se não souber o nome do diretório que quer baixar, você pode navegar o websvn.kde.org para encontra-lo.

    Como posso baixar uma aplicação KDE como um tarball independente?

    O kdesdk/scripts/svn2dist é um script que extrai uma aplicação do código fonte do KDE e empacota-o como uma aplicação independente.

    Como fecho meus relatos de problemas (bug reports)?

    Se você reportou um problema que foi corrigido em uma nova versão do KDE mas continua marcado como aberto, você pode fechá-lo. Isso pode acontecer quando o seu problema é o mesmo que algum outro, ou simplesmente porque o desenvolvedor corrigiu alguma coisa sem perceber que isso corrigiria também o seu problema.

    Você pode fazê-so diretamente no seu commit. Para isso, adicione à mensagem de commit uma linha como essa:

    BUG: XXXXX onde XXXXX é o número do problema que você quer fechar. Se o relato sendo fechado é relacionado à adição de uma nova funcionalidade, você pode utilizar FEATURE ao invés de BUG.

    Gerenciar uma lista de bugs é uma tarefa enorme para os desenvolvedores e elas normalmente possuem uma grande quantidade de entradas, algumas delas já corrigidas sem que eles saibam, outras não-reproduzíveis, algumas sem as informações necessárias para que a correção seja feita, etc. Se puder ajudar fazendo o gerenciamento e atualização da lista de problemas pendentes, você será muito bem-vindo. E você receberá boas vindas ainda mais alegres se você fornecer a correção.

    Como crio a chave SSH?

    O SSH utiliza duas chaves: uma privada e outra pública. Você deve sempre manter a chave privada em segredo e coloca-la apenas em máquinas as quais você tenha controle direto. Máquinas públicas, compartilhadas e comunitárias não são ambientes adequados para armazenar chaves privadas. Tome medidas que evitem o roubo de sua chave privada. Configurar uma senha em sua chave privada é muito bom para evitar os riscos envolvidos no caso de roubo da chave privada.

    Gere um par de chaves para cada um dos principais locais de onde você trabalha. Isso ajuda a reduzir o impacto quando sua chave é roubada. Quando alguém obtém acesso à sua chave privada, ela pode ser utilizada abusivamente em tentativas de ataque contra os servidores do KDE. Alguns conhecidos projetos de código livre foram comprometidos desta maneira no passado, portanto VOCÊ deve nos ajudar a garantir que isso não aconteça também com o KDE. Por esse motivo é importante notificar sysadmin (em) kde (ponto) org assim que você perceber que alguém possa ter obtido acesso à sua chave privada. Por exemplo, quando um computador onde ela está armazenada é invadido ou infectado por vírus, worm ou trojan.

    Caso faça backup de sua chave privada SSH, garanta que os backups também estão armazenados de maneira segura.

    Na parte prática, o seguinte comando pode ser utilizado para gerar um par de chaves pública/privada para o SSH: ssh-keygen -t dsa Isto ira criar a chave privada como ~/.ssh/id_dsa e a chave pública como ~/.ssh/id_dsa.pub.

    Em alguns momentos você pode querer utilizar uma chave com nome diferente do padrão, talvez para usar chaves distintas em projetos diferentes. Para permitir ao SSH saber qual chave deve ser utilizada no acesso ao KDE.org, você pode manter uma lista de servidores e suas respectivas chaves em ~.ssh/config. Por exemplo,

    Host svn.kde.org 
    IdentityFile ~/.ssh/id_dsa_kde

    Antes de utilizar a chave SSH para acessar os servidores do KDE, você deve enviar a chave pública para sysadmin (em) kde (ponto) org.

    Como posso monitorar as alterações feitas por terceiros?

    A lista de emails kde-commits distribui notificações automáticas de todas as alterações feitas nos repositórios do KDE. Esta lista possui um tráfego muito alto. Uma alternativa é o CommitFilter, que permite selecionar somente as notificações de suas áreas de interesse.