xdg-open usa codificação incorreta de caracteres no LTSP

1

Estou tentando abrir arquivos em um aplicativo local em um sistema LTSP. Mas se o nome do caminho contiver caracteres acentuados, como é , ele não poderá ser aberto porque o URI parece estar codificado incorretamente.

Os problemas parecem estar localizados na forma como o gvfs-open envia o arquivo URI:

gvfs-open /home/user/testé/test.mov
VLC is unable to open the MRL 'file:///home/user/test303251/test.mov'.

Abrir o mesmo arquivo do aplicativo em si (usando Arquivo > Abrir ..) não causa problemas.

Os espaços e as vírgulas parecem estar codificados de forma diferente, com% 20, e não causam problemas.

gvfs-open /home/user/this is testé/test.mov
VLC is unable to open the MRL 'file:///home/user/this%20is%20test303251/test.mov'.

Alguma ideia de como isso pode ser corrigido?

    
por Tom B. 20.04.2015 / 15:38

1 resposta

0

Eu encontrei a solução e enviei um erro para isso: link

Foi causado pela maneira como o LTSP abre aplicativos locais: o LTSP define uma propriedade X contendo o comando e os argumentos, que são lidos no cliente e depois executados.

/usr/bin/vlc --started-from-file %U

é substituído nos clientes por

xprop -root -f LTSP_COMMAND 8s -set LTSP_COMMAND "/usr/bin/vlc --started-from-file %U"

Mas isso usa uma codificação de 8 bits. Se você alterar "8s" para "8u", ele usará uma string unicode UTF-8, que parece resolver o problema.

O arquivo que precisa ser alterado é:

/opt/ltsp/i386/usr/bin/ltsp-genmenu
    
por 05.05.2015 / 22:25

Tags