1 votes

xdg-open utilise un mauvais encodage de caractères sur LTSP

J'essaie d'ouvrir des fichiers dans une application locale sur un système LTSP. Mais si le nom du chemin d'accès contient des caractères accentués, comme é il ne peut pas être ouvert car l'URI semble être mal codé.

Le problème semble se situer dans la façon dont gvfs-open envoie l'URI du fichier :

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

L'ouverture du même fichier depuis l'application elle-même (en utilisant Fichier > Ouvrir ) ne pose aucun problème.

Les espaces et les virgules semblent être codés différemment, avec %20, et ne posent aucun problème.

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

Une idée de la façon dont cela peut être corrigé ?

0voto

Tom B. Points 111

J'ai trouvé la solution et déposé un bug à ce sujet : https://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/1451915

Ce problème est dû à la façon dont LTSP ouvre les applications locales : LTSP définit une propriété X contenant la commande et les arguments, qui est lue sur le client et ensuite exécutée.

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

est remplacé sur les clients par

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

Mais cela utilise un encodage de 8 bits. Si vous remplacez "8s" par "8u", vous utiliserez une chaîne unicode UTF-8, ce qui semble résoudre le problème.

Le fichier qui doit être modifié est le suivant :

/opt/ltsp/i386/usr/bin/ltsp-genmenu

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X