Recursos para Desenvolvedores do GNU

 [imagem da cabeça de um GNU]

Conteúdo

Introdução

Esta página descreve os serviços de desenvolvimento disponíveis para Desenvolvedores do GNU nas máquinas do Projeto GNU. Se você deseja utilizar algum desses serviços para o desenvolvimento de algum pacote GNU, por favor contacte o endereço listado para o serviço em particular.

Com a abundância de computadores baratos que podem rodar o GNU/Linux, assim como a maior disponibilidade de acesso à Internet, muitos dos voluntários do GNU já dispõem hoje de todas as facilidades de que eles necessitam. Entretanto, ainda existem vantagens em se ter computadores centrais nos quais os voluntários do GNU possam trabalhar juntos sem terem que tornar as suas máquinas acessíveis a outros.

Por este motivo, a Fundação para o Software Livre encoraja os projetos de Software GNU a utilizar as máquinas em gnu.org como base principal. Usar estas máquinas também beneficia o Projeto GNU indiretamente, por aumentar o conhecimento público sobre o GNU, e por espalhar a idéia de que trabalhar em conjunto é benféfico para todos.

Contas de Login

Nós fornecemos acesso de login (shell) às máquinas do GNU para pessoas que necessitam delas para trabalhar em software GNU. Ter uma conta de login é tanto um privilégio quanto uma responsabilidade, e eles devem ser utilizadas somente para o seu trabalho no GNU. Se você não tem uma conta e necessita de uma, por favor contacte accounts@gnu.org.

CVS

Nós fornecemos acesso remoto ao CVS para vários pacotes GNU; se você está desenvolvendo um pacote GNU e gostaria de manter o repositório nas máquinas em gnu.org, leia as instruções abaixo sobre configurando o CVS em subversions.

O nosso servidor CVS é chamado subversions porque ele é um servidor para registrar versões e subversões de vários programas e arquivos.

CVS - Conteúdo
Navegando pelo CVS

Você pode navegar pelo repositório de CVS do GNU pela interface CVSweb.

Você também pode utilizar o utilitário padrão CVS do GNU para obter acesso anônimo, somente para leitura:

$ cvs -d :pserver:anoncvs@subversions.gnu.org:/cvs login
Password: [tecle enter]
$
Você só necessita se logar uma vez, já que o CVS irá salvar a sua senha em ~/.cvspass. Depos disso, você pode realizar qualquer operação sobre o CVS, por exemplo:
$ cvs -d :pserver:anoncvs@subversions.gnu.org:/cvs checkout module
[...]
Onde module é o nome do módulo no CVS no qual você está interessado.

Para aqueles que estão afortunadamente bloqueados por um firewall, nós também estamos rodando um servidor CVS na porta 443. Existe um patch extra-oficial para o CVS que permite a você acessar este servidor enganando o seu proxy e fazendo-o pensar que se trata de um acesso a um site seguro https. Não nos peça ajuda se isto não funcionar, já que a falha é do seu firewall e não nossa.

Eis os nomes dos módulos para os pacotes que estão disponíveis via CVS anônimo:

adhoc
GNU Ad HoC,um conjuto de macros para gerar shell scripts portáveis de uso geral.
cgicc
Cgicc é uma biblioteca de classes C++ para a escrita de aplicações gráficas (GUI).
ghostscript
Ghostscript é um interpretador para as linguagens gráficas Postscript e PDF.
gnue
Projeto GNU Enterprise.
gnu-paperclips
Servidor de Servlets Java Paperclips.
gnu-socketserver
Um componente Paperclips.
gnu-weblook
Um componente Paperclips.
gnumach
O microkernel GNU Mach utilizado pelo Hurd.
grub
GNU GRUB, o GRand Unified Bootloader (um gerenciador de boot para múltiplos SOs).
hurd
Os servidores de modo kernel do GNU Hurd.
latex-manual
Documentação livre para o LaTeX.
libtool
GNU Libtool, um shell script portável para ajudar a desenvolver e manter bibliotecas compartilhadas.
mailutils
Mailutils é uma coleção de utilitários relacionados com e-mail (pop3d, mail, etc...).
mig
O Gerador de Interfaces para o Mach, um gerador de stubs para RPC utilizado pelo GNU Mach e pelo Hurd.
make
GNU Make.
realestate
Uma versão GNU do jogo Monopólio.
inetutils
inetutils é uma coleção de utilitários de rede, em sua maioria baseados nos fontes do BSD.
oleo
Oleo é a planilha eletrônica do GNU, suportando curses, X e Motif.
Sites de Espelho do CVS

Os sites seguintes espelham partes do repositório CVS do GNU:

:pserver:anoncvs@duff.kuicr.kyoto-u.ac.jp:/usr/local/cvsroot
gnumach, hurd, mig
Tecle return quando for pedida a senha de login.
:pserver:anoncvs@anoncvs.ffii.org:/var/cvs
libtool
Tecle return quando for pedida a senha de login.

De modo que os espelhos tenham acesso direto ao repositório, nós fornecemos um servidor anônimo de rsync em rsync://subversions.gnu.org/cvs/. Por favor contacte <cvs-hackers@gnu.org> se você gostaria de espelhar parte ou todo o repositório de CVS do GNU, de modo que nós possamos adicionar o seu nome à lista acima.

Configurando CVS em subversions

Se o seu módulo ainda não foi criado em subversions, você tem que enviar os seguintes detalhes para <cvs-hackers@gnu.org>:

  1. O nome exato do seu módulo, e o pacote ou manual GNU correspondente. Nós só hospedamos CVS para pacotes GNU.
  2. Se o seu módulo deve ter acesso público só para leitura (isto inclui CVS anônimo, CVSWeb, e rsync anônimo).
  3. Nomes de usuários, nomes completos e endereços de e-mail de todas as pessoas que devem receber permissão de escrita.
  4. Se os usuários já tem contas no Kerberos do GNU, eles podem utilizar o CVS Kerberizado (veja abaixo), caso contrário você tem que nos fornecer chaves públicas para o OpenSSH (também veja abaixo), ou senhas criptografadas para acesso via pserver.

    Você pode encontrar as senhas criptografadas no arquivo /etc/passwd do seu sistema, no arquivo /etc/master.passwd ou no arquivo /etc/shadow. Aqui temos um exemplo de como criar uma senha criptografada à partir do zero:

    bash$ perl
    $salt = pack ('CC', rand 64, rand 64);
    $salt =~ tr/[\000-\100]/[a-zA-Z0-9.\/]/;
    system "stty -echo";
    print "Password: ";
    $_ = <STDIN>; chomp;
    system "stty echo";
    print "\nCrypted password is: ", crypt ($_, $salt), "\n";
    [Hit Control-D]
    Password: my-test
    Crypted password is: e6ysQrtiMatWM
    bash$
    

Uma vez que todas as contas estejam funcionando adequadamente, você pode nos informar de onde nós podemos baixar o seu antigo repositório de desenvolvimento (se havia um), e nós iremos notifica-lo quando ele estiver em seu lugar em subversions.

Uma maneira de mudar a localização do repositório ou o usuário em uma árvore que já sofreu check-out sem prejudicar o desenvolvimento é faze-lo manualmente:

$ mv module module.new
$ cvs -d :pserver:username@subversions.gnu.org:/home/cvs checkout module
$ (cd module.new && tar --exclude CVS -cf - .) | (cd module && tar -xvBpf -)
$ cd module
[continue working...]

Se a sua árvore é bastante extensa, você pode querer utilizar o cvsrepo.sh. Este script faz a alteração in loco (sem que sejam necessárias duas cópias da árvore que já sofreu check-out).

Utilizando o CVS em subversions

Se a sua conta já foi configurada com uma senha criptografada, você pode acessar o seu módulo (e somente o seu módulo... outros módulos podem ser acessados apenas via a conta anônima do CVS) com permissão de escrita da maneira que se segue:

$ cvs -d :pserver:username@subversions.gnu.org:/cvs login
Password: [type your password]
$ cvs -d :pserver:username@subversions.gnu.org:/cvs checkout module
[...]
Assim como com o CVS anônimo, você só necessita se logar uma vez.

Para o OpenSSH, faça:

$ CVS_RSH=ssh cvs -d :ext:username@subversions.gnu.org:/cvs checkout module

Se você está utilizando o Kerberos, primeiro faça login como o seu principal, então use um dos comandos abaixo (em ordem de preferência):

$ cvs -d :gserver:subversions.gnu.org:/cvs checkout module
$ cvs -d :kserver:subversions.gnu.org:/cvs checkout module
$ CVS_RSH=krsh cvs -d :ext:username@subversions.gnu.org:/cvs checkout module
$ cvs -d :ext:username@subversions.gnu.org:/cvs checkout module

Mailing Lists

Nós operamos listas de e-mail para os pacotes GNU de acordo com a necessidade, incluindo tanto listas gerenciadas à mão e listas gerenciadas automaticamente. Peça a gnu@gnu.org para criar listas para você, ou as crie você mesmo se você tem certeza de como faze-lo.

Em geral, cada pacote de software GNU deve ter uma lista de infome de bugs com o nome canônico bug-name@gnu.org, assim como quaisquer aliases que possam ser úteis. Alguns pacotes compartilham a lista bug-gnu-utils@gnu.org mas nós encorajamos cada pacote a ter a sua própria lista.

Os pacotes podem ter outras listas para anúncios, para pedir por ajuda, para mensagens relacionadas com o código-fonte, para distribuição entre usuários, ou para qualquer coisa que o mantenedor do pacote pense que seja útil.

Quando uma lista de e-mail se torna grande o suficiente para justifica-lo, nós podemos configurar um grupo de notícias gnu.* com um link de duas vias com a lista de e-mail.

Servidor Web

O nosso servidor web principal é localizado em http://www.gnu.org/, e tem espelhos em todo o mundo. Nós gostaríamos de hospedar neste servidor páginas sobre cada e todo pacote de software GNU.

A máquina que serve a página web www.gnu.org é separada do restante das máquinas do GNU, de modo que você necessita de uma conta separada se você deseja se logar nela.

FTP

Nós também podemos fornecer um site FTP para qualquer pacote de software GNU em http://ftp.gnu.org/, que é espelhado em todo o mundo. Por favor contacte ftp-upload@gnu.org se você gostaria de usar este site como o centro de distribuição para o seu pacote.

Nós utilizamos um servidor diferente para versões de teste, de modo que as pessoas não irão instala-las pensando que elas estejam prontas para uso geral. Este servidor é ftp://alpha.gnu.org/. Por favor contacte ftp-upload@gnu.org se você gostaria de utilizar este site para distribuir versões de teste de seu pacote.


Retorna à GNU's home page.

Por favor envie dúvidas ou questões sobre FSF e/ou GNU para gnu@gnu.org. Há também outros modos de contactar a FSF.

Por favor envie comentários sobre estas páginas web para webmasters@www.gnu.org, envie outras questões para gnu@gnu.org.

Copyright (C) 2000 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA

A cópia fiel e a distribuição deste artigo completo é permitida em qualquer meio, desde que esta nota seja preservada.

Traduzido por: Fernando Lozano <fsl@centroin.com.br>

Atualizado: 08 Apr 2001 fsl