Soa como um bug nesse programa. Você provavelmente não pode consertá-lo sem modificar o código-fonte, mas pode contorná-lo facilmente, por exemplo, com um script de shell:
#!/bin/sh
cd /path/to/program
exec ./program "$@"
Guarde isto em /usr/local/bin
, defina as permissões corretas:
chmod 755 /usr/local/bin/myscript
chown root:root /usr/local/bin/myscript
e, em seguida, inicie este script em vez do executável do programa.
Uma limitação dessa abordagem é que você não pode mais reproduzir arquivos no diretório atual simplesmente digitando o nome deles. Em vez de deadbeef myfile.mp3
, você pode usar deadbeef $PWD/myfile.mp3
(que deadbeef "$PWD/myfile.mp3"
se o nome do diretório atual contiver \[?*
ou espaço em branco).