Capítulo 7. Perguntas e respostas

7.1. Ao usar o protocolo (k)svn+ssh, ele sempre solicita a senha novamente. Por que?
7.2. A solicitação da senha para o (k)svn+ssh aparece no terminal quando o kdesvn é iniciado a partir dele. Como desativo isso?
7.3. Como posso indicar uma porta ou usuário diferente no protocolo svn+ssh?
7.4. Ao verificar a existência de atualizações, o kdesvn não mostra nada, mas eu sei que existem itens mais recentes!
7.5. Ao iniciar o kdesvn, ele apresenta uma caixa de diálogo “Não foi possível encontrar o nosso componente” e mostra uma janela vazia. Por que?

7.1.

Ao usar o protocolo (k)svn+ssh, ele sempre solicita a senha novamente. Por que?

O problema é o próprio ssh. O subversion cria para cada comando um túnel para o repositório. Cada um desses túneis é uma nova conexão ssh. Do mesmo modo, cada conexão ssh deve ser autenticada. Isto pode ser resolvido se você armazenar a sua identidade pública local na máquina que contém o repositório. Se a sua identidade pública tiver uma senha, o ssh-agent será consultado (se estiver instalado).

Quando estiver executando um ssh-agent antes de iniciar o kdesvn, você deve adicionar a sua identidade ao cache do programa. O kdesvn não irá modificar por razões de segurança e sempre solicitará a sua senha novamente. (Leia a Página de Manual do ssh-add)

7.2.

A solicitação da senha para o (k)svn+ssh aparece no terminal quando o kdesvn é iniciado a partir dele. Como desativo isso?

Não pode ser desativado, pois é uma característica do próprio ssh-agent. Quando vê que tem um terminal, ele solicita a senha no terminal e não em uma janela do X como o kdesvnaskpass. (Leia a Página de Manual do ssh-add).

7.3.

Como posso indicar uma porta ou usuário diferente no protocolo svn+ssh?

Você pode usar um item no $HOME/.ssh/config. Consulte a sintaxe exata na Página de Manual de Configuração do SSH.

7.4.

Ao verificar a existência de atualizações, o kdesvn não mostra nada, mas eu sei que existem itens mais recentes!

As atualizações só poderão ser apresentadas se a versão do subversion do servidor remoto também for 1.2. Por exemplo, parece que o repositório funciona com o subversion <1.2. Não há planos para que o kdesvn faça ele mesmo essa verificação recursiva - isso não faz sentido. Peça para atualizar o repositório para uma versão mais recente do subversion.

7.5.

Ao iniciar o kdesvn, ele apresenta uma caixa de diálogo Não foi possível encontrar o nosso componente e mostra uma janela vazia. Por que?

Existem muitas razões para explicar porque o programa não conseguiu carregar. Isto normalmente acontece quando você mesmo compila as bibliotecas do subversion. Nesse caso, você pode querer ler este relatório de erro.

Outra coisa relevante pode ser o esquecimento da indicação da variável libsuffix em sistemas de 64 bits durante a compilação. Como tal, o componente será instalado em $PREFIX/lib em vez de $PREFIX/lib64. Por isso, indique -DLIB_SUFFIX=64 como parâmetro do cmake.

Se não resolver o seu problema, você poderá tentar isto no terminal:

export LD_PRELOAD=/usr/lib/kde4/libkdesvnpart.so
  kdesvn
  unset LD_PRELOAD

(O local do /usr/lib/kde4 depende obviamente do seu sistema. Verifique onde está instalado)

Você deve ver um grande conjunto de mensagens com o motivo do porque o carregamento da libkdesvnpart.so não é possível. Isso pode ajudá-lo a resolver seu problema.