A área de transferência do Synergy (copiar / colar) não funciona com o glipper?

1

(só queria documentar isso; auto-resposta a seguir)

Eu tenho uma configuração com o QuickSynergy entre duas máquinas Ubuntu, configuradas assim:

  • Ubuntu 10.04.4 LTS (lucid) - servidor de sinergia, tem o mouse conectado
  • Ubuntu 11.04 (natty) - cliente de sinergia (deseja usar o mouse do servidor)

Eu tenho usado essa configuração há alguns anos - e tudo estava funcionando bem.

Volto a essa configuração hoje em dia - e enquanto o ponteiro do mouse alterna bem entre as telas, copiar / colar no cliente não funcionava completamente : ou seja, seleciono algum texto em qualquer aplicação (de scite a firefox ) e copiar ( através de Ctrl-C; ou através do botão direito do mouse / Copiar do menu de contexto ) - Eu então tento colar ( via Ctrl-V, ou através do botão direito do mouse / Copiar do menu de contexto ), e absolutamente nada acontece. Ainda mais, depois de fazer uma ação de cópia, clicar com o botão direito do mouse no menu de contexto mostra a entrada do menu "Colar" para ficar esmaecida (desativada) - como se não houvesse nenhum dado na área de transferência!

Então, primeiro eu verifiquei as versões de sinergia em ambas as máquinas, e acontece que elas não combinam (mesmo que isso tenha sido o caso também anteriormente, quando eu usei a mesma configuração, e tudo estava funcionando). Então eu atualizei synergy em ambas as máquinas usando Sinergia: gogo [ppa: trebelnik-stefina / synergy] (Usei os binários maverick para a máquina lucid ). Agora ambos mostram a mesma versão; por exemplo. para o cliente:

$ synergyc --version
synergyc 1.4.11, protocol version 1.4
...
$ synergys --version
synergys 1.4.11, protocol version 1.4

No entanto, o problema de copiar / colar ainda persiste.

A única coisa que pode ter mudado em relação à área de transferência nessas máquinas desde a última vez em que usei com êxito uma conexão synergy é que instalei o applet da área de transferência glipper em ambas as máquinas. Este poderia ter sido o problema?

    
por sdaau 29.10.2012 / 10:00

1 resposta

2

Sim - e, de fato, glipper foi o problema: no entanto, somente se estiver em execução na máquina synergy servidor ! Estranho para mim, porque influencia a cópia / colagem na máquina do cliente localmente ...

Na verdade, agora tenho a máquina synergy em execução sem glipper - no entanto, com glipper em execução na máquina synergy client - e tudo parece funcionar bem re: copypasting!

Eu tentei obter alguns logs; isto é aproximadamente o que foi gerado como mensagens quando glipper estava trabalhando na máquina do servidor:

log do cliente da situação do problema (com glipper em execução no servidor):

$ synergyc -f --debug DEBUG 192.168.1.XX
INFO: Synergy 1.4.11 Client on Linux 2.6.38-16-generic #67-Ubuntu SMP Thu Sep 6 
....
INFO: leaving screen
INFO: entering screen
DEBUG: recv clipboard 0 size=21
DEBUG: open clipboard 0
DEBUG: empty clipboard 0
DEBUG: grabbed clipboard 0
DEBUG: add 9 bytes to clipboard 0 format: 0
DEBUG: close clipboard 0
DEBUG: recv clipboard 1 size=21
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: add 9 bytes to clipboard 1 format: 0
DEBUG: close clipboard 1

DEBUG: lost clipboard 1 ownership at time 758675
DEBUG: lost clipboard 1 ownership at 758675
DEBUG: recv grab clipboard 1
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
DEBUG: lost clipboard 1 ownership at time 761802
DEBUG: lost clipboard 1 ownership at 761802
DEBUG: recv grab clipboard 1
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
INFO: leaving screen
DEBUG: adopting new buffer
DEBUG: discarding 1 event(s)
DEBUG: closed display
NOTE: stopped client

log do servidor da situação do problema (com glipper em execução no servidor):

$ synergys -f --debug DEBUG -c ~/.quicksynergy/synergy.conf
INFO: Synergy 1.4.11 Server on Linux 2.6.32-44-generic #98-Ubuntu SMP Mon Sep 24 17:32:45 UTC 2012 i686
...
INFO: switch from "SynSERVER" to "SynCLIENT" at 1023,319
INFO: leaving screen
DEBUG: open clipboard 0
DEBUG: ICCCM fill clipboard 0
DEBUG:   available targets: TIMESTAMP (404), TARGETS (402), MULTIPLE (403), SAVE_TARGETS (441), UTF8_STRING (277), COMPOUND_TEXT (469), TEXT (502), STRING (31), text/plain;charset=utf-8 (503), text/plain (499)
DEBUG:   added format 0 for target UTF8_STRING (277) (9 bytes)
DEBUG: close clipboard 0
INFO: screen "SynSERVER" updated clipboard 0
DEBUG: open clipboard 1
DEBUG: ICCCM fill clipboard 1
DEBUG:   available targets: TIMESTAMP (404), TARGETS (402), MULTIPLE (403), UTF8_STRING (277), COMPOUND_TEXT (469), TEXT (502), STRING (31), text/plain;charset=utf-8 (503), text/plain (499)
DEBUG:   added format 0 for target UTF8_STRING (277) (9 bytes)
DEBUG: close clipboard 1
INFO: screen "SynSERVER" updated clipboard 1
DEBUG: send clipboard 0 to "SynCLIENT" size=21
DEBUG: send clipboard 1 to "SynCLIENT" size=21
DEBUG: received client "SynCLIENT" grabbed clipboard 1 seqnum=7
INFO: screen "SynCLIENT" grabbed clipboard 1 from "SynSERVER"
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
DEBUG: lost clipboard 1 ownership at time 809607
DEBUG: lost clipboard 1 ownership at 809607
INFO: screen "SynSERVER" grabbed clipboard 1 from "SynCLIENT"
DEBUG: send grab clipboard 1 to "SynCLIENT"
DEBUG: received client "SynCLIENT" grabbed clipboard 1 seqnum=7
INFO: screen "SynCLIENT" grabbed clipboard 1 from "SynSERVER"
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
DEBUG: lost clipboard 1 ownership at time 812691
DEBUG: lost clipboard 1 ownership at 812691
INFO: screen "SynSERVER" grabbed clipboard 1 from "SynCLIENT"
DEBUG: send grab clipboard 1 to "SynCLIENT"
NOTE: client "SynCLIENT" has disconnected
...

Uma vez que glipper é retirado na máquina do servidor (note que killall glipper não funciona no Lucid como acontece no Natty - assim no Lucid, eu tive que fazer ps axf | grep glipper , e então fazer kill 1234 no número do processo), então o copypasting funciona novamente - e aqui estão alguns logs nesse caso:

log do cliente (situação OK):

$ synergyc -f --debug DEBUG 192.168.1.XX
INFO: Synergy 1.4.11 Client on Linux 2.6.38-16-generic #67-Ubuntu SMP Thu Sep 6 
....
NOTE: started client
NOTE: connecting to '192.168.1.XX': 192.168.1.XX:24800
DEBUG: open clipboard 0
DEBUG: empty clipboard 0
DEBUG: grabbed clipboard 0
DEBUG: close clipboard 0
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
NOTE: connected to server
DEBUG: lost clipboard 1 ownership at time 997135
DEBUG: lost clipboard 1 ownership at 997135
DEBUG: open clipboard 1
DEBUG: ICCCM fill clipboard 1
DEBUG:   available targets: TIMESTAMP (373), TARGETS (371), MULTIPLE (372), text/html (581), text/_moz_htmlcontext (588), text/_moz_htmlinfo (589), UTF8_STRING (315), COMPOUND_TEXT (510), TEXT (529), STRING (31), text/x-moz-url-priv (590)
DEBUG:   added format 2 for target text/html (581) (966 bytes)
DEBUG:   added format 0 for target UTF8_STRING (315) (433 bytes)
DEBUG: close clipboard 1
DEBUG: lost clipboard 0 ownership at time 998704
DEBUG: lost clipboard 0 ownership at 998704
DEBUG: open clipboard 0
DEBUG: ICCCM fill clipboard 0
DEBUG:   available targets: TIMESTAMP (373), TARGETS (371), MULTIPLE (372), SAVE_TARGETS (499), text/html (581), text/_moz_htmlcontext (588), text/_moz_htmlinfo (589), UTF8_STRING (315), COMPOUND_TEXT (510), TEXT (529), STRING (31), text/x-moz-url-priv (590)
DEBUG:   added format 2 for target text/html (581) (966 bytes)
DEBUG:   added format 0 for target UTF8_STRING (315) (433 bytes)
DEBUG: close clipboard 0
^CDEBUG: adopting new buffer
DEBUG: discarding 1 event(s)
DEBUG: closed display
NOTE: stopped client

log do servidor (situação OK):

$ synergys -f --debug DEBUG -c /home/USERNAME/.quicksynergy/synergy.conf
INFO: Synergy 1.4.11 Server on Linux 2.6.32-44-generic #98-Ubuntu SMP Mon Sep 24
...
NOTE: accepted client connection
DEBUG: received client "SynCLIENT" info shape=0,0 1024x600 at 642,225
NOTE: client "SynCLIENT" has connected
DEBUG: received client "SynCLIENT" grabbed clipboard 1 seqnum=0
INFO: screen "SynCLIENT" grabbed clipboard 1 from "SynSERVER"
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: close clipboard 1
DEBUG: received client "SynCLIENT" clipboard 1 seqnum=0, size=935
INFO: screen "SynCLIENT" updated clipboard 1
DEBUG: open clipboard 1
DEBUG: empty clipboard 1
DEBUG: grabbed clipboard 1
DEBUG: add 433 bytes to clipboard 1 format: 0
DEBUG: add 482 bytes to clipboard 1 format: 2
DEBUG: close clipboard 1
DEBUG: received client "SynCLIENT" grabbed clipboard 0 seqnum=0
INFO: screen "SynCLIENT" grabbed clipboard 0 from "SynSERVER"
DEBUG: open clipboard 0
DEBUG: empty clipboard 0
DEBUG: grabbed clipboard 0
DEBUG: close clipboard 0
DEBUG: received client "SynCLIENT" clipboard 0 seqnum=0, size=935
INFO: screen "SynCLIENT" updated clipboard 0
DEBUG: open clipboard 0
DEBUG: empty clipboard 0
DEBUG: grabbed clipboard 0
DEBUG: add 433 bytes to clipboard 0 format: 0
DEBUG: add 482 bytes to clipboard 0 format: 2
DEBUG: close clipboard 0
NOTE: client "SynCLIENT" has disconnected

Observe que o cliente relata " perda da propriedade da área de transferência 1 " quando copiar / colar funciona e quando não; a diferença que posso ver entre o caso de trabalho e o de não trabalho é que, no caso de trabalho, o cliente mostra mensagens como " ICCCM preencher área de transferência 1 " e " destinos disponíveis: TIMESTAMP (373 ), ... ".

Bem, além disso, não posso realmente dizer que entendi muito bem esses registros - mas espero que eles possam ajudar alguém :) ,
Felicidades!

    
por sdaau 29.10.2012 / 10:27