# O Manual do &kdm;

## Introdução

O &kdm; oferece uma interface gráfica que lhe permite autenticar-se num sistema. Ele pede-lhe o 'login' (utilizador) e a senha, autentica o utilizador e inicia uma "sessão". O &kdm; é um substituto do xdm, o Gestor de Ligações do X e é superior a ele em vários aspectos.

A interface com o utilizador do &kdm; é feita através de duas janelas. A janela principal tem estas funcionalidades:

- Um campo de "Utilizador" para você poder dar o nome do seu utilizador no sistema.

- Um campo "Senha" para poder introduzir a sua senha ou palavra-passe.

- Uma região à esquerda dos campos "Utilizador" e "Senha" que pode ser usado para mostrar uma imagem estática ou um relógio analógico.

- (Opcionalmente) uma imagem gráfica de cada utilizador (por exemplo, uma fotografia digitalizada). Se carregar nessa imagem, o efeito é o mesmo de escrever o nome do utilizador associado a essa imagem no campo "Utilizador". (Esta funcionalidade é uma imitação da janela de autenticação do IRIX).

- Uma lista "tipo de sessão" que permite ao &kdm; ser usado para iniciar as sessões com vários tipos de gestor de janelas ou ambientes gráficos no sistema, como por exemplo o KDE, o KDE2 e o GNOME.

- Um botão "OK" que valida o utilizador e a senha e tenta iniciar uma sessão com o tipo seleccionado.

- Um botão "Cancelar" que limpa o texto dos campos "Utilizador" e "Senha".

- (Opcionalmente) um botão "Desligar" que mostra a janela de terminação "Desligar".

A janela "Desligar" apresenta um conjunto de opções exclusivas que poderão então ser seleccionadas:

Desligar

- Termina o sistema de uma forma controlada, para o preparar para ser desligado.

Reiniciar

- Termina o sistema e arranca-o. Para os sistemas que utilizam o Lilo, pode ser usada uma lista opcional que lhe permite seleccionar um 'kernel' de sistema operativo para ser usado no arranque.

Reiniciar o Servidor X

- Termina e reinicia o servidor do X. Tipicamente, poderá querer usar esta opção se alterou de alguma forma a configuração do seu X11.

Modo de Consola

- Desliga o servidor do X e remete o sistema para o modo de consola. Isto é feito ao mudar o sistema para o 'runlevel' 3. Tipicamente, o gestor do sistema poderá usar esta opção antes de actualizar ou reconfigurar os programas do X11.

Se carregar no botão "OK" inicia a acção seleccionada; se carregar no "Cancelar" volta para a janela principal do &kdm;.

O próximo capítulo explica como configurar o &kdm;. Os capítulos subsequentes descrevem como configurar o seu sistema para usar o &kdm;, como o compilar e instalar a partir do código-fonte, e como aprender mais sobre o &kdm; e sobre o projecto do KDE.

## Configurar o &kdm;

Este capítulo assume que o &kdm; já está instalado e pronto no seu sistema e que, simplesmente, o utilizador pretende apenas alterar o seu comportamento de alguma forma. Se o seu problema for mais sério, avance para os capítulos posteriores.

Quando o &kdm; se inicia, ele lê a sua configuração a partir do ficheiro `kdmrc`. Dado que o &kdm; precisa correr antes de qualquer utilizador se autenticar, não está associado com nenhum utilizador em particular. Como tal, não é possível ter um ficheiro `$HOME/share/config/kdmrc` específico para cada utilizador; todos partilham a versão comum do `kdmrc`, localizada em `$KDEDIR/share/config/kdmrc`. Daí, parte-se do princípio que a configuração do &kdm; só poderá ser alterada por aqueles utilizadores que tiverem acesso de escrita ao `$KDEDIR/share/config/kdmrc` (o que normalmente está restrito aos administradores de sistema que se ligam como "root").

Poderá ver o ficheiro `kdmrc` que está em uso actualmente no seu sistema (e que se localiza em `$KDEDIR/share/config/kdmrc`), e poderá configurar o &kdm;, bastando para tal editar este ficheiro. Em alternativa, poderá usar a ferramenta de configuração gráfica oferecida pelo Centro de Controlo do KDE (situada em Aplicações Sistema Gestor de Autenticação), o qual se encontra descrito nos ficheiros de ajuda do KControl.

O resto deste capítulo descreve o conteúdo do ficheiro `kdmrc`. Se se sentir bem a usar a ferramenta gráfica de configuração, não existe a necessidade de ler mais nada.

Existem quatro secções no `kdmrc`:

### KDM

A chaves desta secção são:

    StdFont
    FailFont
    GreetFont
    GreetString
    SessionTypes
    LogoArea
    LogoPixmap
    ShutdownButton
    Shutdown
    Restart
    ConsoleMode
    UserView
    Users
    NoUsers
    SortUsers
    GUIStyle

Uma curta descrição das chaves:

`*Font`

- Um identificador de tipo de letra formatado da seguinte forma: Courier,12,5,iso-8859-1,50,0.

`GreetString`

- O título da janela de autenticação do &kdm;.

`SessionTypes`

- Uma lista separada por vírgulas de argumentos da sessão, usados normalmente para seleccionar um gestor de janelas em particular. Por omissão, é ugual a `SessionTypes=kde,failsafe`.

`LogoArea`

- Controla o que aparece na parte inferior esquerda da janela de autenticação. Tanto poderá ser `KdmLogo` (em que, nesse caso, a imagem indicada em `LogoPixMap` é apresentada) ou `KdmClock` (em quye aparece um relógio neste caso).

`LogoPixmap`

- Especifica a imagem a mostrar na parte inferior esquerda da janela de autenticação quando o LogoArea=KdmLogo.

`ShutdownButton`

- O ShutdownButton controla quando o botão de Desligar é mostrado e poderá corresponder a um dos valores `All`, `None`, `RootOnly` e `ConsoleOnly`. O significado de `All` e de `None` é bastante claro. Se escolher o `ConsoleOnly` não poderá mais fazer uma terminação remota. Se escolher o `RootOnly` ser-lhe-á pedida a senha do 'root' antes de prosseguir a finalização.

`Desligar e Reiniciar`

- Os comandos para desligar o sistema ou para o reiniciar, respectivamente. (Por omissão: `/sbin/halt` e `/sbin/reboot`, respectivamente).

`ConsoleMode`

- O texto do comando usado na opção Modo de Consola do botão "Terminar". (Por omissão: `/sbin/init `3``). Esta opção não está disponível no BSD.

`UserView`

- Se este valor for igual a "`1`", ter-se-á uma visualização gráfica dos utilizadores na janela do &kdm;.

`Users`

- Uma lista separada por vírgulas dos utilizadores que estarão visíveis na janela gráfica dos utilizadores. Se o `UserView` for igual a "`1`" e o campo `Users` não existir, o &kdm; irá procurar os utilizadores no ficheiro de senhas `/etc/passwd`. Os utilizadores visíveis serão aqueles que têm um nome real, para além do seu nome de utilizador, uma directoria e uma linha de comandos por omissão - todos os outros serão ignorados. O &kdm; irá procurar em `$KDEDIR/share/apps/kdm/pics/users/` por um ícone para cada utilizador. Se existir um ícone chamado `ze.png`, o &kdm; irá usá-lo para mostrar o utilizador 'ze'. Caso contrário, o &kdm; irá usar o `default.png`.

  O &kdm; é capaz de lidar com ficheiros de vários tamanhos, contudo o resultado fica confuso. A solução para isso será usar uma aplicação como o Pixie do KDE ou o GNU Image Manipulation Program, (gimp) ou até o XV do John Bradley para converter todas as suas imagens para o mesmo tamanho. Uma dimensão de 64x64 deve dar uma resolução suficiente e corresponde ao tamanho dos ícones oferecidos por omissão. Estes programas também poderão ser usados para converter as imagens dos vários formatos para o PNG.

`NoUsers`

- Uma lista separada por vírgulas de utilizadores que não estarão visíveis. Use-a para filtrar os "pseudo-utilizadores" como o `sync` e o `shutdown` da janela dos utilizadores.

`SortUsers`

- Se for igual a "`0`", a lista dos utilizadores é visualizada na ordem em que foi lida. A opção predefinida é mostrar os utilizadores por ordem.

`GUIStyle`

- Pode ser `Motif` ou `Windows`.

### KDMDESKTOP

Esta secção é obsoleta. Nas versões anteriores do &kdm; podia ser usada para controlar o ecrã de fundo antes da autenticação. A configuração gráfica do &kdm; poderá ainda gerar esta secção, mas é ignorada pelo do &kdm;.

### Locale

Esta secção é tratada por uma biblioteca padrão do KDE. Os únicos campos que poderão ter algum efeito são:

    Country
    Language
    Charset

Uma curta descrição das chaves:

`Country`

- Indica o país. Veja em `$KDEDIR/share/locale/l10n` a lista completa dos códigos de países suportados pelo seu sistema. O código do país é usado para localizar o ficheiro `$KDEDIR/share/locale/l10n/codigo_pais/entry.desktop` que é usado para mostrar a informação específica da localização como o formato das horas e das datas, assim como o símbolo monetário local.

`Language`

- Indica a língua a usar para o &kdm; (por omissão: `C`, o que representa o Inglês dos EUA). O valor poderá ser sobreposto pela variável de ambiente `KDE_LANG`.

`Charset`

- indica o conjunto de caracteres a usar (por omissão: `iso-8859-1`).

Se mudar a opção mas todo o texto permanecer em inglês, isto significa provavelmente que o utilizador não tem as traduções instaladas no seu sistema.

### Lilo

O LILO (Linux Loader) é um gestor de arranque é vulgarmente utilizado nos sistemas GNU/Linux. O LILO vem com uma documentação extensa (veja em man lilo para começar). Esta secção configura os mecanismos para reiniciar o sistema usando o LILO. As opções são:

    Lilo
    LiloCommand
    LiloMap

Uma curta descrição das chaves:

`Lilo`

- Controla se o LILO é usado para reiniciar o sistema (por omissão: `FALSE`). Quando esta opção está configurada como `TRUE`, a janela de finalização passa a conter uma lista de configuração extra ao lado do botão "reiniciar". A lista permite-lhe escolher a imagem do 'kernel' que deverá ser usada ao reiniciar o sistema. A lista de imagens é criada ao analisar o ficheiro 'map' do LILO.

`LiloCommand`

- A localização do executável do LILO (por omissão: `/sbin/lilo`).

`LiloMap`

- A localização do ficheiro 'map' do LILO. O ficheiro 'map' é gerido pelo LILO e contém uma lista dos 'kernels' (versões do sistema operativo) a arrancar (por omissão: `/boot/map`).

## Configurar o sistema para utilizar o &kdm;

Este capítulo assume que o seu sistema já está configurado para iniciar o X Window System e que só necessita de o reconfigurar para permitir a autenticação gráfica.

### Configurar o &kdm;

O factor fundamental que controla se o seu computador arranca para uma mensagem do terminal (modo consola) ou para uma ambiente gráfico é o 'runlevel' por omissão. O 'runlevel' é definido pelo programa /sbin/init segundo o controlo do ficheiro de configuração `/etc/inittab`. Os 'runlevels' por omissão que são usados pelos diferentes sistemas Unix (e pelas diferentes distribuições do Linux) variam mas, se olhar para o ficheiro `/etc/inittab`, o início do mesmo deverá ser algo do género:

    # 'Runlevel' por omissão. Os 'runlevels' usados pelo RHS são:
    # 0 - desligar (NÃO configure o 'initdefault' para isto)
    # 1 - Modo mono-utilizador
    # 2 - Multi-utilizador sem NFS
    # 3 - Multi-utilizador completo
    # 4 - não usado
    # 5 - X11
    # 6 - reiniciar (NÃO configure o 'initdefault' para isto)

    id:3:initdefault:

Todas as linhas excepto a último deste excerto são comentários (aqui traduzidos para facilitar a compreensão). Os comentários indicam que o 'runlevel' 5 é usado para o X11 e que o 'runlevel' 3 é usado para o modo multi-utilizador sem o X11 (modo de consola). A última linha indica que o 'runlevel' por omissão do sistema é o 3 (modo de consola). Se o seu sistema usar actualmente a autenticação gráfica (por exemplo através do xdm), o seu 'runlevel' por omissão irá corresponder ao especificado para o X11.

O 'runlevel' com a autenticação gráfica (xdm) para algumas das distribuições comuns do Linux é:

- 5 no Red Hat 3.x e posteriores, e no Mandrake

- 4 no Slackware

- 3 no S.u.S.E. 4.x e 5.x

O primeiro passo na configuração do seu sistema é a garantia de que pode iniciar o &kdm; a partir da linha de comandos. Logo que isto esteja a funcionar, pode alterar a configuração do seu sistema de modo a que o &kdm; se inicie automaticamente de cada vez que reinicia o seu sistema.

Para testar o &kdm;, deverá passar primeiro o seu sistema para um 'runlevel' que não arranque o xdm. Para o fazer, indique um comando como o seguinte:

    /sbin/init 3

Em vez do número "`3`" deverá especificar o 'runlevel' apropriado para o modo de consola no seu sistema.

De seguida, deverá localizar a directoria de configuração do seu xdm; normalmente é a `/etc/X11/xdm/` ou a `/usr/X11R6/lib/X11/xdm/`. A directoria de configuração contém o ficheiro `Xsetup_0`. Se compilar o &kdm; a partir do código-fonte e o `configure` não conseguir encontrar esta directoria, ele irá instalar uma nova versão do `Xsetup_0` a partir de um ficheiro de modelo na directoria do código do &kdm;. O utilizador poderá incluir a linha:

    kdmdesktop

Um programa para mostrar alguns fundos interessantes (imagens e cores de fundo). (Não é certo se isto ainda funciona; talvez não seja necessário). Se o seu `KDEDIR` não for igual a `/opt/kde` terá de alterar a localização do `kdmdesktop`.

Se o seu sistema utiliza Pluggable Authentication Modules (PAM), o que é normal nas distribuições recentes da Red Hat e da Mandrake, deverá verificar se a sua configuração do PAM lhe permite autenticar-se através do serviço `xdm`. Se usou anteriormente o xdm com sucesso, não deverá ter de efectuar nenhumas alterações à sua configuração do PAM para usar o &kdm;, a qual se encontra em `/etc/pam.conf` ou `/etc/pam.d/xdm`. Nais informações sobre a configuração do PAM estão fora do âmbito deste manual, mas o PAM vem com alguma documentação compreensível (tente ver em `/usr/doc/pam*/html`).

Agora é a altura de testar o &kdm;, indicando o seguinte comando:

    kdm -nodaemon

Se obtiver uma janela de autenticação e se conseguir autenticar-se, as coisas estão a correr bem. O factor principal que poderá falhar aqui será o facto do &kdm; não encontrar as bibliotecas dinâmicas do Qt ou do KDE. Se tiver uma distribuição binária das bibliotecas do KDE, certifique-se que o &kdm; está instalado no mesmo sítio que as bibliotecas assumem que este esteja de facto (normalmente em `/opt/kde/bin`) e tente alterar algumas das variáveis de ambiente para apontar para as bibliotecas do KDE e do Qt. Por exemplo:

    export
    KDEDIR=/opt/kde
    export
    QTDIR=/usr/lib/qt2
    export
    PATH=$KDEDIR/bin:$QTDIR/bin:$PATH
    export
    LD_LIBRARY_PATH=$KDEDIR/lib:$QTDIR/lib

Se mesmo assim não tiver sucesso, tente iniciar o xdm em alternativa, para confirmar se não não está a passar por um problema de configuração mais sério do X.

Quando for capaz de iniciar o &kdm; com sucesso, poderá começar a substituir o xdm pelo &kdm;. Mais uma vez, isto é dependente da distribuição.

- No caso da Redhat, edite o `/etc/inittab`, veja a sequência 'xdm' e substitua-a pelo &kdm; (incluindo todas as directorias).

- Para o Mandrake, o 'runlevel' do X11 no ficheiro `/etc/inittab` invoca o 'shell script' `/etc/X11/prefdm`, que é configurado para poder escolher vários gestores gráficos de autenticação, incluindo o &kdm;. Certifique-se que todas as localizações estão correctas na sua instalação.

- No caso da S.u.S.E, edite o `/sbin/init.d/xdm` para adicionar uma linha inicial:

      . /etc/rc.config
      DISPLAYMANAGER=kdm
      export DISPLAYMANAGER

- Grande parte das outras distribuições são uma variação destas.

Se não quiser alterar o `inittab`, a alternativa será mudar o nome do `xdm` para `xdm.bak` e tornar o `xdm` uma ligação simbólica para o &kdm;.

Nesta altura, o utilizador poderá testar de novo o &kdm;, passando o seu sistema para o 'runlevel' que deverá executar o &kdm;. Para o fazer, invoque um comando do tipo:

    /sbin/init 5

Em vez do número "`5`" deverá indicar o 'runlevel' apropriado para correr o X11 no seu sistema.

O passo final é editar o campo `initdefault` no ficheiro `/etc/inittab` para especificar o 'runlevel' apropriado para o X11.

Antes de efectuar esta alteração, certifique-se que tem uma forma de reiniciar o seu sistema se ocorrer algum problema. Esta poderá ser uma disquete de "emergência" oferecida pela distribuição do seu sistema operativo ou uma disquete de "emergência" feita à medida, como a `tomsrtbt`. Ignore este conselho por sua conta e risco.

Quando reiniciar o seu sistema, deverá chegar à autenticação gráfica do &kdm;.

Se este passo não tiver sucesso, o problema possível será que a o ambiente usado durante a altura do arranque difere do ambiente que usou para testar na linha de comandos. Verifique os ficheiros como o `/etc/X11/xdm/Xsetup_0` (e todos os programas que ele invoca) para se certificar que a sua PATH não é alterada sem o seu conhecimento. Se está a tentar que duas versões do KDE coexistam, tenha um especial cuidado com as configurações que fizer das suas variáveis de ambiente `PATH` e `LD_LIBRARY_PATH`, de modo a que sejam consistentes e que os programas de arranque não as modifiquem de alguma forma.

### Suportar vários gestores de janelas

A janela principal do &kdm; inclui uma lista "tipo de sessão", a qual lhe permite escolher um gestor de janelas para a sua sessão. Este capítulo descreve as alterações que deverá fazer aos seus ficheiros de configuração para suportar esta funcionalidade.

As opções que aparecem na lista "tipo de sessão" são configuradas pelos campos da secção `KDM` do ficheiro `kdmrc`.

Quando se autentica no &kdm;, o programa `Xsession` é executado. O tipo de sessão que seleccionar é passado como um argumento da linha de comandos. (O `Xsession` poderá ser encontrado em `/etc/X11/xdm/` no caso da Redhat e da Mandrake, e em `/usr/X11R6/lib/X11/xdm/` no S.u.S.E.). Com o intuito de depuração, poderá achar útil adicionar esta linha ao ficheiro `Xsession`:

    echo "$0 || $1 || $2"
    > $HOME/.Xsession_args

A forma como prossegue agora depende de como o seu sistema inicia normalmente os gestores de janelas. Aqui estão duas abordagens diferentes, com exemplos das alterações que precisa de fazer:

- O gestor de janelas é iniciado através de comandos dentro do `Xsession`. Neste caso, poderá adicionar uma instrução do 'case' para iniciar o gestor de janelas apropriado. O Linux Mandrake utiliza esta aproximação; aqui temos um excerto do `Xsession`:

      # agora, pode-se ver se o xdm/gdm/kdm pediu um ambiente específico
      case $# in
      1)
          case $1 in
              kde)
              source /opt/kde2/bin/kde1
              exec startkde
              ;;
              kde2)
              source /opt/kde2/bin/kde2
              exec startkde
              ;;
          	failsafe)
      	exec xterm -geometry 80x24-0-0
      	;;
      	default)
      	;;
      	*)
      	exec /bin/sh -c "$(/usr/sbin/chksession -x=$1)"
      	;;
           esac
      esac

- O gestor de janelas é iniciado por outro programa que é invocado pelo `Xsession`. Neste caso, deverá garantir que o parâmetro passado ao `Xsession` é também passado para o outro programa. Por exemplo, se o gestor de janelas for iniciado com algo do género:

      exec $startup

  deverá alterá-lo para:

      exec $startup $@

  Depois de efectuar esta alteração, deverá analisar o seu caminho através do 'startup' para encontrar o ponto em que o gestor de janelas é iniciado. Uma das possibilidades usa o `xinitrc` para iniciar o gestor de janelas; isto permite usar o ficheiro global do sistema `/etc/X11/xinit/xinitrc` ou um ficheiro específico por utilizador `$HOME/.xinitrc`. Se editar o `$HOME/.xinitrc`, poderá querer gravar uma cópia no `/etc/skel`, para que possa ser gerada automaticamente para todas as contas de utilizadores que criar a partir daí. Este é um `xinitrc` de exemplo para um sistema que usa esta abordagem:

      #!/bin/bash
      #
      # .xsession/.xinitrc
      #
      # escolher um gestor de janelas
      #

      defaultwm=kde
      #alterar o gestor de janelas para $1 se for fornecido
      windowmgr=${1:-$defaultwm}

      #iniciar os gestores de janelas respectivos
      case ${windowmgr} in
        kde|kwm|kdestart)
      	WINDOWMANAGER=startkde
      	;;
        fvwm|fvwm2)
      	WINDOWMANAGER=fvwm2
      	;;

        fvwm95)
      	WINDOWMANAGER=fvwm95
      	;;

        *)    WINDOWMANAGER=windowmgr   # predefinido para os gestores desconhecidos

      esac

      #
      # carregar os recursos
      #

      if [ -f /usr/X11R6/lib/X11/Xmodmap ]; then
          xmodmap /usr/X11R6/lib/X11/Xmodmap
      fi

      if [ -f ~/.Xmodmap ]; then
          xmodmap ~/.Xmodmap
      fi

      if [ -f ~/.Xdefaults ]; then
          xrdb -merge ~/.Xdefaults
      fi

      if [ -f ~/.Xresources ]; then
          xrdb -merge ~/.Xresources
      fi
      #
      # iniciar finalmente o gestor de janelas
      #
      exec $WINDOWMANAGER

## Compilar e Instalar o kdm

O &kdm; faz parte do projecto do KDE. As várias componentes do KDE estão divididas em secções, denominadas de pacotes. O &kdm; faz parte do pacote chamado 'kdebase'. Poderá obter o código-fonte do KDE a partir de vários CDs de distribuições de Linux e de BSD ou em www.kde.org ou nos seus 'sites' alternativos ('mirrors'). Se tiver uma estrutura de código desactualizada, poderá usar um dos servidores 'cvsup' do KDE para o actualizar, mantendo à mesma uma largura de banda pequena.

Antes de compilar o 'kdebase', precisa ter compilada e instalada (por esta ordem), a versão 3 da biblioteca do Qt e os pacotes do KDE 'kde-qt-addon', 'kdesupport' e 'kdelibs'.

Para compilar qualquer um dos anteriormente descrito, deverá já ter o X Window System instalado, em conjunto com um compilador de C++ e as ferramentas de configuração da GNU configure, automake e autoconf.

Se os últimos parágrafos lhe soaram a uma língua estrangeira, ou o uti lizador entrou por uma área inapropriada deste manual ou está prestes a entrar numa grande experiência de aprendizagem.

Se conseguiu satisfazer todos os pré-requisitos, então não deverá ter nenhum problema ao compilar e instalar o 'kdebase'. O &kdm; está instalado na sua directoria "`$KDEDIR/bin`".

O `make `install`` irá sobrepor o seu `kdmrc` anterior.

## Outras fontes de informação

Dado que o &kdm; descende do xdm, a página de man do xdm poderá dar mais algumas informações adicionais. Para os problemas relacionados com o X tente ver as páginas do 'man' X e do startx. Se tiver dúvidas acerca do &kdm; que não sejam respondidas por este manual, tire partido do facto que o &kdm; é distribuído segundo os termos da GNUgnu > Public License: veja o código-fonte.

## Créditos e Licença

O &kdm; deriva ou inclui código do xdm.

O &kdm; 0.1 foi feito pelo Matthias Ettrich. Todas as versões posteriores foram feitas pelo Steffen Hansen.

O Xdm tem o 'copyright' (c) 1990 do X Consortium.

Todas as partes do código do &kdm; tem o 'copyright' dos autores e estão licenciadas segundo os termos da GPL da GNU. Todos os que estiverem interessados, podem alterar o &kdm; e redistribuir o resultado desde que os nomes dos autores sejam mencionados.

O &kdm; necessita da biblioteca Qt, a qual tem o 'copyright' da Troll Tech AS.

Contributos para a documentação:

- Documentação escrita por Steffen Hansen stefh@dit.ou.dk

- Documentação extendida por Gregor Zumsteinzumstein@ssd.ethz.ch. Última actualização em 09/07/1998

- Documentação revista para o KDE2 por Neal Crooknac@forth.org. Última actualização em 06/07/2000

Documentação copyright Steffen Hansen, Gregor Zumstein e Neal Crook.

Tradução de José Nuno Coelho Pires jncp@netcabo.pt

&underFDL; &underGPL;