Veja o conteúdo do arquivo xdg-open , e você notará que é um script de shell simples. Sua principal tarefa é identificar o ambiente de desktop em uso, que será usado para delegar a tarefa a uma ferramenta específica:
-
KDE delega para
kde-openoukfmclient -
Gnome delega para
gvfs-openougnome-open -
Parceiro delega para
gvfs-openoumate-open -
XFCE delega para
exo-open -
LXDE delega para
pcmanfm, com fallback para "genérico" para a maioria dos URLs -
Enlightenment delega para
enlightenment_open - Todo o resto é denominado " genérico " e o script tenta a sua própria sorte
Portanto, a mensagem principal é a seguinte: na maioria das situações, um desses representantes fará o trabalho real, portanto, você deve verificar como eles estão configurados.
Por exemplo, estou executando o XFCE, portanto xdg-open chama exo-open , que usa as configurações do XFCE disponíveis por meio da interface com o usuário de configurações do XFCE e armazenadas em ~/.local/share/applications/mimeapps.list .
Para detalhes sobre os arquivos de configuração em uso, strace -e file pode ser útil. E se você estiver na situação "genérica" e quiser ver o que o xdg-open em si, você pode tentar sh -x 'which xdg-open' file.name .