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

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

Les problèmes semblent être situés dans la manière dont gvfs-open envoie le file URI:

 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 file à partir de l'application elle-même (en utilisant Fichier> Ouvrir …) ne pose aucun problème.

Les espaces et les virgules semblent être encodés différemment, avec% 20, et ne donnent 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é?

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

Cela a été causé par la façon dont LTSP ouvre des applications locales: LTSP définit une propriété X contenant la command et les arguments, qui est lu sur le client puis exécuté.

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

est remplacé par les clients par

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

Mais cela utilise un enencoding de 8 bits. Si vous changez le "8s" à "8u", il utilisera une string Unicode UTF-8, ce qui semble résoudre le problème.

Le file qui doit être modifié est:

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