I'm trying to open files in a local application on an LTSP system. But if the path name contains accented characters, like é, it can not be opened because the URI seems to be encoded wrong.

The problems seems to be located in the way gvfs-open sends the file URI:

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

Opening the same file from the application itself (using File > Open..) does not give any problems.

Spaces and comma's seem to be encoded differently, with %20, and do not give any problems.

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

Any idea how this can be fixed?


I found the solution and filed a bug for this: https://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/1451915

It was caused by the way LTSP opens local applications: LTSP sets an X property containing the command and arguments, which is read on the client and then executed.

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

gets replaced on the clients by

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

But this uses an 8 bit encoding. If you change the "8s" to "8u" it will use an UTF-8 unicode string, which seems to fix the problem.

The file that needs to be changed is:


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.